【ASK_ORACLE】Oracle Data Guard(一)DG架構
說明
文中介紹的DG或ADG是指物理DG,若有邏輯DG的知識點會特殊指出。
DG架構介紹
介紹架構之前,先放一張官方DG架構圖:
Data Guard的工作分為三部分:日誌(redo日誌或者歸檔日誌)的傳送、接收與應用。下面詳細說明一下這三個步驟:
1. 日誌的傳送
主庫需要不停地傳送日誌(redo日誌或者歸檔日誌)到備庫,主庫透過日誌來告訴備庫做了哪些操作,使得備庫可以“複製”主庫做的一系列操作。這個傳送是由主庫的LGWR程式(11g及以上版本預設使用)或者ARCn程式(10g預設使用)來完成,但是每臺備機有且僅有隻能選擇一種程式,因此每臺備機要麼使用LGWR,要麼使用ARCn,不能夠同時用這兩個程式傳輸。並且這兩個程式的保護能力也有區別。LGWR程式是傳輸的redo日誌的,ARCn是傳輸歸檔日誌的。
(1)使用ARCn程式傳輸
當redo日誌寫滿發生日誌切換後,會產生歸檔檔案,ARCn程式就會把此時產生的新歸檔傳到備機。備機的RFS程式來接收並寫入歸檔到備機的歸檔路徑,最後透過MRP程式(邏輯DG是LSP程式)進行歸檔應用。
需要注意的是,使用ARCn程式傳輸的歸檔,不會寫入到Standby Redo Logs中,而是直接將歸檔檔案放到備機。
(2)使用LGWR程式傳輸
LGWR程式又分為SYNC(同步)和ASYNC(非同步)方式傳輸
1)使用SYNC方式
SYNC方式是主庫把redo日誌寫到本地的同時,把該redo日誌透過主機的LNSn程式也同步傳輸到備機(LNSn程式可以並行工作),再由備機的RFS程式接收redo日誌並寫入到Standby Redo Logs,最後由MGR程式應用歸檔日誌。
需要注意的是,LGWR程式必須等待redo日誌寫入本地歸檔,同時透過LNSn程式傳輸都成功,主庫的事物才能commit,缺一不可,不然就會等待兩件事全部完成。
2)使用ASYNC方式
由於使用SYNC的方式非常依賴網路,所以一旦日誌傳輸到備庫失敗,LGWR程式就會報錯。於是就可以使用ASYNC的方式來傳輸。ASYNC方式不需要等待redo日誌傳輸到備機成功,就可以把redo日誌寫入到本地,但是LGWR程式依舊會同時在寫入redo日誌到本地的同時,告訴LNSn程式,只不過LNSn是非同步的。
另外,如果使用LGWR程式進行傳輸,如果LGWR由於某些故障傳不了redo日誌,就會使用ARCn程式來代替它傳輸。
2. 日誌的接收
備庫程式RFS程式一旦接收到日誌(redo或者歸檔日誌),就會把日誌寫入到備庫的Standby Redo Logs或者歸檔日誌檔案中。
注:當主庫發生日誌切換,備庫的Standby Redo Logs也會切換,並且歸檔該日誌。
3. 日誌的應用
1)日誌實時應用(Real Time Apply)
該方式需要包含寫入到Standby Redo Logs這個操作,只要日誌被寫入Standby Redo Logs就會觸發恢復,這種方式可以減少主備庫切換時間,因為在切換過程中最耗時就是恢復日誌。
2)歸檔應用(預設恢復方式)
該方式是預設方式,會在主庫發生日誌切換時,觸發備庫的歸檔,歸檔完成後會進行恢復。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69992972/viewspace-2842613/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- DATA GUARD架構(一)架構
- 【DG】Oracle Data Guard官方直譯Oracle
- Oracle DG(Data Guard)支援異構平臺說明Oracle
- 物理DG!Oracle 10G Data Guard DemoOracle 10g
- Oracle最高可用性架構之Data Guard管理Oracle架構
- Oracle最高可用性架構之Data Guard概述Oracle架構
- 【DG】Data Guard搭建(physical standby)
- 【ASK_ORACLE】Oracle Data Guard(四)快照備庫的概念和優勢Oracle
- 【ASK_ORACLE】Oracle Data Guard(二)物理備庫的概念和優勢Oracle
- Oracle 19C Data Guard基礎運維-07 failover後閃回恢復dg架構Oracle運維AI架構
- oracle10g data guard(dg)__flashback_physical databaseOracleDatabase
- 【ASK_ORACLE】Oracle Data Guard(三)邏輯備庫的概念和優勢Oracle
- oracle data guard!!Oracle
- [Data Guard]Oracle10g Data Guard學習筆記(一)Oracle筆記
- G008-ORACLE-DG ORACLE 19C Active Data Guard DML RedirectionOracle
- 【DG】Data Guard主備庫Switchover切換
- ORACLE DATA GUARD -一般概念Oracle
- ORACLE RAC GUARD架構——RAC GUARD概念和管理Oracle架構
- 介紹ORACLE DATA GUARD——DATA GUARD概念和管理Oracle
- Oracle Data Guard配置Oracle
- 【DG】Data Guard主備庫Failove切換AI
- Oracle 12c Data Guard搭建(一)Oracle
- oracle9i(9204)dg(data guard)_ place the standby database in manual recovery modeOracleDatabase
- Oracle Data Guard Broker元件Oracle元件
- Oracle Data Guard簡介Oracle
- Oracle Data Guard 介紹Oracle
- ORACLE Data Guard--IOracle
- oracle9204(9i)_dg(data guard)__Tuning Logical Standby DatabasesOracleDatabase
- 對oracle10g data guard(dg)實行不一致性恢復Oracle
- Oracle 11g Data Guard Enabling Active Data GuardOracle
- [Data Guard]Oracle10g Data Guard學習筆記(二)Oracle筆記
- [Data Guard]Oracle10g Data Guard學習筆記(三)Oracle筆記
- Oracle Data Guard 支援的異構平臺 說明Oracle
- 與oracle10g data guard(dg)緊密關聯的相關檢視Oracle
- oracle9i(9204)data guard(dg)_logical standby_failover操作指南OracleAI
- oracle9204(9i)_dg(data guard)_archive gap_query_apply_transmitOracleHiveAPPMIT
- 1 關於 Oracle Data GuardOracle
- 2 Oracle Data Guard 安裝Oracle