高可用性架構 (Log Shipping、Replication、Database Mirroring) 只解決資料層面的容錯。故障切換至備援伺服器後,應用程式能否立即正常運作,取決於資料庫外部相依物件是否已同步部署。
| 類別 | 具體項目 | 同步策略 |
|---|---|---|
| 登入/使用者 | SQL 登入帳號 (含密碼、SID) | 用 sp_help_revlogin 腳本產生含原始 SID 的 CREATE LOGIN 指令,在備援機執行 |
| 資料庫使用者與登入對應 | 切換後執行 EXEC sp_change_users_login 'UPDATE_ONE', 'db_user', 'login' 修復孤立使用者 | |
| SQL Server Agent | 作業、排程、警示、操作員、Proxy 帳號 | 用 sp_script_job / sp_script_schedule 產生部署腳本,或 SSMS 「產生指令碼」 |
| DTS / SSIS | 套件 (.dtsx)、設定檔、連線管理員 | 檔案系統複製 + 環境變數/設定檔調整連線字串 |
| 連結伺服器 | Linked Server 定義、遠端登入對應 | sp_addlinkedserver + sp_addlinkedsrvlogin 腳本化部署 |
| CLR 組件 | ASSEMBLY、非對稱金鑰/憑證 | CREATE ASSEMBLY FROM 'path\dll' 同步部署 |
| 系統資料庫物件 | msdb 作業歷程、model 範本、master 登入/端點 | 納入備份策略,災難時一併還原 |
| 同名資料庫衝突 | 多個應用共用實例,資料庫名稱相同 | 規劃命名規範或使用具名實例隔離 |
| 外部檔案/路徑 | FILESTREAM 目錄、備份裝置、大量匯入格式化檔 | 相同磁碟路徑或共享資料夾掛載 |
| 應用程式設定 | 連線字串、功能旗標、快取設定 | 設定檔版本化、部署管道自動切換 |
sp_help_revlogin 腳本 (產生含 SID/密碼雜湊的 CREATE LOGIN)sp_change_users_login