2009-09-30 66 views
1

我在支持ODBC連接的Windows計算機上有一個數據源。我想以編程方式將整個數據源每小時複製到一個MySql數據庫。有沒有比做一個select * from,然後對每一行做一個insert更快?將ODBC數據源鏡像到MySql

回答

1

無法避免select * from,如上所述。

但是,如果所有數據都寫入文件並且使用了LOAD DATA INFILE ...,則插入的速度比其他方法快兩個數量級。

插入足夠快,可以覆蓋將ODBC數據寫入文件並完全刪除MySql數據並從頭開始的成本。

1

您可能無法避免select * from,但通過在複製之前禁用目標表上的鍵並在其之後重新啓用它們,您可以使其顯着更快(取決於表的大小和索引列的數量)。這是doc

1

不要爲每行插入。每個人都需要額外的時間讓數據庫響應每一行都成功。相反,使用SQL事務一次創建100個批次的插入...