核心概念映射
| MSSQL 鏡像 | Oracle 對應 | 關鍵差異 |
| 鏡像數據庫 | 備用數據庫 | Oracle備庫是主庫**完整快照**(含實例級對象);MSSQL鏡像僅單庫,**不含代理/登錄/任務**等實例級對象 |
| 主體/鏡像服務器 | 主庫/備庫服務器 | Oracle單實例單庫;MSSQL一實例多庫 |
| 見證服務器 | Fast-Start Failover觀察者 | MSSQL高可用模式**必須**見證;Oracle Data Guard可選 |
| 事務安全 FULL | Maximum Availability模式 | 同步傳輸+自動切換 |
| 高性能模式 | Maximum Performance模式 | 異步傳輸、手動切換 |
| 高保護模式 | Maximum Protection模式 | 同步傳輸、手動切換 |
日誌傳輸與應用機制
- Oracle:Redo Log Buffer → Online Redo Log → **Archive Log** → 傳輸至備庫 → **Apply Redo**
- MSSQL:Log Buffer → **Hardening(寫盤)** → 發送Log Block → 鏡像端緩存 → **Hardening** → Apply
- MSSQL**不傳輸完整事務日誌文件**,而是流式發送已硬化的日誌塊;Oracle傳輸歸檔日誌文件
一致性機制
- Oracle:**SCN(系統變更號)**全局有序
- MSSQL:**mirroring_failover_lsn**(日誌序列號)配對
- MSSQL採用**分離事務模型**(兩端獨立事務),非分布式事務(無兩階段提交)
恢復模式對照
| MSSQL | Oracle | 說明 |
| 完整模式 | 歸檔模式 | 鏡像**必須**完整模式,簡單模式會截斷日誌破壞鏡像 |
| 簡單模式 | 非歸檔模式 | 不適用鏡像 |
| 大量記錄模式 | Direct Path/NOLOGGING | 最小化日誌操作 |
故障切換與快照
- MSSQL自動切換需**企業版+見證+同步+事務安全FULL**
- 鏡像庫處於
NORECOVERY狀態,**不可直讀**;需建**資料庫快照**(企業/開發版)供報表讀取
- Oracle Active Data Guard備庫**可直接只讀開放**,無需快照
版本限制差異
MSSQL見證服務器可用任意版本(含Express),但建快照需企業/開發版。Oracle Data Guard功能隨版本分層(EE/SE/SE2)。
學習建議
在兩台Windows機器分別裝MSSQL實例,跑AdventureWorks樣本庫鏡像全流程。對照Oracle Data Guard操作,**換視角看同一問題**,深化對複製、故障切換、一致性模型的本質理解。
- 上一篇文章: 資料庫備份九大常見情境與應對策略
- 下一篇文章: MySQL 3.23 升級 5.1 亂碼問題完整解決實錄
Copyright ©
程式碼之家 All Rights Reserved