如何使用Percona的`pt-online-schema-change`工具进行`CREATE INDEX`?

时间:2014-10-02 18:20:33

标签: mysql sql percona

如何使用Percona的CREATE INDEX工具pt-online-schema-change?我想做点什么:

CREATE UNIQUE INDEX idx_name ON table_name (col_1, col_2, ...) USING BTREE

根据documentation,我必须使用--alter参数,然后使用相应的ALTER TABLE语句,减去前面的ALTER TABLE table_name短语。但是,CREATE INDEX不以ALTER TABLE开头,表名嵌入CREATE INDEX语句中。那我怎么能继续前进呢?

2 个答案:

答案 0 :(得分:9)

根据MySQL的documentation CREATE INDEX

  

CREATE INDEX映射到ALTER TABLE语句以创建索引。

因此,您可以将我的示例转换为SQL语句:

ALTER TABLE table_name ADD UNIQUE INDEX idx_name (col_1, col_2, ...) USING BTREE

导致Percona架构修改声明:

ADD UNIQUE INDEX idx_name (col_1, col_2, ...) USING BTREE

答案 1 :(得分:3)

我用这个) pt-online-schema-change --alter'添加索引ix_cdate(cdate)'D = database_name,t = table_name --dry-run --critical-load Threads_running = 110