【发布时间】:2012-02-07 11:25:12
【问题描述】:
我遇到了以前从未遇到过的问题。 我昨天清理了带有访问统计数据的客户数据库和表有 15GB 的数据,所以我决定删除所有早于 2 月 1 日的行,因为我们将所有数据都存储在每日统计数据中,并且没有必要保留那些旧的单一统计数据。
我尝试运行DELETE FROM sv WHERE datetime < ?(日期时间索引)和DELETE FROM sv WHERE id < ?(id 上的主索引),但两个查询都太慢了,耗时超过 15 分钟。所以我刚刚通过 Ctrl+C 中止了这些查询。
然后我认为更好的主意是复制表结构和二月行并删除旧表,但今天 我发现服务器上的 mysql 进程正在运行高达 50% 的 cpu 使用率 正常流量我们的网站。
将 sv 表移出数据库文件夹(myIsam 表)后使用率仍高达 50%。
首先我认为该表一定已损坏,但 phpmyadmin 并未将其标记为已崩溃。
如何调试这个?那里发生了什么?
【问题讨论】:
-
你可能想在dba.stackexchange.com问它
标签: mysql crash cpu-usage sql-delete