如何解决MySQL中间歇性慢的查询问题?

时间:2015-02-20 22:38:25

标签: mysql sql

我们有一个查询,大部分时间大约需要150毫秒才能完成。每天都有数千人通过该系统而没有任何问题。但是每隔几天就会发生一些事情,其中​​一个查询突然大约需要30分钟才能完成。任何后续查询也运行缓慢。我们能够恢复的唯一方法是杀死这些查询中的任何一个。我们这样做后,任何后续查询都会以通常的150毫秒速度运行。出于安全原因,我不允许发布查询本身。但这并不特别。

dB是MySQL 5.5.40并使用innodb引擎。在此期间,所有常见的系统资源看起来都很好 - 内存,CPU,磁盘空间,磁盘i / o,网络i / o。

有人可以就如何解决这个问题的性质给我一些想法吗?我不相信这是查询,因为它似乎在99%的时间里工作得很好。所以我认为存在某种MySQL错误或奇怪的竞争条件。

1 个答案:

答案 0 :(得分:0)

这似乎与MySQL 5.5中的规划器存在某种问题。自从我们升级到5.6后,问题就消失了。此外,查询的解释完全不同。