mysqlsla快速入門

testingbang發表於2019-07-30

1、什麼是mysqlsla?

簡單的說就是分析mysql log的工具,我主要是用他來分析下mysql slow log。

2、下載

3、安裝

tar

cd

perl Makefile.PL

make && make install

4、執行

mysqlsla -lt slow /tmp/slow.log

透過這個引數來制定log的型別,主要有slow, general, binary, msl, udl,分析slow log時透過制定為slow.

到這一步也許會出現如下的錯誤提示:

解決方式如下:

yum install perl-Time-HiRes

還有可能出現如下的錯誤,方法也在圖中的紅框處

另一種出錯的可能,如下,方法也在圖中

 

這樣就ok了!因為我這沒有資料,所以給大家看下空的時候的表現

5、命令引數說明

1) -log-type (-lt) type logs:
透過這個引數來制定log的型別,主要有slow, general, binary, msl, udl,分析slow log時透過制定為slow.

2) -sort:
制定使用什麼引數來對分析結果進行排序,預設是按照t_sum來進行排序。
t_sum:按總時間排序
c_sum:按總次數排序
c_sum_p: sql語句執行次數佔總執行次數的百分比。

3) -top:
顯示sql的數量,預設是10,表示按規則取排序的前多少條

4) –statement-filter (-sf) [+-][TYPE]:
過濾sql語句的型別,比如select、update、drop.
[TYPE]有SELECT, CREATE, DROP, UPDATE, INSERT,例如"+SELECT,INSERT",不出現的預設是-,即不包括。

5) db:要處理哪個庫的日誌:

例如,只取backup庫的select語句、按c_sum_p排序的前2條記錄
mysqlsla -lt slow -sort c_sum_p  -sf  "+select" -db backup -top 2  /tmp/127_slow.log

6、統計引數說明(

1)queries total: 總查詢次數  
2)unique:去重後的sql數量  
3)sorted by : 輸出報表的內容排序 最重大的慢sql統計資訊, 包括 平均執行時間, 等待鎖時間, 結果行的總數, 掃描的行總數.  
(t_sum:按總時間排序;c_sum:按總次數排序;c_sum_p: sql語句執行次數佔總執行次數的百分比)
4)Count: sql的執行次數及佔總的slow log數量的百分比.  
5)Time: 執行時間, 包括總時間, 平均時間, 最小, 最大時間, 時間佔到總慢sql時間的百分比.  
6)95% of Time: 去除最快和最慢的sql, 覆蓋率佔95%的sql的執行時間.  
7)Lock Time: 等待鎖的時間.  
8)95% of Lock: 95%的慢sql等待鎖時間.  
9)Rows sent: 結果行統計數量, 包括平均, 最小, 最大數量.  
10)Rows examined: 掃描的行數量.  
11)Database: 屬於哪個資料庫. 
12)Users: 哪個使用者,IP, 佔到所有使用者執行的sql百分比. 
13)Query abstract: 抽象後的sql語句. 

14)Query sample: sql語句.


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69942496/viewspace-2652284/,如需轉載,請註明出處,否則將追究法律責任。