4

我对我最近在所有运行 MySQL 的 EC2 实例时遇到的问题非常好奇。UTC 时间 7 月 1 日凌晨 12:00,我的两个 Amazon EC2 实例(在美国东部地区运行)发出警报,指示 CPU 使用率过高。我调查发现是 MySQL 吃掉了所有的 CPU。我登录并跑去SHOW PROCESSLIST发现没有查询正在运行(这些服务器在下班后不会受到太多打击)。我停止了 MySQL,CPU 利用率下降到 1-3%(正常)。我重新启动 MySQL,它又开始消耗大量 CPU。然后,我重新启动了服务器shutdown -r now,问题就消失了。两台服务器都有完全相同的问题(运行 Ubuntu 12.04 LTS)。

我在系统日志中看到的唯一相关项目是:

Jun 30 23:59:59 hostname kernel: [14152976.187987] Clock: inserting leap second 23:59:60 UTC

我认为我没有为 MySQL 启用日志记录。无论 Ubuntu 12.04 的默认设置是什么,我都在使用它。如果有什么不同的话,大多数数据库都是 InnoDB。

前一天,一个实例受到 EBS 连接问题的影响,导致服务器在访问磁盘时响应极慢。我不相信另一个实例受到影响(它在另一个 AWS 账户中,并且在“中断”期间响应正常),但我不能 100% 确定。我想知道这是否可能导致 MySQL 发疯?但是为什么要等到午夜呢?(小心!这可能是这个谜团中的“红鲱鱼”)

关于可能导致此问题的任何想法?

4

2 回答 2

2

我相信原因是闰秒错误。您可以在任何地方找到有关此的帖子:)

在此处或在serverfault上阅读更多信息

一个快速的解决方案是停止 ntpd 守护程序,同步时钟并重新启动守护程序。当然,一些系统更新不会受到伤害:)

于 2012-07-02T13:31:44.490 回答
2

看看这个。我认为这就是您遇到的问题。

于 2012-07-02T13:35:53.003 回答