在大型mysql表中添加新列的最快方法是什么?
Alter table add列创建完整表的副本,然后用新的create table替换旧表。在此过程运行时,原始表是可读的,但所有插入和更新都会停止。
在大型表格上,副本可能需要很长时间,有没有办法减少它?
答案 0 :(得分:5)
你被困在做ALTER TABLE。有效解决这个问题的最佳方法是使用MASTER-MASTER设置。
您可以先修改MASTER1,然后在生产中使用MASTER2。然后你切换并完全相反。
答案 1 :(得分:2)
请勿在活动系统上进行此操作。对于活动系统,请在关闭系统进行常规维护时执行此操作。
答案 2 :(得分:1)
假设有一个INNODB表: