记录MySQL实时慢查询

时间:2013-06-10 21:55:16

标签: mysql mysql-slow-query-log

我想知道是否可以记录(或以其他方式检测)一个查询,该查询在到达long_query_time时就会花费太多时间来执行。因为MySQL只在完成执行时记录慢速查询。

我知道通过检查MySQL Administrator的“服务器连接”选项卡,我可以在查询之前看到慢查询,但我希望在发生时自动得到通知(日志更容易)。

1 个答案:

答案 0 :(得分:1)

如果您愿意轮询数据库以检查查询的运行时间是否超过x秒,则可以使用show processlist,或直接转到process list table

select * from INFORMATION_SCHEMA.PROCESSLIST where time > TIME_IN_SECS

这会给数据库增加更多负载,所以我不建议每秒都这样做。但这意味着你不会“一旦达到long_query_time”就得到这些信息。