slow_query_log_file日誌變得很大,對它進項分析變得很不方便,我們就想按天每天產生一個slow_query_log_file檔案,每天分析這個記錄檔。如何按天切割呢?我們想到了這麼一個辦法,把日誌格式切換成這種形式的hostname-slow_日期.log 這種形式,預設格式為hostname-slow.log。那麼如何?呢?其實很簡單。利用mysql預設命令就可以了
mysql> show variables like '%query%log%';
+---------------------+----------------------------------------+
| Variable_name | Value |
+---------------------+----------------------------------------+
| slow_query_log | OFF |
| slow_query_log_file | /usr/local/mysql/data/aeolus1-slow.log |
+---------------------+----------------------------------------+
mysql> set global slow_query_log_file='/usr/local/mysql/data/aeolus1-slow_2013-07-19.log' ;
Query OK, 0 rows affected (0.03 sec)
mysql> show variables like '%query%log%';
+---------------------+---------------------------------------------------+
| Variable_name | Value |
+---------------------+---------------------------------------------------+
| slow_query_log | ON |
| slow_query_log_file | /usr/local/mysql/data/aeolus1-slow_2013-07-19.log |
+---------------------+---------------------------------------------------+
2 rows in set (0.01 sec)
ok,設定成功。思路就是這樣的
寫個shell小指令碼,定義好時間,這樣就可以按天組建記錄檔了。
MySQL慢查詢開啟及分析方法
分析MySQL慢查詢日誌的好工具--mysqlsla
MySQL首碼索引導致的慢查詢
【體繫結構】MySQL 記錄檔--慢查詢日誌
MySQL調優三步曲(慢查詢、explain profile)