首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 數據庫知識 >  >> SQL Server 資料庫 >> 關於SqlServer

將 SQL Server 2005 資料庫遷移至 SQL Express 兩種實用方法

     編輯:關於SqlServer

方法一:匯入/匯出精靈 (Import/Export Wizard)

  1. 啟動「Microsoft SQL Server」→「匯入和匯出資料」。
  2. 資料來源選 .NET Framework Data Provider for SqlServer,連線至 SQL 2005 來源伺服器。
  3. 目的地選 SQL Server Native Client,連線至目標 SQL Express 實例。
  4. 選擇「從來源資料表或檢視表複製資料」或「寫入查詢指定要傳輸的資料」。
  5. 勾選要遷移的資料表/檢視表,可對應編輯型別對應、身分識別插入等選項。
  6. 執行封裝,完成後驗證資料筆數與條件約束。

✅ 適合:一次性完整遷移、需型別轉換、跨版本相容性佳。
⚠️ 注意:Express 版有 10 GB 資料庫大小限制 (2008 R2 後放寬)。

方法二:Visual Studio 2010「發布至提供者」/ 腳本產生

  1. 在 VS 2010 專案中右鍵資料庫專案 → 發布 → 發布至提供者。
  2. 或選擇 將指令碼儲存至檔案,產生完整的 Schema + Data T-SQL 腳本。
  3. 使用 sqlcmd 或 SSMS 查詢編輯器在目標 Express 實例執行腳本。
sqlcmd -S .\SQLEXPRESS -d TargetDB -i migration_script.sql -o output.log

✅ 適合:版本控管、CI/CD 整合、需精確控制物件建立順序。
⚠️ 注意:大量資料腳本檔案極大,執行時間長,建議分批或搭配 BCP。

實務建議

場景推薦方法關鍵設定
完整遷移、資料量 < 5GB匯入/匯出精靈啟用「身分識別插入」、停用條件約束再重建
僅結構遷移 / 版控VS 發布腳本只產生 Schema,搭配資料比對工具
大量資料 (> 10GB)BCP + 手動建 Schema先用 SSMS 產生建表腳本,再 BCP 導資料
跨版本 (2005 → 2012+ Express)匯入/匯出精靈相容性層級設為 90 (2005) 再升級

常見問題排查

  • 孤立使用者:遷移後執行 sp_change_users_login 'Auto_Fix', 'login' 或 ALTER USER ... WITH LOGIN = ...。
  • 排序規則衝突:來源/目標資料庫排序規則不一致導致聯結失敗,建立目標資料庫時指定相同 Collation。
  • Express 版限制:無 Agent、無資料庫鏡射、無線上索引重建,維護計畫需改用 sqlcmd + 工作排程器。
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved