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

SQL Server 2000 記錄傳送遷移至 2008 完整指南:三種遷移策略與實戰步驟

     編輯:關於SqlServer

背景:2000 版記錄傳送架構已淘汰

SQL Server 2000 記錄傳送基於 **資料庫維護計畫精靈**,2005 起完全重寫為獨立 Agent 作業架構。直接升級實例會導致傳送中斷,**必須遷移重新配置**。

三種遷移策略對比

策略停機時間複雜度次要資料庫重新初始化適用場景
帶容錯移轉遷移極短 (僅切換時)高否7x24 不可停機、資料庫大
不帶容錯移轉遷移主庫升級期間不可用中否可接受短暫停機、資料庫中等
完全重新部署視備份/還原時間低是 (從完整備份)資料庫小、高可用性非關鍵

策略一:帶容錯移轉遷移 (零資料遺失、最小停機)

假設:Server A (Primary, SQL 2000) → Server B (Secondary, SQL 2000)

  1. 升級 Server B 至 2008:次要資料庫離線,保持 2000 格式,2000 傳送作業失效。
  2. 手動容錯移轉至 Server B:
    a. Primary (A) 執行尾部記錄備份 `WITH NORECOVERY`。
    b. Secondary (B) 還原尾部記錄 `WITH RECOVERY` → 資料庫上線、自動升級為 2008 格式。
    此時用戶連線切至 B,業務持續。
  3. 升級 Server A 至 2008:主資料庫離線,保持 2000 格式。
  4. 在 Server B 配置 2008 記錄傳送 (反向):B 為新 Primary,A 為新 Secondary。**關鍵:初始化次要資料庫選「否,已初始化」**。
  5. 傳送啟動後,A 接收首筆記錄 → 自動升級為 2008 格式。
  6. (可選) 容錯移轉回 Server A 恢復原拓撲。

策略二:不帶容錯移轉遷移 (簡單但主庫升級期間停服)

  1. 升級 Secondary (B) 至 2008。
  2. 升級 Primary (A) 至 2008 (期間主庫不可用)。
  3. 在 A 配置 2008 記錄傳送 → B,**指定相同備份共享路徑**,初始化選「否,已初始化」。
  4. 傳送啟動,B 接收首筆記錄自動升級。

策略三:完全重新部署 (最乾淨、需重新初始化)

  1. 兩節點均升級至 2008。
  2. Primary 執行完整備份。
  3. Secondary 還原完整備份 `WITH NORECOVERY`。
  4. 全新配置 2008 記錄傳送,初始化選「從備份還原」。

遷移後清理:移除 2000 殘留物件

2008 不使用以下系統表與作業,可安全刪除:

DROP TABLE msdb.dbo.log_shipping_databases;
DROP TABLE msdb.dbo.log_shipping_monitor;
DROP TABLE msdb.dbo.log_shipping_plan_databases;
DROP TABLE msdb.dbo.log_shipping_plan_history;
DROP TABLE msdb.dbo.log_shipping_plans;
DROP TABLE msdb.dbo.log_shipping_primaries;
DROP TABLE msdb.dbo.log_shipping_secondaries;
-- 刪除 2000 記錄傳送建立的 SQL Agent 作業

新功能紅利:備份壓縮

2008 Enterprise 引入 **備份壓縮**。遷移後可啟用:

  • 伺服器層級:`sp_configure 'backup compression default', 1`
  • 各傳送配置單獨指定:`@backup_compression = 1`

大幅減少備份檔案體積、網路傳輸時間、磁碟佔用。

限制提醒

遷移後次要資料庫**無法處於 STANDBY (唯讀) 模式**——此為架構限制,非 Bug。需報表查詢請改用 Database Snapshot (Enterprise) 或 AlwaysOn 可讀次要複本 (2012+)。

結語

2000→2008 記錄傳送遷移本質是**架構重塑**。帶容錯移轉遷移雖步驟多,但能實現**業務零中斷、資料零遺失、次要庫免重建**,是關鍵系統首選。升級前跑 Upgrade Advisor、測試環境演練、備份 msdb,三步到位。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved