Ubuntu 12.04和MySQL有一个非常奇怪的IO问题。
目前该机器只是一个复制的奴隶偶尔读取查询击中它。 磁盘利用率随机增加,似乎与MySQL的使用无关。 机器只运行MySQL,没有其他服务。
本来机器使用的是ext4,它遇到了MySQL的IO问题,我把它擦干净,然后用ext3重新安装。 复制后恢复磁盘利用率再次随机飙升,保持高点几个小时,并再次下降。
MySQL的使用情况每天都遵循相同的模式,但是磁盘利用率没有任何变化,随机激增,在几个小时或者几分钟内就可以保持高点。 凌晨1点,每秒钟都有一次,这是我们的MySQL备份(mysqldump)运行并且一致的情况。
我的下一步是降级到Ubuntu 10.04,这台机器以前运行的是Debian 5,没有任何问题。 我们有第二台同样的机器,在我的脑海里,排除了一个单一的硬件问题。
磁盘利用率图:

下午5点的初始峰值是在重新安装后的复制追赶,上午1点的峰值是我们的备份。 这个问题在凌晨4点出现,并且一直保持到12点之后才出现大幅下降。
MySQL Weekly Graph

这是我们平均每周使用MySQL的次数。 每天同样的模式,从上午9点到晚上11点最繁忙,从这里安静到上午9点,每天凌晨4点左右再降到最低点。
发生问题时Iostat输出:
http://pastebin.ca/2336462
的/ proc /坐骑:
http://pastebin.ca/2336464
df -h:
http://pastebin.ca/2336465
这听起来像你想知道哪个进程挂钩磁盘IO。 幸运的是,自从Lucid / 10.04以来,Ubuntu通过apt-get install iotop iotop可以使用apt-get install iotop 。 由于你的IO尖峰可以持续数分钟或数小时,检测下一个IO尖峰,启动iotop和识别罪魁祸首应该是相对容易的。