【发布时间】:2009-07-07 03:36:14
【问题描述】:
对的人,
我有一个 MySQL 数据库,在表上使用 InnoDB,我必须经常执行一个大型 cron 作业来执行大量查询和插入。当我运行这个 cron 作业时,它运行了 5 分钟左右,没有其他页面能够加载。一旦完成,就会执行查询并加载页面。
实际上添加了所有这些数据的表甚至没有被主站点查询。很简单,当 MySQL 工作量很大时,站点的其余部分就无法触及。这肯定是不对的,是什么导致了这种情况发生? MySQLD 的 CPU 使用率飙升至 120% (!!!!!) 之类的巨大数字,并且所有 MySQL 查询都被锁定。
什么可能导致/解决这个问题?
【问题讨论】:
-
myslqd 是多线程的,因此如果您有多个内核,则可以轻松超过 100%。例如,对于 8 核机器来说,120% 听起来一点也不大。
-
我从来不知道,非常感谢。