2016-07-13 34 views
0

我正在使用Sql Azure數據庫遷移向導(https://sqlazuremw.codeplex.com/)將數據庫從一個實例遷移到另一個實例。缺省的批處理大小被設置爲1000,嘗試了以下以提高批量大小修改Sql Azure數據庫遷移向導的批量大小

修改在二個SQLAzureMW.exe.config和SQLAzureMW.vshost.exe.config

<add key="BCPArgsIn" value="{0} in {1} -E -n -C RAW -b 1000 -a 4096"/> 
<add key="BCPArgsOut" value="&quot;{0}&quot; out {1} -E -n -C RAW"/> 

以下到

<add key="BCPArgsIn" value="{0} in {1} -E -n -C RAW -b 50000"/> 
<add key="BCPArgsOut" value="&quot;{0}&quot; out {1} -E -n -C RAW -b 50000"/> 

當BCP輸出或BCP輸出時,默認批處理大小仍被視爲1000。如何解決這個問題?

命令已被更改爲

bcp.exe dbname.dbo.tablename out C:\BCP_OUT\dbo_tablename.dat -E -n -C RAW -b 500000 -S servername -U "username" -P "mypassword" 

,但仍然在它的一個鏡頭只傳送1000條記錄。

回答

0

批量大小選項僅對BCP有效,但不適用於BCP輸出。所以需要做的就是增加BCP的數據包大小(我使用了-a 65535,這是最大值)。