也稱數據庫雙活、數據庫複製,即在本地或異地部署一個與生產庫完全相同的災備數據庫,當生產庫由於各種原因(錯誤操作、系統軟件錯誤、病毒、硬件故障、斷電、火災、地震等)發生故障時,災備數據庫可以立刻接管原有應用,對外正常提供服務。進行數據庫容災需要考慮以下問題:
1 本地容災還是異地容災,異地容災的網絡帶寬及穩定性。
2 災備數據庫是否需要在線查詢,是否需要效驗比對某些核心數據是否與生產庫一致。
3 RTO(恢復時間目標,指生產庫發生故障到災備庫投入運行期望的時間)、RPO(數據恢復點目標,指生產系統所能容忍的數據丟失量)。
4 備份模式選擇,單向備份模式(active/standby)還是雙向互備模式。其中雙向互備模式又分爲半雙工和全雙工,半雙工在任一時間點依然是單向模式(active/standby),只有一個數據庫接受業務請求,當主庫故障時允許主備自動切換。全雙工模式(active /active),用於雙業務中心異地互備,兩個數據庫同時接受業務請求。對於全雙工模式需要考慮數據是否存在主鍵衝突。
5 部署及維護成本,災備庫是否支持異構(不同操作系統、不同數據庫版本)、是否需要在主備庫安裝代理程序或在數據庫額外創建對象、是否需要調整表結構等。應用系統升級是否需要重新配置備份過程,是否需要人工干預等。
靈蜂數據庫複製軟件Beedup提供數據庫(Oracle/SQL Server/DB2/MySQL/PostgreSQL)容災功能,具備以下特點:
1 Beedup採用TCP連接主從數據庫,支持本地或異地容災。軟件讀取解析主庫歸檔或在線日誌,還原其中的DDL及DML操作在備庫執行,通過將軟件部署到主庫所屬網絡,可以在備份時有效降低網絡負載。軟件提供斷點機制增量讀取解析日誌,可以忍受苛刻的網絡條件。
2 Beedup採用SQL接口向從庫寫入DML及DDL,從庫實時在線可用。另外軟件提供主從表的差異比對功能,可以隨時效驗主從數據一致性。
3 Beedup採用事務單元複製主庫變化到從庫,主庫事務提交後,軟件立即讀取解析事務並複製變化到從庫,整個過程秒級完成。當主庫發生故障時,可以直接修改從庫IP爲主庫IP接管其上業務。
4 Beedup支持active/standby和active /active備份模式,對於active /active模式的自增主鍵衝突,無需調整業務系統,Beedup提供自增值到目標庫的重新計算並更新相關依賴信息的功能。
5 Beedup採用JDBC讀寫主備數據庫,對數據庫運行平臺及版本無要求,當生產庫採用高性能設備時,備份庫可以選擇普通商用配置。軟件部署靈活,既可部署於主服務器,也可部署於備份服務器,或者部署到可以TCP連通主備服務器的其它任意機器。軟件對主庫不需要任何寫入操作,通過讀取解析主庫歸檔或在線日誌複製事務到備份庫,對於表結構、視圖、存儲過程、觸發器等DDL操作均可自動備份,無需人工干預。