Oracle DataGuard介紹
?一、?DataGuard的基本原理
當某次事務處理對生產數據庫中的數據作出更改時, Oracle數據庫將在一個聯機重做日志文件里記錄此次更改。在 DataGuard中能夠配置寫日志的這個過程,除了把日志記錄到本地的聯機日志文件和歸檔日志文件里,還能夠通過網絡,把日志信息發送到遠程的從 (standby) 數據庫server上。這個備用日志文件寫入過程能夠是實時、同步的,以實現零數據丟失(最大保護模式 maximum protection );也能夠是異步的,以降低對網絡帶寬的壓力(最大性能模式 maximum performance );或者是異步和同步能夠自己主動切換的模式(最大可用模式 maximum availability )。當備份數據庫接收到日志信息后, Data Guard能夠自己主動利用日志信息實現數據與主數據庫的實時同步。當主數據庫打開并處于活動狀態時,備用數據庫能夠運行 恢復 操作,假設主數據庫出現了故障,備用數據庫即能夠被激活并接管生產數據庫的工作 。
?
二、? 3種模式的特點
保護模式 |
在出現災難時數據丟失的風險 |
重做傳輸機制 |
是否須要 standby redo log |
磁盤寫入 |
最大保護 |
零數據丟失 |
LGWR SYNC |
YES |
AFFIRM |
最高可用性 |
零數據丟失 |
LGWR SYNC |
YES |
AFFIRM |
最高性能 |
最小數據丟失 - 通常為幾秒 |
LGWR ASYNC 或 ARCH |
可沒有 但 推薦有 |
AFFIRM 或 NOAFFIRM |
AFFIRM:表示主數據庫上的 REDO LOG僅僅有被寫入到從數據庫的standby log才算有效 。
?
1?最大保護模式
最大保護模式為主數據庫提供了最高水平的數據保護,從而確保了一個全面的零數據丟失災難恢復解決方式。當在最大保護模式下執行時,重做記錄由日志寫入器 (LGWR) 進程從主數據庫同步地傳輸到備用數據庫,而且直到確認事務數據在至少一個備用server上的磁盤上可用時,才在主數據庫上提交事務。強烈建議,這樣的模式應至少配置兩個備用數據庫。當最后參與的備用數據庫不可用時,主數據庫上的處理將停止。這就確保了當主數據庫與其全部備用數據庫失去聯系時,不會丟失事務。
因為重做傳輸的同步特性,這樣的最大保護模式可能潛在地影響主數據庫響應時間。能夠通過配置一個低延遲網絡,并為它分配足夠應付高峰事務負載的帶寬來將這樣的影響減到最小。須要這樣的最大保護模式的企業有股票交易所、貨幣交易所、金融機構等。
?
2?最高可用性模式
最高可用性模式擁有僅次于最高水平的主數據庫數據可用性。如同最大保護模式一樣,重做數據由 LGWR 從主數據庫同步地傳輸到備用數據庫,直到確認事務數據在備用server的磁盤上可用時,事務才在主數據庫上完畢。只是,在這樣的模式下(與最大保護模式不同),假設最后參與的備用數據庫變為不可用 — 比如因為網絡連接問題,處理將在主數據庫上繼續進行(類似于MySQL-5.5中的半同步復制)。備用數據庫與主數據庫相比,可能臨時落在后面,但當它再次變為可用時,備用數據庫將使用主數據庫上累積的歸檔日志自己主動同步,而不會丟失數據。
因為同步重做傳輸,這樣的保護模式可潛在地影響響應時間和吞吐量。能夠通過配置一個低延遲網絡,并為它分配足夠應付高峰事務負載的帶寬來將這樣的影響減到最小。
最高可用性模式適用于想要確保獲得零數據丟失保護,但不想讓生產數據庫受網絡 /備用server故障影響的企業。假設又一個故障隨后影響了生產數據庫,然后最初的網絡 /備用server故障得到解決,那么這些企業將接受數據丟失的可能性。
?
3?最高性能模式
最高性能模式是默認的保護模式。它與最高可用性模式相比,提供了略微少一些的主數據庫數據保護,但提供了更高的性能。在這樣的模式下,當主數據庫處理事務時,重做數據由 LGWR 進程異步傳輸到備用數據庫上。另外,也能夠將主數據庫上的歸檔器進程 (ARCH) 配置為在這樣的模式下傳輸重做數據。在不論什么情況下,均先完畢主數據庫上的寫操作,主數據庫的提交操作不等待備用數據庫確認接收(類似于MySQL中的異步復制)。假設隨意備用目標數據庫變為不可用,則處理將在主數據庫上繼續進行,這對性能僅僅有非常小的影響或沒有影響。
在主數據庫出現問題的情況下,尚未被發送到備用數據庫的重做數據會丟失。可是,假設網絡有足夠的吞吐量來跟上重做流量高峰,而且使用了 LGWR 進程來將重做流量傳輸到備用server,則丟失的事務將很少或者為零。
?
三、? Oracle Dataguard三種保護模式特點
1?最大保護模式
?
1).這樣的模式提供了最高級別的數據保護能力
2).重做日志在至少一個物理從庫 數據庫 后,主庫的事務才可以提交
3).主庫找不到合適的從庫寫入時,主庫會自己主動關閉,防止無保護的數據出現
4).長處:該模式能夠保證從庫沒有數據丟失
5).缺點:主庫的自己主動關閉會影響到主庫的可用性,同一時候須要從庫恢復后才干提交,對網絡等客觀條件要求很的高,主庫的性能會受到很大的影響。
?
2?最大可用性模式
?
1).這樣的模式提供了僅次于 “最大保護模式”的數據保護能力
2).重做日志在至少一個物理從庫數據庫后,主庫的事務才可以提交
3).主庫找不到合適的從庫寫入時,主庫不會關閉,而是暫時減少到 “最大性能模式”模式,直到問題得到處理
4).長處:該模式能夠在沒有問題出現的情況下保證從庫沒有數據丟失,是一種折中的方法
5).缺點:在正常執行的過程中缺點是主庫的性能收到諸多因素的影響
?
3?最大性能模式
?
1).默認模式,提供主數據庫的最高可用性
2).保證主庫執行過程中不受從庫的影響,主庫事務正常提交,不因從庫的不論什么問題影響到主庫的執行
3 ).長處:避免了從庫對主數據庫的性能和可用性影響
4 ).缺點:假設與主庫提交的事務相關的恢復數據沒有發送到從庫,這些事務數據將被丟失,不能保證數據無損失
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
