您的位置:首页 > 数据库 > MySQL

【MySQL】慢查询日志

2017-08-27 23:41 197 查看


            MySQL提供的一种日志记录,用来记录mysql中相应时间超过阀值的语句,具体指运行时间超过

long_query_time值的sql,则会被记录到慢日志中。long_query_time默认为10s。默认mysql没有开启慢查询,需要手

动来设置开启,如果不是调优需要,不建议开启。

一、查看状态

mysql> show variables like'%slow_query_log%';



开启:mysql> set global slow_query_log=1;



如果要永久生效,需要修改my.cnf,

[mysqld]

#添加一下参数

slow_query_log=1

slow_query_log_file=/var/lib/mysql/localhost-slow.log



二、查看阈值

满足什么条件的sql才能收集到日志中呢?

mysql> show variables like'long_query_time%';



参数设置可以在my.cnf中修改

注意:在mysql源码中,判断条件是long_query_time>10

超过10秒的才被记录

使用命令设置:

mysql> set global long_query_time=3;



为什么看不到修改的值呢?

1-需要重新连接,才行

2-使用show globalvariables like 'long_query_time';



现在执行一条sql





三、查看记录数

查询慢日志中收集的sql记录条数,也可以以此来衡量系统性能

mysql> show global status like'%Slow_queries%';

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mysql