【发布时间】:2011-11-22 19:14:22
【问题描述】:
我有一个大表(约 50M 记录),我想将记录从该表传递到具有相同结构的另一个表(新表有一个额外的索引)。
我正在使用INSERT IGNORE INTO... 传递记录。
最快的方法是什么?是通过小块(比如说 1M 条记录)还是更大的块?
有什么办法可以加快这个过程吗?
【问题讨论】:
-
在插入操作期间关闭目标表上的索引,然后重新启用/重建它们。
-
如果您使用 Where,idexes(在源表上)可能会有所帮助。目标表上的索引可能会减慢进程(因为在每次插入 engie 重新计算索引之后)。
-
我使用源表上的索引,我需要目标表上的索引