mysql开启慢查询日志

mysql开启慢查询日志

   小白     2020年10月22日 00:50     73

1、为什么需要慢查询?

可以让mysql记录下查询超过指定时间的语句。

通过这个方法,就可以查出制约性能的瓶颈,优化性能。

但是慢日志尽量只用在测试环境或者临时调试使用,在生产环境中最好将其关闭。

 

2、查看是否开启慢查询和超时时间

是否开启慢查询:show variables like 'slow_query%';

可以看到慢查询是关闭的。

1.png

查看超时时间:show variables like 'long_query_time';
默认的时间是10s。

2.png


3、开启慢查询和设置超时时间

(1)通过变量设置

#开启慢查询

set global slow_query_log='ON';

#指定日志位置

set global slow_query_log_file='/usr/local/YWGH/mysql/logs/YWGH-web-slow.log';

#设置超时时间

set global long_query_time=1;

3.png

(2)通过配置文件设置

[mysqld]
slow_query_log = ON
slow_query_log_file = /usr/local/YWGH/mysql/logs/YWGH-web-slow.log
long_query_time = 1

修改配置文件的话,还需要重启mysql,是比较麻烦的事情。

service mysql restart


4、测试

登录数据库后,执行下边的语句。

select sleep(2);

查看日志

可以看到哪条语句是比较慢的。

4.png

 

5、mysqldumpslow

这个命令可以用来查看慢查询日志

mysqldumpslow /usr/local/YWGH/mysql/logs/YWGH-web-slow.log

5.png


其他文章