我使用mysql : 5.5.31-0ubuntu0.12.04.1-log (Ubuntu),我启用了慢日志查询,慢速日志查询时间设置为2秒,详细信息如下:
show variables like 'slow_launch_time';
+------------------+-------+
| Variable_name | Value |
+------------------+-------+
| slow_launch_time | 2 |
+------------------+-------+
1 row in set (0.00 sec)在my.cnf中:
long_query_time = 2这意味着任何查询都需要超过2秒,它将存储在mysql慢日志查询中。
当我尝试使用选择睡眠(1);选择睡眠(2);选择睡眠(3);并查看慢速日志查询时,分别使用Query_time:# Query_time: 2.000263和# Query_time: 3.000278保存在慢速日志查询中的睡眠(2)和睡眠(3)。但是,我看到许多Query_time小于2秒的查询也保存在慢速日志查询中。
欲知更多详情:
# Query_time: 0.001775 Lock_time: 0.000154 Rows_sent: 1 Rows_examined: 120为什么这种查询保存在我的缓慢日志中,我不明白?
发布于 2013-08-13 08:56:43
可能是因为log_queries_not_using_indexes打开了:
如果在启用慢速查询日志的情况下使用此选项,则将记录预期将检索所有行的查询。见第5.2.5节,“慢查询日志”。此选项不一定意味着不使用索引。例如,使用完整索引扫描的查询将使用索引,但将被记录,因为索引不会限制行数。
https://stackoverflow.com/questions/18203830
复制相似问题