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

SPS 2003 遷移至新伺服器並升級 SQL 2005 完整實戰手冊

     編輯:關於SqlServer

前言:SharePoint Portal Server 2003 遷移升級實戰

SPS 2003 (SharePoint Portal Server 2003) 早已停止支援,但部分企業仍因歷史系統運行其上。本文記錄一次真實遷移案例:物理機 → 虛擬機、同步升級 SQL Server 2000 → 2005、解決區域建立失敗、管理介面顯示英文等遺留問題。提供可複現的標準化步驟與關鍵決策點。

一、遷移前評估與決策

項目現狀目標決策依據
作業系統Windows Server 2003 (物理)Windows Server 2003 (虛擬機)應用相容性、虛擬化彈性
資料庫SQL Server 2000 SP4SQL Server 2005 SP3+安全性支援、效能、功能 (XML、DMV、鏡像)
SPS 版本SPS 2003 + 所有修補程式同版本 + 同修補程式避免版本不匹配導致還原失敗
網域加入現有 AD 網域同網域保留使用者/群組 SID、權限無縫遷移

二、標準化遷移步驟 (零停機窗口規劃)

階段 1:目標環境建置 (可提前完成)

  1. 佈建虛擬機:CPU 4核、RAM 8GB、C: 60GB、D: 100GB (資料/記錄)、E: 50GB (備份/暫存)
  2. 加入網域:同一 AD 網域,確保 DNS 解析正常
  3. 安裝 SPS 2003:完整安裝 (前端 Web + 索引伺服器 + 資料庫伺服器角色)
  4. 套用修補程式:版本號必須與來源完全一致 (檢查 `Add/Remove Programs` 修補程式清單逐一對照)
  5. 建立 IIS 網站佔位:對應每個入口網站/工作組網站的 IP/Host Header/連接埠,必須先建立空白網站,否則還原會失敗

階段 2:備份來源 (來源端執行)

-- 使用 SPS 2003 內建備份工具 (stsadm -o backup)
stsadm -o backup -url https://source-portal -filename D:\SPS_Backup\portal_backup.dat -overwrite
stsadm -o backup -url https://source-wss -filename D:\SPS_Backup\wss_backup.dat -overwrite
-- 複製備份檔至目標機 D:\SPS_Backup\

階段 3:DNS 切換與還原 (目標端執行)

  1. 修改 DNS A 記錄:指向新虛擬機 IP (TTL 設 300 秒加速生效)
  2. 暫時修改 hosts:若 DNS 未生效,目標機 `C:\Windows\System32\drivers\etc\hosts` 新增對應
  3. 複製備份檔:至目標機本地磁碟 (D:\SPS_Backup\)
  4. 執行還原:
    stsadm -o restore -url https://target-portal -filename D:\SPS_Backup\portal_backup.dat -overwrite
    stsadm -o restore -url https://target-wss -filename D:\SPS_Backup\wss_backup.dat -overwrite
    
  5. 擴展 Web 應用程式啟用匿名存取:中央管理 → 應用程式管理 → 擴展 Web 應用程式 → 區域:預設 → 匿名存取:啟用

階段 4:資料庫升級 SQL 2000 → 2005

  1. 脫離 SPS 資料庫:中央管理 → 內容資料庫 → 移除內容資料庫 (僅移除連結,不刪除檔案)
  2. 升級 SQL Server:就地升級或並行安裝 SQL 2005 (建議並行:新實例 `MSSQL.2`,避免污染舊實例)
  3. 附加資料庫至 SQL 2005:SSMS → Attach → 指定 `.mdf`,自動升級內部結構
  4. 更新相容性層級:`ALTER DATABASE SPS_Content SET COMPATIBILITY_LEVEL = 90;`
  5. 重新掛載內容資料庫:中央管理 → 內容資料庫 → 新增內容資料庫 → 指向升級後資料庫
  6. 執行升級精靈:`stsadm -o upgrade -inplace -url https://target-portal -forceupgrade`

階段 5:驗證與收尾

  • 所有入口網站/工作組網站存取正常
  • 建立區域功能恢復
  • 管理介面語言正確 (中文)
  • 搜尋服務爬網正常、索引可查詢
  • 使用者權限、群組對應無誤
  • 備份/還原演練通過

三、關鍵問題與解決方案

問題根因解決
無法建立區域SQL 2000 → 2005 升級後,`proc_CreateArea` 預存程式邏輯相容性問題升級後執行 `stsadm -o upgrade -forceupgrade` 重建系統預存程式
管理介面顯示英文語言包未正確遷移/註冊確認 `12\TEMPLATE\LAYOUTS\1028` (繁中) / `2052` (簡中) 目錄存在,重新部署語言包
還原失敗「網站不存在」未預先建立 IIS 空白網站階段 1 步驟 5 必做
搜尋爬網報錯索引目錄路徑變更、權限遺失重設索引目錄至 D:\SPS_Index,授權應用程式池身分讀寫
跨資料庫查詢失效Linked Server 定義遺失重建 Linked Server,對應 SQL 2005 實例名稱

四、遷移順序靈活性說明

文中提到:「先升級 SQL 2005 還是先遷移網站沒有先後順序。」

實務建議:先遷移 SPS (含資料庫備份/還原),再升級 SQL。原因:

  1. SPS 還原依賴 SQL 2000 格式備份檔,SQL 2005 無法直接還原 SPS 2003 原生備份
  2. 先在 SQL 2000 環境驗證 SPS 功能完整,隔離應用層問題
  3. 再升級 SQL,問題域縮小至資料庫引擎升級

五、遷移後優化清單

  • 啟用 SQL 2005 新功能:資料庫鏡像 (高可用)、壓縮備份、DMV 監控、資料分區
  • 調整 TempDB:多資料檔 (4-8)、放置獨立磁碟
  • 建立維護計畫:索引重組/重建、統計更新、完整性檢查、備份壓縮加密
  • 設定效能基準:收集升級前後 `batch requests/sec`、`page life expectancy`、`latch waits` 對比

六、總結

SPS 2003 遷移升級的核心風險在於 版本號嚴格對齊、IIS 網站預建立、資料庫升級順序、語言包/搜尋索引路徑。遵循「環境建置 → 備份 → DNS 切換 → 還原 → 升級 → 驗證」標準化流程,配合詳細檢查清單,可將遷移風險降至最低。雖技術棧老舊,但專案管理方法論永不過時。

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