Oracle Data Guard 介紹

pxbibm發表於2014-04-17
Oracle Data Guard 確保企業資料的高可用性、資料保護以及災難恢復。Data Guard 提供
了一套全面的服務來建立、維護、管理和監控一個或多個備資料庫,使得生產資料
庫從災難和資料損壞中得以倖存。Data Guard 維護這些備資料庫作為生產資料庫的事務一致
性複製。然後,如果生產資料庫因為計劃的或計劃外的中斷而變得不可用。Data Guard 能切
換任何備資料為生產角色,從而最小化中斷引起的當機時間。Data Guard 能與傳統的備份、
恢復和cluster 技術一起使用,以提供高階別的資料保護和資料可用性。
使用 Data Guard,管理員能透過將資源密集的備份和報表操作轉移到備系統上,來提高
生產資料庫的效能。
Data Guard在11G中有了很大的改進,最典型的兩個新特性就是Active Data Guard和Advanced Compression引入。
Active Data Guard技術:oracle 10g的Physical Standby節點在進行Redo Apply過程中,是不能夠開啟資料庫讀取資料的。
如果需要進行讀取,則必須先將其終止Apply過程,才能支援讀取。Active Data Guard特性就是支援Standby節點在Apply的同時支援只讀資料庫。
Advanced Compression高階壓縮技術:遠端災備使用Data Guard的一種重要瓶頸就是傳輸頻寬限制。
所有的Redo Log資料都要透過Primary與Standby之間的連線都是透過Oracle Net 連進行傳遞的,Redo Log隨著業務的增加而加大。
Advanced Compression可以將Redo Log進行一定程度壓縮傳遞。
1.1 Data Guard 配置
Data Guard 配置包含一個生產資料庫和一個或更多備資料庫。在Data Guard 配置中的
資料庫可以透過Oracle Net 連線並可以分佈在不同地理位置。資料庫所處位置是沒有限制
的,只要它們能互相通訊。
你能使用 SQL 命令列工具或Data Guard broker 工具來管理主和備資料庫,包括命令列
工具(DGMGRL)和在Oracle 企業管理器中整合的圖形化使用者工具。
1.1.1 主資料庫
Data Guard 配置包含一個生產資料庫,也稱為主資料庫,作為主角。這是大多數你的應
用訪問的資料庫。
主資料庫能是單例項 Oracle 資料庫或Oracle Real Application Clusters 資料庫。
1.1.2 備資料庫
備資料庫是主資料庫的一個事務一致性複製。使用主資料庫的備份複製,你能建立最
多九個備資料庫,並將其合併到一個Data Guard 配置中。一旦建立,Data Guard 自動維護每
個備資料庫,從主資料庫傳送重做資料然後應用重做到備資料庫。
類似於主資料庫,備資料庫也可以是單例項 Oracle 資料庫或Oracle Real Application
Clusters 資料庫。
備資料庫可以是物理備資料庫或邏輯備資料庫:
1.物理備資料庫
透過基於塊對塊的與主資料庫同樣的磁碟資料庫結構,提供主資料庫的完全一致
的物理複製。資料庫方案,包括索引都是相同的。物理備資料庫與主資料庫保持同步,
透過重做應用,恢復從主資料庫收到的重做資料並將重做應用到物理備資料庫。
除了災難恢復,物理備資料庫只能在有限的範圍內用於業務。
2.邏輯備資料庫
包含與生產資料庫同樣的邏輯資訊,儘管資料的物理組織和結構可以是不同的。
邏輯備資料庫透過SQL 應用與主資料庫保持同步,其將從主資料庫收到的重做中的數
據轉換成SQL 語句,然後在備資料庫上執行SQL 語句。
邏輯備資料庫能用於災難恢復需求以外的業務目的。這允許使用者在任何時間訪問
邏輯備資料庫,進行查詢和報表。同時,使用邏輯備資料庫,你能升級Oracle 資料庫
軟體和補丁集而幾乎沒有當機時間。這樣,邏輯備資料庫能併發用於資料保護、報表、
和資料庫升級。
1.1.3 配置舉例
圖 1-1 顯示典型的Data Guard 配置,包含一個主資料庫,傳送重做資料到一個備資料
庫。備資料庫異地於主資料庫以用於災難恢復和備份操作。你能配置備資料庫與主資料庫在
同一位置。然而,為了災難恢復的目的,Oracle 建議你配置備資料庫在異地位置。
圖 1-1 顯示典型的Data Guard 配置,在其中重做被應用到備資料庫的備重做日誌檔案
中。
Oracle Data Guard 介紹
1.2 Data Guard 服務
下面解釋了 Data Guard 如何管理重做資料的傳送、重做資料的應用、以及更改資料庫角色:
1.重做傳輸服務
控制從生產資料自動傳輸重做資料到一個或更多歸檔的目的地。
2. 日誌應用服務
在備資料庫上應用重做資料,與主資料庫維持事務同步。重做資料能從歸檔重做日
志檔案,或者允許實時應用,當備重做日誌寫滿時直接從其中應用,而不需要將
重做資料首先歸檔到備資料庫。
3.角色轉換
使用切換或故障轉移操作時,從備資料庫更改資料的角色到主資料庫,或者從主資料
庫到備資料庫。
1.2.1 重做傳輸服務
重做傳輸服務控制重做資料從生產資料庫自動傳輸到一個或更多歸檔的目的地。重做傳
輸服務執行下述任務:
1.從主資料庫傳送重做資料到配置的備資料庫系統中
2.管理解決歸檔重做日誌檔案由於網路故障中斷的過程
3.強制資料庫保護模式
4.自動探測在備系統上丟失或損壞的歸檔重做日誌檔案,並且自動從主資料庫或其
它備資料庫檢索替代的歸檔重做日誌檔案
1.2.2 日誌應用服務
從主資料庫傳送的重做資料寫到備系統上的備重做日誌檔案中,如果配置了,然後再
歸檔到歸檔重做日誌檔案。日誌應用服務自動應用備資料庫上的重做資料,以維持與主資料
庫的一致性。其同時也允許對資料的只讀訪問。
物理與邏輯備資料庫的主要區別是日誌應用服務應用歸檔重做資料的方式:
1.對於物理備資料庫,Data Guard 使用重做應用技術,使用Oracle 資料庫的標準恢
復技術在備資料庫上應用重做資料,如圖1-2 所示。
Oracle Data Guard 介紹
2.對於邏輯備資料庫,Data Guard 使用SQL 應用技術,首先將收到的重做資料轉換
為SQL 語句,然後在邏輯備資料庫執行生成的SQL 語句,如圖1-3 所示。
Oracle Data Guard 介紹
1.2.3 角色轉換
Oracle 資料庫操作在兩種角色之一:主或備。使用Data Guard,你能使用切換或故障
轉移操作更改資料庫的角色。
切換是在主資料庫與其備資料庫之一進行的角色反轉。切換確保不丟失資料。這是對於
主系統計劃維護的典型操作。在切換期間,主資料庫轉換到備角色,備資料庫轉換到主角色。
轉換髮生不需要重建任何資料庫。
故障轉移是當主資料庫不可用時。故障轉移只有在主資料庫的災難故障的情況下執行,
並且故障轉移導致備資料庫轉換到主角色。資料庫管理員能配置Data Guard 以確保不丟失
資料。
在本文件中描述的角色轉換是使用 SQL 語句手工執行。你也能使用Oracle Data Guard
broker 來簡化角色轉換,並使用Oracle 企業管理器或DGMGRL 命令列介面來自動化故障
轉移。
1.3 Data Guard Broker
Data Guard Broker 是一個分散式的管理構架,用於自動化Data Guard 配置的建立、
維護、和監控。你能使用Oracle Enterprise Manager 圖形化使用者介面(GUI)或Data Guard
命令列介面(DGMGRL)來:
1. 建立和允許 Data Guard 配置,包括設定重做傳輸服務和日誌應用服務
2. 從配置中的任何系統管理整個 Data Guard 配置
3. 管理和監控包含 Real Application Clusters 主或備資料庫的Data Guard 配置
4. 透過允許你使用 Oracle 企業管理器中的單次點選或在DGMGRL 命令列介面中的
單條命令簡化切換和故障轉移
5. 當主資料庫變得不可用時允許快速啟動故障轉移來自動轉移故障。當允許快速啟
動故障轉移時,由Data Guard broker 決定是否需要故障轉移,並自動啟動故障轉
移到指定的目標備資料庫,不需要DBA 的介入並且不丟失資料。
另外,Oracle 企業管理器自動化及簡化了:
1. 從主資料庫的備份複製中建立物理或邏輯備資料庫
2. 新增新的或現有的備資料庫到現有的 Data Guard 配置
3. 監控日誌應用速度,捕獲診斷資訊,以及使用集中化的監控、測試、和效能工具快
速發現問題。
1.3.1 使用Oracle 企業管理器
Oracle 企業管理器,也稱為企業管理器,提供了一個基於web 的介面,用於檢視、監
控、和管理Data Guard 配置中的主和備資料庫。企業管理器的易於使用的介面結合了broker
的集中管理和Data Guard 配置的監控,增強了對於高可用性、站點保護、和企業的資料保
護的Data Guard 解決方案。
從企業管理器中央控制檯,所有的管理操作能在本地或異地執行。你能檢視 Oracle 數
據庫的主頁,包括主和備資料庫以及例項,建立或新增現有的備資料庫,氣筒和停止例項,
監控例項效能,檢視事件,排程作業,以及執行備份和恢復操作。檢視Oracle Data Guard
Broker 和Oracle 企業管理器聯機幫助系統。
圖 1-4 顯示了在企業管理器中的Data Guard 管理概要頁面。
圖 1-4 Oracle 企業管理器中的Data Guard 概要頁面
Oracle Data Guard 介紹
1.3.2 使用Data Guard 命令列介面
Data Guard 命令列介面(DGMGRL)允許你從DGMGRL 提示符或指令碼中控制和監控
Data Guard 配置。你能使用DGMGRL 執行大多數所需的行動來管理和監控配置中的資料
庫。檢視Oracle Data Guard Broker 以獲得完整的DGMGRL 參考資訊和舉例。
1.4 Data Guard 保護模式
在一些情況下,業務不允許丟失資料。在另外一些情況下,資料庫的可用性比丟失資料
更為重要。一些應用需要最強的資料庫效能並且能容忍丟失少量的資料。下面的描述概述了
三種不同的資料保護模式。
1.最大保護
這種保護模式確保如果主資料庫故障不會發生資料丟失。要提供這種級別的
保護,恢復每個事務所需的重做資料必須在事務提交之前同時寫到本地聯機重做日誌和至少
一個備資料庫上的備重做日誌。要確保不發生資料丟失,如果故障導致主資料庫無法寫重做
流到至少一個事務一致性備資料庫的備重做日誌時,主資料庫會關閉。
2.最大可用性
這種保護模式提供了可能的最高階別的資料保護,而不用與主資料庫的可
用性相折衷。與最大保護模式相同,在恢復事務所需的重做寫到本地聯機重做日誌和至少一
個事務一致性備資料庫上的備重做日誌之前,事務將不會提交。與最大保護模式不同的是,
如果故障導致主資料庫無法寫重做流到異地備重做日誌時,主資料庫不會關閉。替代地,主
資料庫以最大效能模式執行直到故障消除,並且解決所有重做日誌檔案中的中斷。當所有中
斷解決之後,主資料庫自動繼續以最大可用性模式執行。
這種模式確保如果主資料庫故障,但是隻有當第二次故障沒有阻止完整的重做資料集從
主資料庫傳送到至少一個備資料庫時,不發生資料丟失。
3.最大效能
這種保護模式(預設)提供了可能的最高階別的資料保護,而不影響主資料
庫的效能。這是透過允許事務在恢復該事務所需重做資料在寫到本地聯機重做日誌後立即提
交而實現的。主資料庫的重做資料流也寫到至少一個備資料庫,但是那個重做流相對於建立
重做資料的事務是非同步寫的。
當所用的網路連線有足夠的頻寬,這種模式提供了近似於最大可用性模式的資料保護級
別,並且對主資料庫效能的影響最小。
最大保護和最大可用性模式需要備重做日誌檔案配置在配置中的至少一個備資料庫上。
所有三種保護模式需要在LOG_ARCHIVE_DEST_n 初始化引數上指定特定的日誌傳輸屬性
以傳送重做資料到至少一個備資料庫。檢視5.6 節以獲得資料保護模式的完整資訊。
1.5 Data Guard 和互補技術
Oracle 資料庫提供了幾種獨特的技術互補Data Guard 確保業務關鍵系統以比使用其中
任何單種技術更高階別的可用性和資料保護執行。下面的列表總結了一些Oracle 高可用性
技術:
1.Oracle Real Application Clusters(RAC)
RAC 允許多個獨立伺服器透過內部連線共享訪問一個Oracle 資料庫,提供了高可
用性、可擴充套件性、和在故障時的冗餘性。RAC 和Data Guard 一起提供了系統級別、站
點級別、和資料級別的保護,導致了高階別的可用性和災難恢復而不丟失資料:
2.RAC 透過提供從故障的快速和自動恢復來處理系統故障,如節點故障和例項
崩潰。其也提供了對應用的增加的可擴充套件性。
3.Data Guard 透過保持不共享磁碟的主和備資料庫的事務一致性來處理站點故
障,允許從站點災難和資料損壞中恢復。
可能有許多不同的使用 RAC 和Data Guard 的架構,依賴於本地和異地站點的使
用以及節點和邏輯與物理備資料庫的結合的使用。檢視附錄D,“Data Guard 和Real
Application Clusters”和Oracle 資料庫高可用性概述以獲得RAC 和Data Guard 的整
合。
4. Flashback 資料庫
Flashback 資料庫特性提供了從邏輯資料損壞和使用者錯誤中的快速恢復。透過允許
你閃回時間點,可能已經被錯誤更改或刪除的前面版本的業務資訊能被再次訪問。這種
特性:
   消除了還原備份並前滾更改到錯誤或損壞出現的時間的需求。替代地,
Flashback 資料庫能回滾Oracle 資料庫到一個前面的時間點,而不用還原資料文
件。
   提供了延遲重做的應用的選項,以保護使用者錯誤或邏輯損壞。因此,備資料庫
能近地與主資料庫同步,從而減少了故障轉移和切換的時間。
   避免在故障轉移後完全重建原始主資料庫。故障的主資料庫能閃回到故障轉移
前的時間點,並轉換成新的主資料庫的備資料庫。
檢視 Oracle 資料庫備份和恢復高階使用者指南以獲得Flashback 資料庫的資訊,以
及6.2.2 節以獲得延遲重做資料的應用的資訊。
5. 恢復管理器(RMAN)
RMAN 是一種Oracle 工具,簡化了備份、還原、和恢復資料庫檔案。與Data Guard
相同,RMAN 是一種Oracle 資料庫的特性,不需要額外的安裝。Data Guard 能很好地
與RMAN 整合,允許你:
  使用恢復管理器 DUPILCATE 命令來從你的主資料庫的備份中建立備資料庫。
  用物理備資料庫取代生產資料庫來進行備份,減少生產資料庫的負載並允許有
效地使用備站點的系統資源。此外,備份能在物理備資料庫在應用重做時進行。
  透過自動刪除用於在執行備份後輸入的歸檔重做日誌檔案,幫助管理歸檔重做
日誌檔案。
1.6 Data Guard 益處總結
Data Guard 提供了這些益處:
1 災難恢復,資料保護,和高可用性
Data Guard 提供了一個有效的、廣泛的災難恢復及高可用性解決方案。易於管理
的切換和故障轉移能力允許角色在主和備資料庫之間轉換,最小化了主資料庫在計劃
和非計劃中斷的當機時間。
2 完全的資料保護
Data Guard 能確保沒有資料丟失,即使面對無法預料的災難。備資料庫提供了對
資料損壞和使用者錯誤的保護。在主資料庫上的儲存級別的物理損壞不會蔓延到備資料
庫。類似地,導致主資料庫永久損害的邏輯損壞或使用者錯誤能被解決。最後,重做資料
在應用到備資料庫時要驗證。
3 系統資源的有效使用
由從主資料庫收到的重做資料更新的備資料庫表,能用於其它任務如備份、報表、
總結、和查詢,從而減少了主資料庫用於執行這些任務所需的工作負載,節省了寶貴的
CPU 和I/O 迴圈。在邏輯備資料庫中,使用者能在不是從主資料庫更新的方案的表上執
行常規的資料操作。邏輯備資料庫能在表被從主資料庫更新時保持開啟,並且表同時能
被只讀訪問。最後,在維護的表上能建立額外的索引和物化檢視,以獲得更好的查詢性
能並適合特定的業務需求。
4 靈活保護資料,平衡可用性與效能需求
Oracle Data Guard 提供了最大保護、最大可用性、和最大效能模式,以幫助企業
平衡資料可用性與系統效能需求。
5 自動探測和解決中斷
如果在主和一個或更多備資料庫之間的連線丟失了(例如,由於網路問題),在主
資料庫上生成的重做資料無法傳送到那些備資料庫。一旦重新建立連線,Data Guard
能自動探測丟失的歸檔重做日誌檔案(稱之為中斷),然後自動傳輸丟失的歸檔重做日
志到備資料庫。備資料庫與主資料庫同步,不需要DBA 的手工介入。
6 集中和簡單的管理
Data Guard broker 提供了一個圖形化的使用者介面和一個命令列介面來自動化管理
和操作在Data Guard 配置中的跨多個資料庫的任務。Broker 也監控在單個Data Guard
配置中的所有系統。
7 與 Oracle 資料庫整合
Data Guard 是Oracle 資料庫企業版中的一個特性,不需要單獨地安裝。
8 自動角色轉換
當允許快速啟動故障轉移時,在主站點災難的情況下,Data Guard broker 自動故
障轉移到一個同步的備站點上,不需要DBA 的介入。另外,角色轉換自動通知應用。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12798004/viewspace-1144122/,如需轉載,請註明出處,否則將追究法律責任。

相關文章