ALTER TABLE tbl DROP COLUMN col1, ALGORITHM=INPLACE, LOCK=NONE;
ALTER TABLE tbl DROP COLUMN col2, ALGORITHM=INPLACE, LOCK=NONE;
ALTER TABLE tbl DROP COLUMN col3, ALGORITHM=INPLACE, LOCK=NONE;
vs
ALTER TABLE tbl
DROP COLUMN col1, col2, col3,
ALGORITHM=INPLACE, LOCK=NONE;
我有一个非常大的表(数百万条记录),需要从中删除一些列。该表已被大多数端点广泛使用。
我希望删除这些列,而对API响应时间的影响最小。
哪种方法可能造成最少的干扰?
例如,也许单个查询将导致更长的总表锁定时间,但是每个锁定可能会更短,并且如果我将它们间隔开,那么对API的破坏也会更少。