添加NULL列非常大的MySQL表 - 是否需要比添加到小表更长的时间?

时间:2014-12-22 00:09:26

标签: mysql sql alter-table

逻辑说,即使添加到一个非常大的(~800 GB)表,添加NULL列也应该非常快。

显然,如果ALTER TABLE新列有NOT NULL,则需要很长时间,但NULL列的情况如何呢?它与改变一张小桌子相比如何?

我在使用MySql 5.5。

谢谢!

1 个答案:

答案 0 :(得分:3)

MySQL将ALTER TABLE实现为表重新创建。

  

在大多数情况下,ALTER TABLE制作原始表格的临时副本(...)   将更改合并到副本中,删除原始表格,   并重命名新的。

手册继续并解释了大多数情况"手段。基本上:添加,删除和重新定义列。

只有表格大小很重要,列类型在执行时间方面几乎没有影响。