【发布时间】:2011-07-15 16:57:55
【问题描述】:
网站是一个电子商务网站:表中有 500 万条记录 两台服务器:一台用于 webserver,另一台包含 mysql 搜索是通过 Sphinx 服务器进行的。所以搜索查询不会来到 MySQL
Mysql 配置:双四核 Zeoo 2.0、146 GB、16 GB RAM。 网络服务器配置:双四核 Zeoo 2.0、146 GB、16 GB RAM。
在过去的四天里,我发现 MySQL 每天至少连续使用 CPU 6-7 个小时。之后就正常了。即使我重新启动,它也不会停止。它会在 2 到 3 分钟内再次使用 CPU。我什至尝试停止 Apache 并确保没有人连接到 Mysql。
【问题讨论】:
-
你和
mysqladmin pr聊天是怎么回事?也许它正在重建索引或修复损坏的表 -
我不确定桌子是否修好了。因为它可以正常工作至少 12 小时。如何检查它的重建索引。
-
我还使用 SHOW ENGINE INNODB STATUS 获取了一些信息
-
我也在 mysqld log110715 22:23:43 [ERROR] /usr/libexec/mysqld: Incorrect key file for table '/tmp/#sql_2184_2.MYI' 中找到了这个;尝试修复它 110715 22:23:49 [错误] /usr/libexec/mysqld: 磁盘已满写入 './morecom_db/system_log.MYD' (Errcode: 28)。正在等待某人释放空间...(在释放磁盘空间后,预计服务器最多延迟 60 秒才能继续) 110715 22:23:49 [错误] /usr/libexec/mysqld:60 秒后重试。消息在 600 秒内重印
-
这意味着您的mysql服务器处于非常严重的状态。让它脱机,在机器上获得更多空间(可能只是 mysql tmp 文件夹空间不足),修复表。
标签: mysql performance cpu