一、简介
开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能。
二、查看慢查询是否开启
# 查看慢查询是否开启
mysql>show VARIABLES like 'slow_query%';
# 查看慢查询超过多少秒才记录
mysql>show VARIABLES like 'long_query%';
# 慢查询日志存放的位置
mysql>show VARIABLES like 'slow_query_log_file%';
三、开启慢查询
1、命令行
set global slow_query_log='ON';
set global slow_query_log_file='/usr/local/mysql/data/slow.log';
# 注意:对应目录要拥有写的权限
set global long_query_time=1;
#设置不生效?重新打开一个窗口试试,global可能对已经打开的会话不起作用。
2、 修改配置文件 /etc/my.cnf or my.ini
slow_query_log = ON
slow_query_log_file = /usr/local/mysql/data/slow.log
long_query_time = 1
重启mysql服务,测试慢查询是否成功开启,eg:
SELECT e.emp_no, first_name, last_name, sum(salary) from employees e, salaries s where e.emp_no = s.emp_no GROUP BY e.emp_no;