mysql优化-慢查询日志

分类: MySQL

是什么?

mysql提供的一种日志查询,用来记录在mysql中响应时间超过阈值的语句,具体指裕兴时间超过long_query_time的sql,则会被记录到慢查询日志中(如果时间正好相等,不会记录)。long_query_timne的默认值为10,即运行10秒以上的语句。

如何开启?

默认情况下,mysql数据库没有开启慢查询日志,需要我们手动设置这个参数。如果不是调优需要的话,一般不建议启动该参数,因为会带来一定的性能影响。慢查询日志支持将日志写入文件。

show VARIABLES like '%slow_query_log%';

显示出状态以及存储路径

开启

set global slow_query_log=on;

查看时间

show VARIABLES like '%long_query_time%';

设置后如果看不出变化,需要重新连接或新开一个会话才能看到修改值;只对当前数据库生效,如果重启后则会失效,如果要永久生效,必须修改配置文件my.cnf(其他系统变量也是如此),修改mysql.cnf文件,[mysqld]下增加或修改参数show_query_log和slow_query_log_file后,然后重启mysql服务器。例如:

slow_query_log=1;
slow_query_log_file=/wp-content/local/mysql/var/VM_0_13_centos-slow.log
long_query_time=3;
log_output=file

日志分析工具mysqldumpslow

看图

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注


Warning: error_log(/www/wwwroot/codegulu.cn/wp-content/plugins/spider-analyser/#log/log-1006.txt): Failed to open stream: Permission denied in /www/wwwroot/codegulu.cn/wp-content/plugins/spider-analyser/spider.class.php on line 2969