【发布时间】:2010-12-19 06:18:11
【问题描述】:
我们有一个已部署到 50 多个网站的应用程序。在这些站点中,我们注意到了一个奇怪的行为,我们现在已经将其跟踪到一个特定的查询。偶尔,通常一天一到两次,我们的调试脚本报告之一
2006 : MySQL server has gone away
我知道引发此错误的原因有很多,但最奇怪的是,每次引发此错误时,都会发生在运行的同一个 SQL 查询中。这个查询没有什么奇怪或复杂的地方,它看起来像这样:
SELECT `advert_only` FROM `products` WHERE `id` = '6197'
对于各种不同的产品 ID,此查询每天必须运行数万次,因此它肯定不会每次都失败。它在我们 4 台服务器上看似随机的站点上随机失败。似乎没有共同点,但我们注意到的一件小事是,有时会在 1 个特定的人连续 2 或 3 个页面加载时发生,因为我们还会跟踪它发生的人的 IP。
这是在运行 MySQL 5.0.81 的 CentOS 5 服务器上
【问题讨论】:
-
服务器消失意味着它超时。 ID 字段是否被索引?
-
是的 id 被索引并且是主键