一、簡介
開啟慢查詢日誌,可以讓mysql記錄下查詢超過指定時間的語句,通過定位分析效能的瓶頸,才能更好的優化資料庫系統的效能。
二、引數說明
slow_query_log 慢查詢開啟狀態
slow_query_log_file 慢查詢日誌存放的位置(這個目錄需要mysql的執行帳號的可寫許可權,一般設定為mysql的資料存放目錄)
long_query_time 查詢超過多少秒才記錄
三、設定步驟
1.檢視慢查詢相關引數
mysql> show variables like 'slow_query%';
| variable_name | value |
| slow_query_log | off |
| slow_query_log_file | /mysql/data/localhost-slow.log |
mysql> show variables like 'long_query_time';
| variable_name | value |
| long_query_time | 10.000000 |
2.設定方法
方法一:全域性變數設定
將 slow_query_log 全域性變數設定為「on」狀態
mysql> set global slow_query_log='on';
設定慢查詢日誌存放的位置
mysql> set global slow_query_log_file='/usr/local/mysql/data/slow_query.log';
查詢超過1秒就記錄
mysql> set global long_query_time=1;
方法二:配置檔案設定
修改配置檔案my.cnf,在[mysqld]下的下方加入
[mysqld]
slow_query_log = on
slow_query_log_file = /usr/local/mysql/data/slow_query.log
long_query_time = 1
3.重啟mysql服務
service mysqld restart
4.檢視設定後的引數
mysql> show variables like 'slow_query%';
| variable_name | value |
| slow_query_log | on |
| slow_query_log_file | /usr/local/mysql/data/slow_query.log |
mysql> show variables like 'long_query_time';
| variable_name | value |
| long_query_time | 1.000000 |
四、測試
1.執行一條慢查詢sql語句
mysql> select sleep(2);
2.檢視是否生成慢查詢日誌
ls /usr/local/mysql/data/slow_query.log
如果日誌存在,mysql開啟慢查詢設定成功!
mysql的慢查詢日誌功能 MySQL 慢查詢日誌
簡介 mysql 慢查詢日誌是排查問題 sql 語句,以及檢查當前 mysql 效能的乙個重要功能。檢視是否開啟慢查詢功能 mysql mysql show variables like slow query variable name value slow query log off slow q...
mysql的慢查詢日誌功能 MySQL 慢查詢日誌
mysql 慢查詢日誌 簡介mysql 慢查詢日誌是排查問題 sql 語句,以及檢查當前 mysql 效能的乙個重要功能。檢視是否開啟慢查詢功能 mysql show variables like slow query variable name value slow query log off s...
mysql的慢查詢日誌功能 Mysql慢查詢日誌
mysql慢查詢日誌 資料庫的慢查詢是影響專案效能的一大因素,對於資料庫我們要優化sql,首先要找到需要優化的sql,這就需要我們知道sql執行時間等資訊,除了使用show profiles 外,mysql也提供了 慢查詢日誌 功能,用來記錄查詢時間超過某個設定值的sql,這將極大程度幫助我們快速定...