| 方案 | 核心機制 | 適用規模 | 停機窗口 | 風險等級 | 遷移完整性 |
|---|---|---|---|---|---|
| 1. 就地升級 | 安裝程式自動檢測並升級實例 | 大型、極難停機 | 最短(僅升級過程) | 高(不可逆) | 100%(含登錄、權限、作業、全文等) |
| 2. Detach/Attach | 分離文件 → 複製 → 附加到 2005 | 中小型、文件可搬運 | 中等(複製耗時) | 低(可回滾) | 僅用戶庫,實例級對象需手工遷移 |
| 3. Backup/Restore | 完整備份 → 還原到 2005 | 中小型、有備份窗口 | 較長(備份+還原) | 低(原庫保留) | 同 Detach/Attach |
| 4. Copy Database Wizard | SMO 腳本逐對象複製 | 中小型、跨網段 | 最長(逐行複製) | 極低 | 可選對象,靈活但慢 |
| 5. Export/Import (DTS/SSIS) | 數據流任務搬運數據 | 極小、異構或僅需數據 | 極長 | 極低 | 僅數據,無結構/權限/代碼 |
BACKUP DATABASE master, model, msdb + 所有用戶庫完整備份 + 文件級複製 .mdf/.ldf 到異地。sp_detach_db → 複製文件 → sp_attach_db / SSMS 附加。優勢:文件級複製可利用 SAN 快照/壓縮傳輸加速;缺點:數據庫數量多時逐個操作繁瑣。BACKUP TO DISK → RESTORE WITH MOVE, REPLACE, STATS=10。優勢:備份文件可壓縮/加密/分卷傳輸,網絡傳輸更穩健;缺點:備份/還原雙倍 IO 耗時。Perform Volume Maintenance Tasks)、使用多條備份帶(MIRROR TO)、並行還原(RESTORE ... FILE = n 多線程)。管理控制台 → 右鍵數據庫 → 任務 → 複製數據庫向導。底層調用 SMO 逐對象腳本化 + BCP 導數據,適合百 MB 級庫,GB 級以上極慢,不推薦生產大庫。
僅遷移數據行,不帶主鍵/索引/觸發器/權限/存儲過程。僅適用於異構遷移(如 Oracle→SQL)或極小測試數據初始化。
ALTER DATABASE SET COMPATIBILITY_LEVEL = 90(逐庫評估)。sp_updatestats 或 UPDATE STATISTICS WITH FULLSCAN。Network Library=DBMSSOCN 等舊驅動參數,改用 DataTypeCompatibility=80 兼容舊行為。