MySQL陷入困境,吃掉磁盘I / O

在Solaris上使用mySQL 5.0.51。

间歇性的时候,MySQL看起来像是被卡住了。 读取服务器上的磁盘使用率高达98%。 我使用dtrace(特别是DTrace工具包 – iosnoop)来追踪哪些进程正在使用所有读取。 Mysql每秒钟调用tablename.TDM数百次。 networking服务器的平均负载不会超过这个数字。 没有cronjobs运行,没有其他的工具,如mysqldump或任何东西。 这是一个主/从复制设置。

作为陪审团的修复,我把mysql表从'tablename'更改为'tablename2',然后回到'tablename'

这暂时解决了这个问题,并“松开”MySQL。 磁盘使用率回落,dtrace不再显示数百次读取到“tablename.TDM”/秒。

我有几个想法是:

1. MySQL version bug 2. Infinite loop somewhere in my application (which i'm not sure how likely this is) 3. ?? 

有没有人看过这个或有任何见解?

谢谢

呃,随机重命名表是一个可怕的想法。

查看MySQL进程列表以确定正在加载系统的进程。 使用:

show full processlist;

还有像mytopmtop这样的实用程序。

编辑1

隔离将取决于你的环境。 从哪里连接?

如果localhost只能是一个系统脚本,或者你有从你的数据库提供的应用程序?

如果远程主机,那个远程主机服务的function是什么? 和别人不一样吗? 它有脚本还是只是一个应用程序?

隔离来源应该是相当快速和简单的,但不一定是原因。