SQL Server執行大檔案SQL指令碼

2022-08-31 11:30:14 字數 1005 閱讀 7220

今天工作遇到乙個問題:資料庫本來再sql server2008中,現在需要備份乙個資料庫到另一台伺服器上,這台伺服器裝的事sql server2005。首先想到的是資料庫分離和資料庫備份,結果兩種方法都出現異常。最後想到將資料匯出未sql指令碼,然後使用系統命令執行大檔案sql指令碼。

因資料庫較大,資料較多,匯出sql指令碼時選中分表儲存,最後匯出的sql檔案基本都是2g左右,並且有大約50個檔案,所以寫了乙個批處理檔案,進行批量執行,最後跑了大約5小時。

下面將附乙個縮減版的批處理:

::sql2005使用osql命令,若是sql2008使用sqlcmd命令

osql -s localhost -u sa -p 123456 -i e:\lgbigdata\db\02sql\dbo.*.table.sql

osql -s localhost -u sa -p 123456 -i e:\lgbigdata\db\02sql\dbo.*.table.sql

osql -s localhost -u sa -p 123456 -i e:\lgbigdata\db\02sql\dbo.*.table.sql

osql -s localhost -u sa -p 123456 -i e:\lgbigdata\db\02sql\dbo.*.table.sql

echo

執行完成

pause

osql -s 伺服器 -u 使用者名稱 -p 密碼 -i sql路徑

附:sql server 2008執行大檔案sql指令碼命令

cd c:\program files\microsoft sql server\100\tools\binn

sqlcmd -s . -u sa -p 123 -d test -i data.sql

引數說明:-s 伺服器位址 -u 使用者名稱 -p 密碼 -d 資料庫名稱 -i 指令碼檔案路徑

本地伺服器位址可以寫 . 比較輕鬆,也可寫(local)或者ip位址

語句執行SQL Server大檔案SQL指令碼

注意點 sql2005用的是osql命令,如果是sql2008則使用sqlcmd命令。在 c program files microsoft sql server 100 tools binn 目錄可以找到osql或sqlcmd命令在windows下,執行cmd命令,在命令視窗中輸入 說明 osql...

上傳大檔案 關於大檔案上傳

js計算檔案md5使用spark md5.js,據說這個庫使用的是世界上最快的md5演算法。js對檔案切片並使用ajax上傳切片 let size file.size 獲取檔案大小 const shardsize 1024 1024 塊大小1mb let shardcount math.ceil s...

Mysql執行大檔案sql語句 未測試

如果.sql檔案過大,mysql會直接斷開連線 解決方法 在mysql的配置檔案my.cnf 中加入 一行max allowed packet 100m 該大小 mysql.sql檔案大小 mysqld max allowed packet 20000m wait timeout 20000000 ...