千万级数据表如何有效的变更字段?

在实际生产过程中,如果有一张表A,数据量是千万级。如何有效的为表A新增一个字段,或者变更表A的某个字段呢?
我目前采用的方法如下:
1、将A表的数据导出到一个临时文件中tmp.unl
2、新建一张临时表Atmp,最好是无日志类型的
3、将tmp.unl中的数据导入到Atmp表中
4、删除表A
5、将Atmp表更名为A
6、将表A设置为标准表,同时为Atmp增加索引

这样的话,会导致表A中的数据落地,想问有没有更好的解决方法呢?

查看回复