MySQL 清空慢查詢檔案

pursuer.chen發表於2015-12-03

標籤:配置慢查詢

概述  

本章主要寫當慢查詢檔案很大的時候怎樣線上生成一個新的慢查詢檔案。

測試環境:mysql 5.6.21

 

步驟

配置慢查詢

預設的my.cnf檔案在/etc/目錄下

vim /etc/my.cnf

#slow_query
slow_query_log=1#開啟慢查詢
slow_query_log_file=/var/lib/mysql/mysql-slow.log #設定慢查詢路徑
long_query_time=0.01#設定慢查詢時間

配置完要重啟mysql服務才生效

查詢慢查詢配置是否成功

測試慢查詢

use information_schema;
select * from tables;

語句執行時間花了:1.1秒,返回了314行記錄;

檢視慢查詢檔案:cat mysql-slow.log

慢查詢日誌檔案中記錄了每一天慢查詢記錄,每一條記錄都是以Time:開頭;記錄了包含登入資訊,查詢所花的時間,鎖花的時間,返回的行數,掃描的記錄數,執行的語句。

 線上生成慢查詢日誌檔案

1.關閉全域性慢查詢

SET global slow_query_log=0

查詢是否關閉全域性慢查詢

SHOW VARIABLES LIKE '%query_log%';

設定一個新的慢查詢檔案

SET global slow_query_log_file='/var/lib/mysql/mysql-slow_new.log'

開啟慢查詢

SET global slow_query_log=1;
SHOW VARIABLES LIKE '%query_log%';

 

 

在慢查詢路徑中可以看到生成了一個新的慢查詢檔案。

後面的慢查詢資訊會記錄到新的日誌檔案當中,

這時我們可以mv以前的慢查詢檔案進行歸檔了。

重啟mysql服務

service mysql restart

SHOW VARIABLES LIKE '%query_log%';

當重啟mysql服務之後,慢日誌檔案會重新變成之前的在my.cnf裡面設定的檔案,所以如果你想要重啟服務之後慢日誌檔案還是剛才設定的mysql-slow_new.log的話你就需要在修改全域性設定的同時再修改my.cnf檔案,這樣就能保證重啟之後檔案還是之前修改的檔案。

 

總結

 配置慢查詢對平時收集效能差的語句很有幫助,也有很多工具專門來分析慢查詢日誌的,其中percona-toolkit就是一個很不錯的分析慢查詢的工具,如果沒有使用可以去了解一下。

 

 文章如果對大家有幫助,請幫忙推薦,謝謝!!!

 

備註:

    作者:pursuer.chen

    部落格:http://www.cnblogs.com/chenmh

本站點所有隨筆都是原創,歡迎大家轉載;但轉載時必須註明文章來源,且在文章開頭明顯處給明連結,否則保留追究責任的權利。

《歡迎交流討論》

 

---恢復內容結束---

相關文章