Mysql問題分析工具

2021-07-11 22:12:21 字數 975 閱讀 8305

top、iostat檢視cpu/io情況

慢查詢日誌+explain

獲取資料庫的各種執行狀態,如」show engine innodb status」, 查詢information_schema庫里的innodb_trx、processlist等狀態表

tcpdump

strace

# top -d0.5 -c
以0.5秒頻率重新整理,檢視mysql的cpu使用情況,主要是看下cpu佔用率。

# iostat -txm 1
觀察磁碟使用情況,util使用率越高,表示磁碟越繁忙

慢查詢日誌slowlog,使用mysqldumpslow可以統計分析出最消耗時間的topn。

得到具體語句後,使用explain進行分析,進而得到優化方法。

檢視所有連線的運**況

mysql> show full processlist;
或者

mysql> select * from information_schema.processlist;
檢視innodb的實時狀態,關注cache命中率、讀寫次數、有無死鎖等

mysql> show  engine innodb status \g
檢視事務運**況

mysql> select * from information_schema.innodb_trx;
# tcpdump host 10.4.12.8 and port 3306 -i eth0 -w 10.4.12.8.pcap
strace —— 檢視程序的系統呼叫

例如:

# strace -p 12345

# 12345為目標程序pid

mysql 效能分析 mysql效能分析工具

一 expalin 在sql語句之前加上explain關鍵字就可以獲取這條sql語句執行的計畫 那麼返回的這些欄位是什麼呢?我們先關心一下比較重要的幾個字段 1.select type 查詢型別 1 簡單查詢,沒有union和子查詢 2 priamry 主查詢,有union或子查詢的最外層查詢 3 ...

mysql效能log分析工具

啟用slow log 有兩種啟用方式 1,在my.cnf 裡通過 log slow queries file name 2,在 mysqld 程序啟動時,指定 log slow queries file name 選項 比較的五款常用工具 mysqldumpslow,mysqlsla,myprofi...

mysql慢查詢分析工具

pt query digest 慢查詢檢視工具 set profiling 1 開啟後會將每一條sql語句的執行時間記錄到一張臨時表。show profiles 檢視的所有查詢記錄 show profile for query 臨時表query id 檢視具體某條語句的執行時間 show statu...