MYISAM快速创建索引

先说一个技巧,先禁用索引、再载入数据,然后重新启用索引

alter table 表名 disable keys;

--load the data

alter table 表名 enable keys;

注意:这个技巧对唯一索引是无效的。

MYISAM引擎的表快速创建索引的这个技巧属于非官方的,有一定风险。

假设有一张表有较大量数据,按如下步骤:

1.创建一张结构完全一致的空表。

2.在新表中创建需要的索引

3.执行flush table with read lock,将所有表禁止访问

4.将新表和原表的.frm和.MYI文件互换(这个操作在之前一篇文章列写过)

5.解除禁止访问

6.执行repair table来重建表的索引(这个操作通过排序来构建所有索引,包括唯一索引)

你可能感兴趣的:(MySQL)