mysql開啟慢查詢日志教程
mysql> show variables like 'slow_query%'; mysql> show variables like 'long_query_time';
slow_query_log 慢查詢開啟狀態
slow_query_log_file 慢查詢日志存放的位置(默認為MySQL的數據存放目錄)
long_query_time 查詢超過多少秒才記錄
設置方法1:全局配置
mysql> set global slow_query_log='ON'; mysql> set global slow_query_log_file = '/home/mysql/sql_log/mysql-slow.log'; #超過1秒就記錄 mysql> set global long_query_time=1;
設置方法2:修改my.cnf配置文件
vi /etc/my.cnf
[mysqld] slow_query_log = ON slow_query_log_file = /home/mysql/sql_log/mysql-slow.log long_query_time = 1
slow_query_log_file所在的目錄需要MySQL的運行帳號的可寫權限,如需變更日志文件目錄記得給新目錄授予777權限,否則slow_query_log一直為OFF
touch /home/mysql/sql_log/mysql-slow.log chmod 777 -R /home/mysql/sql_log
測試
mysql> select sleep(2);
查看
cat /home/mysql/sql_log/mysql-slow.log
慢查詢分析工具
Mysqldumpslow:mysql自帶
pt-query-digest:功能更多更強大