Mysql DDL 大表 遇到的问题
一张表yunpan_item大概有十几万的数据,上面有一个FullText index。
alter table yunpan_item add column `data_index` bigint COMMENT '帖子id' after source;
执行的很慢,show full processlist发现status是copyin to tmp table. 一直执行了7个小时还没结束。
加上ALGORITHM=INSTANT,结果报错:InnoDB presently supports one FULLTEXT index creation at a time(可能是mysql的bug)。
于是在my.cnf上加上
tmp_table_size = 256M
max_heap_table_size = 256M
然后先把FullText index drop掉,然后执行add column,这个时候就没有copying to tmp table了。然后结束后把索引加回去。
喜欢艺术的码农