我有一个庞大的数据库服务器,里面有很多非常相似的 InnoDB 数据库。我经常运行的查询只是更新小表中一行的时间戳。大部分时间这需要 1-2 毫秒。有时,在晚上,可能在备份和 maatkit 复制工具正在运行时,这些查询中的一个或多个可能会在几分钟内显示“正在更新”。在此期间,其他查询,包括 maatkit 查询,似乎都在正常进行,似乎没有其他查询在执行。我一直无法解释或解决这个问题。
我们在一对 4-way Xeon 上使用 mysql 4.1.22 和 gentoo 2.6.21,具有 16gig 的 RAM 和 RAIDed 驱动器进行存储。复制已经到位并且运行良好,maatkit 每晚确认复制。InnoDB 正在使用大部分 RAM,并且 cpu 通常处于 70-80% 的空闲状态。有问题的表有大约 100 行,每行大约 200 个字节。我已经尝试过在 WHERE 子句上使用和不使用索引,但没有明显的变化。未发现异常日志消息(检查系统消息和 mysql 错误)。
有没有其他人听说过这个?解决了这样的事情?关于如何调查的任何想法?