mysql中slow query log慢日誌查詢分析

來源:互聯網
上載者:User

標籤:

在mysql中slow query log是一個非常重要的功能,我們可以開啟mysql的slow query log功能,這樣就可以分析每條sql執行的狀態與效能從而進行最佳化了。

 

一、慢查詢日誌 配置

開啟慢查詢日誌 , 配置範例:

/etc/mysql/my.cnf
[mysqld]
log-slow-queries

在 my.cnf 設定檔中增加上述配置項並重啟 mysql 服務,這時 mysql 慢查詢功能生效。慢查詢 日誌將寫入參數 DATADIR (資料目錄:/var/lib/mysql)
指定的路徑下,預設檔案名稱是 host_name-slow.log 。
和錯誤記錄檔、查詢日誌一樣,慢查詢日誌記錄的格式也是純文字,可以被直接讀取。下例中示範了慢查詢日誌的設定和讀取過程。

1 )首先查詢一下 long_query_time 的值 。

mysql> show variables like ‘long%‘;
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| long_query_time | 10 |
+-----------------+-------+
1 row in set (0.00 sec)

( 2 )為了方便測試,將修改慢查詢時間為 5 秒。

mysql> set long_query_time=1;
Query OK, 0 rows affected (0.02 sec)

以上操作只限於當前有效,關閉伺服器得重新設定。下面的方法可直接寫入my.cnf

log-slow-queries=/var/lib/mysql/slowquery.log

long_query_time=1

二、mysqldumpslow 的常用參數如下:

-s 後面接下面的參數表示 mysqldumpslow 結果顯示的順序!
c query執行的次數
t sql執行的時間
l lock鎖表的時間
r sql返回的行數
ac,at,al,ar,表示倒序排列
-t,是top n,即為返回前面n條資料。
-g,後邊可以寫一個正則匹配模式,大小寫不敏感
顯示執行時間最長的前兩個
[[email protected] python]# mysqldumpslow -s t -t 2 /opt/mysql/data/slowquery.log
Reading mysql slow query log from /opt/mysql/data/slowquery.log
Count: 2 Time=412.54s (825s) Lock=0.00s (0s) Rows=1.0 (2), root[root]@localhost
select count(N) from sbtest ,t1 where t1.c=sbtest.c
Count: 1 Time=778.20s (778s) Lock=0.00s (0s) Rows=1.0 (1), root[root]@localhost
select count(N) from sbtest where sbtest.id not in ( select id from t1 )
#顯示次數最多的前兩個
[[email protected] python]# mysqldumpslow -s c -t 2 /opt/mysql/data/slowquery.log
Reading mysql slow query log from /opt/mysql/data/slowquery.log
Count: 12 Time=0.00s (0s) Lock=0.00s (0s) Rows=1.0 (12), root[root]@localhost
select count(N) from tab_1
Count: 2 Time=412.54s (825s) Lock=0.00s (0s) Rows=1.0 (2), root[root]@localhost
select count(N) from sbtest ,t1 where t1.c=sbtest.c

 

mysql中slow query log慢日誌查詢分析

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.