mysql慢查询日志简单配置方法

发布时间:2020-10-14编辑:脚本学堂
有关mysql慢查询定义,mysql慢查询日志的开启方法,在my.cnf中配置了慢查询日志的路径,需要的朋友参考下。

mysql慢查询日志配置方法

1、mysql慢查询定义
指mysql记录所有执行超过long_query_time参数设定的时间阈值的sql语句
慢查询日志就是记录这些sql的日志。

2、如何开启mysql慢查询日志

找到mysql配置文件my.cnf.在mysqld的下面添加
 

log-slow-queries = D:/MySQL/log/mysqld-slow-query.log  #日志存在的位置。(注意权限的问题,可以不用设置,系统会给一个缺省的文件host_name-slow.log)
long-query-time = 5   #SQL执行时间阈值,默认为10秒。
#log-long-format   #说log-long-format选项是用来设置日志的格式,它是以扩展方式记录有关事件。扩展方式可记录谁发出查询和什么时候发出查询的信息。可使我们更好地掌握客户端的操作情况。
#log-slow-admin-statements  #将慢管理语句例如OPTIMIZE TABLE、ANALYZE TABLE和ALTER TABLE记入慢查询日志。
log-queries-not-using-indexes #如果运行的SQL语句没有使用索引,则mysql数据库同样会将这条SQL语句记录到慢查询日志文件中。
 

配置完毕后重启mysql服务。》mysql如何重启?mysql重启命令与方法

3、测试
为了方便只在my.cnf中配置了慢查询日志的路径.

mysql 版本为 5.1.73

关于 long_query_time :从mysql 5.1开始,long_query_time开始以微秒记录SQL语句运行时间,之前仅用秒为单位记录。
这样可以更精确地记录SQL的运行时间,供DBA分析。

进入mysql.
 

复制代码 代码示例:

mysql> show VARIABLES like "%slow%"; #查看慢查询日志相关的信息
 
mysql> set global long_query_time=0.01;  #将mysql位置的值改为 0.01

mysql> show variables like "long_query_time"; #查看是否生效

mysql> select sleep(2); #延迟2秒执行 注:这条sql执行完毕以后应该已经在慢查询的日志文件中产生相关的信息记录

mysql> show global status like '%slow%'; #查看慢查询语句的次数

在日志文件中可以看到已记录了sql语句,即mysql慢查询日志了。

如下图:
mysql慢查询日志配置方法