一、背景
MySQL的慢查询日志是MySQL提供的一种日志记录,他用来记录在MySQL中响应的时间超过阈值的语句,具体指运行时间超过long_query_time(默认是10秒)值的SQL,会被记录到慢查询日志中。
慢查询日志一般用于性能分析时开启,收集慢SQL然后通过explain进行全面分析,一般来说,生产是不会开启的,收集慢查询语句是十分耗性能的,但是我们在测试环境是可以模拟分析的,优化SQL语句,接下来就通过实战,讲解如何开启慢日志查询以及如何分析。
二、慢查询日志开启
1)查看是否开启,默认是关闭的
show VARIABLES like '%slow_query_log%'
可以看到默认慢日志的保存文件以及状态
2)开启:
#只会开启当前MySQL的慢日志查询,如果需要永久的话需要修改my.cnf/my.ini文件
set GLOBAL slow_query_log=1
3)查看默认慢查询sql默认时间,大于10秒,没有等于
show VARIABLES like 'long_query_time%