1. 程式人生 > >開啟mysql慢查詢日誌並使用mysqldumpslow命令查看

開啟mysql慢查詢日誌並使用mysqldumpslow命令查看

開啟 mysqld dumps not style 現在 left join 介紹 time

Mysql服務器有一項功能,可以檢測到哪條sql語句查詢得比較慢,就是慢查詢slowlog,現在介紹如何開啟。

在[mysqld]下面增加如下代碼:

long_query_time = 1                         #定義超過1秒的查詢計數到變量Slow_queries
log-slow-queries = /var/log/slow.sql        #定義慢查詢日誌路徑。
log-queries-not-using-indexes               #未使用索引的查詢也被記錄到慢查詢日誌中(可選)

執行mysqldumpslow –h可以查看幫助信息。

常用參數

-s 這個是排序參數,可選的有:

al: 平均鎖定時間
ar: 平均返回記錄數
at: 平均查詢時間
c: 計數
l: 鎖定時間
r: 返回記錄
t: 查詢時間

-t n 顯示頭n條記錄。

實例

mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log

上述命令可以看出訪問次數最多的20個sql語句和返回記錄集最多的20個sql。

mysqldumpslow -t 10 -s t -g "left join" host-slow.log

這個是按照時間返回前10條裏面含有左連接的sql語句。
用了這個工具就可以查詢出來那些sql語句是性能的瓶頸,進行優化,比如加索引,該應用的實現方式等。

開啟mysql慢查詢日誌並使用mysqldumpslow命令查看