删除索引时Mysql非常慢

时间:2012-05-09 17:34:46

标签: mysql performance

我有一个专用服务器(英特尔®酷睿™i7-2600四核,包括超线程技术16GB DDR3,2 x 3 TB SATA 6 Gb / s硬盘7200转(软件RAID 1))并安装了nginx +来自debian stable的apache + mysql。

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

1 个答案:

答案 0 :(得分:1)

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