8.5.7 优化 InnoDB DDL 操作
-
可以在线执行对 table 和索引(
CREATE
,ALTER
和DROP
语句)的许多 DDL 操作。有关详情,请参见第 14.13 节“ InnoDB 和在线 DDL”。 -
在线 DDL 支持添加二级索引意味着您通常可以通过以下方式来创建和加载 table 及相关索引:创建不具有二级索引的 table,然后在数据加载后添加二级索引,从而加快创建和加载 table 及关联索引的过程。
-
使用TRUNCATE TABLE清空 table 格,而不是
DELETE FROM tbl_name
。外键约束可以使TRUNCATE
语句像常规DELETE
语句一样工作,在这种情况下,诸如DROP TABLE和CREATE TABLE之类的命令序列可能最快。 -
因为主键对于每个
InnoDB
table 的存储布局都是必不可少的,并且更改主键的定义涉及重新组织整个 table,所以始终将主键设置为CREATE TABLE语句的一部分,并预先进行计划,这样您就不必之后需要ALTER
或DROP
主键。