【MySQL】慢查询日志

来源:互联网 发布:pythonxy linux 编辑:程序博客网 时间:2024/06/01 23:11

            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%';


原创粉丝点击