MySQL已启用了slow query log且long_query_time=0.01,为什么有些慢SQL还是没被记录呢?

Posted 周万春

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL已启用了slow query log且long_query_time=0.01,为什么有些慢SQL还是没被记录呢?相关的知识,希望对你有一定的参考价值。

mysql已启用了slow query log且long_query_time=0.01,为什么有些慢SQL还是没被记录呢?


    1、在线动态设置long_query_time=0.01,但该设置对当前已建立的连接不会生效。
    2、log_slow_admin_statements=0,因此ALTER、CREATE INDEX、ANALYZE TABLE等操作即使超过long_query_time不会记录。
    3、min_examined_row_limit设置非0值,SQL检查行数未超过该值不会记录。
    4、slow log文件句柄发生了变化,如运行期间用vim打开log,最后又保存退出,此时文件句柄发生变化,需要执行flush slow logs;
    5、误将slow_query_log_file当做slow log的开关,设置为1(此时slow log文件名为1)。

 

以上是关于MySQL已启用了slow query log且long_query_time=0.01,为什么有些慢SQL还是没被记录呢?的主要内容,如果未能解决你的问题,请参考以下文章

mysql开启慢查询怎么把每天日志文件分开

MySQL源码解析: slow log

MySQL慢日志

mysql启用慢日志查询

mysql开启慢日志

设置启用mysql慢查询日志