2013-06-27 13 views
0

我在两个不同的服务器上有两个数据库:db1,db2。我想从一个表传递一些数据到其他:从复制到db1.mytable db2.mytable
以下哪会更好/更快:
MySQL PHP:从一个表中选择数据并在其他数据库中插入其他数据库:性能明智

答:选择从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; 
} 


B:

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


+0

什么错1简单的'插入MyTable select *从他的表'? –

+0

3个原因: - 他们在不同的服务器上的两个不同的数据库 - 他们是巨大的表 - 表的子集将被传输 –

+0

其在两台机器上 –

回答

1

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

的第一台服务器,导出使用 “选择INTO OUTFILE” 表/列在服务器上使用2导入您的数据:

这将是快速

相关问题