我隔离了 MySQL 5.5,里面有一个巨大的表(3.5Tb 的数据,是的,它只有 1 个表)。
目标是将该表的一半复制到同一服务器上的另一个表中。如何更好更快地做到这一点? :
1) 只需“INSERT INTO new_table SELECT * FROM old_table WHERE ...”。 在这种情况下 MySQL 会有何行为?我预计与 MySQL 的连接会因超时而中断,但是查询本身应该运行,直到复制所有数据。 或者MySQL会因这样的查询而崩溃?
2) 使用相同的“INSERT ... SELECT”,但按 block 选择(例如按 10000 行)。我想这绝对应该更安全,但速度要慢得多。
最好的方法是什么?预先感谢您!
最佳答案
我使用过 CREATE TABLE AS,看看这是否也可以帮助您:
关于mysql - 在巨大的 MySQL 表上进行 INSERT ... SELECT,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39896964/