0

我有一台专用服务器(Intel® Core™ i7-2600 Quadcore,包括超线程技术 16GB DDR3、2 x 3 TB SATA 6 Gb/s HDD 7200 rpm(软件 RAID 1))并安装了 nginx+apache+mysql来自 Debian 稳定版。

我有一个包含 2+ 百万行(大约 400MB 数据)的表的数据库。当我删除索引时,数据库非常慢。例如,我现在在单个列中删除一个索引大约 8 分钟。从 iotop 我看到 mysql 大约有 8Mb/秒。这不是太慢了吗?

4

1 回答 1

1

当您在 innodb 中更改表(包括添加或删除索引)时,整个表将在磁盘上重写。(数据被复制,索引被重新生成)。如果您在 MySQL 5.1 中使用 InnoDB Plugin,则不会发生这种情况,但默认情况下 MySQL 5.1 不是使用 InnoDB Plugin 设置的,而是使用旧的内置 InnoDB。

于 2012-05-09T19:09:34.420 回答