| 模式 | 日誌記錄 | 支援備份類型 | 時間點還原 | 適用場景 |
|---|---|---|---|---|
| SIMPLE | 最小化 (Checkpoint 截斷) | 完整、差異、檔案 | **不支援** | 測試/開發、可容忍資料遺失 |
| BULK_LOGGED | 大量操作最小化 | 完整、差異、記錄、檔案 | 部分支援 (含最小化操作則不可) | 大量匯入/重建索引窗口期 |
| FULL | 完整記錄 | **所有類型** | **支援** (近乎零資料遺失) | **生產環境標準** |
新資料庫繼承 `model` 設定 (預設 FULL)。修改無需重啟:`ALTER DATABASE [DB] SET RECOVERY FULL;`
| 類型 | 內容 | 依賴基準 | 復原模式需求 |
|---|---|---|---|
| 完整資料庫備份 | 所有資料/物件 + 足夠日誌達一致性 | 無 (基準點) | 所有 |
| 差異資料庫備份 | 自上次完整備份後變更的範圍 | 最近一次完整備份 | 所有 |
| 交易記錄備份 | 自上次記錄備份後的日誌記錄 | 上次記錄備份 (首次需完整備份) | FULL / BULK_LOGGED |
| 檔案/檔案組備份 | 指定檔案/組的資料 | 完整備份 (差異檔案備份依賴完整檔案備份) | 所有 (唯讀檔案組 SIMPLE 也可) |
| 部分備份 | 所有讀寫檔案組 + 指定唯讀組 | 同上 | 所有 |
FULL (Day 1 00:00)
└─ DIFF (Day 1 12:00)
└─ LOG (06:00) → LOG (12:00) → LOG (18:00)
└─ DIFF (Day 2 00:00)
└─ LOG ...
還原順序:最新 FULL → 最新 DIFF → 所有後續 LOG (依序) → STOPAT 時間點
-- 完整備份:每日 02:00 (壓縮、校驗和、統計 5%) -- 差異備份:每 6 小時 (08:00, 14:00, 20:00) -- 記錄備份:每 15 分鐘 (全天候) -- 驗證:每週 RESTORE VERIFYONLY + 季度演練完整還原 -- 異地複製:Azure Blob GRS / 異地次要伺服器
備份不是目的,**可驗證、符合 RPO/RTO 的還原能力**才是核心。從復原模式開始規劃,建立分層備份策略,並持續演練還原,是 DBA 的第一要務。