MySql 中的ALTER TABLE允许 ALGORITHM=INPLACE 以避免在更改期间进行表复制。但默认情况下,他们使用复制而不是就地。为什么?默认值是否用于向后兼容,或者就地值存在一些限制或失败?
PS MySql 是 Percona-Server-server-56.x86_64 5.6.29
是的。您可以在很多情况下使用它。请参阅此在线 DDL 操作列表。
如果不能使用INPLACE算法,MySQL会告诉你,然后你可以恢复使用DEFAULT(即:复制)或使用pt-online-schema-change