0

我在两个不同的服务器中有两个数据库:db1、db2。我想将一些数据从一个表传输到另一个表:从 db1.mytable 复制到 db2.mytable
以下哪个更好/更快:

A:从 db1.mytable 中选择大量行,然后小批量发送到 db2.mytable

B:循环(从 db1.mytable 中选择少量行,然后将它们全部插入到 db2.mytable 中)

示例:
A:

SELECT * FROM mytable LIMIT 200000;
while(not_all_fetched)
{
    fetch 1000 rows;
    insert these 1000 rows into db2.mytable;
}


乙:

while(more_rows_to_copy)
{
    SELECT * FROM mytable LIMIT 1000;
    fetch all of them;
    insert these 1000 rows into db2.mytable
}


4

1 回答 1

1

我同意大卫贾希的观点。事实上,不同服务器上的数据只需要您先导出它们。

在第一台服务器上,使用“Select into outfile”导出表/列 在服务器 2 上使用以下命令导入数据:

这会很快

于 2013-06-28T15:18:33.340 回答