RMAN備份原理
RMAN備份原理
在之前,看了使用者管理的備份恢復管理,通過以SCN為線索貫穿整個過程,來熟悉了備份原理。
RMAN的備份過程和使用者備份恢復管理有很大的區別,很多朋友了都沒有理清楚原理
下面的是我的理解:
RMAN備份資料塊的工作原理:
原理:RMAN基於備份演算法規則來編譯要備份的資料檔案列表。基於通道數和同時備份的資料檔案數,RMAN在ORACEL共享記憶體段中
建立一些記憶體緩衝區一般是在PGA中不過有時候記憶體緩衝區會被推入SGA。通道服務程式隨後就開始讀取資料檔案,並在RMAN緩衝取
中填充這些資料塊。一個緩衝區被填滿時,輸入緩衝區的資料就會推出到輸出緩衝區。資料檔案中的資料塊都會都會發生這種
memery—to—monery write 的過程,如果資料塊符合備份的標準,並且memery—to—monery write操作沒有檢查到
資料corruption則該資料塊會被儲存到輸出資料緩衝區中,直到輸出緩衝區被填滿。一但輸出緩衝區被填滿,輸出緩衝區的內容就會被
推到備份位置(磁碟或者磁帶)
RMAN備份資料庫過程:
RMAN發出備份全庫命令後,RMAN生成到目標資料庫的bequeath連線,也就是說會檢查ORACLA_SID變數中的例項名,並在該在實
例上產生一個伺服器程式,然後作為sysdba登陸,然後會產生一個作為備份的通道,(在PGA或者是在SGA分配儲存)。隨後RMAN呼叫
SYS.DBMS_RCVMAN請求資料庫結構資訊,包括控制檔案的資訊(當前序列號,建立時間……)由於指定了備份全庫,所以RMAN會請求
資料庫中資料檔案資訊,並判斷是否存在offline資料檔案(包括所在的位置和工作方式)。
RMAN開始備份,為了保持資料一致性RMAN必須構建控制檔案快照,接下來RMAN呼叫DBMS _BACKUP_RESTORE資料包,該呼叫
可以建立備份片。RMAN擁有檔案列表,所以它為資料檔案讀取操作分配記憶體緩衝區,分配緩衝區後RMAN初始化備份片。一旦初始化了備份片,
RMAN會判斷是否使用了伺服器引數檔案,如果使用了則會做為備份的一部分,還要備份控制檔案,之後才開始備份資料檔案,並將其推至記憶體。
為了實現這一功能,通道程式在磁碟上執行預讀取操作,並且將多個資料檔案讀入記憶體中,RMAN會判斷資料塊頭資訊是否仍然為零,如果資料塊
沒有被使用過,就不會發生到輸出緩衝區的寫操作,同時會丟棄這個資料塊(這就RMAN為什麼會只備份使用過的資料的原因,也是它的優點)
RMAN還會執行檢查資料塊有沒有corruption操作。當檢查通過了就被寫入到輸出緩衝區。一旦輸出緩衝區填滿了,就被推至備份檔案位置。
在備份資料塊的時候,RMAN影子程式會得到備份狀態資訊。並將它傳給V$session_longops檢視。查詢它能得到資訊。
當資料檔案的所有資料塊都被讀入輸入緩衝區並確定了狀態之後RMAN就會通過將這個資料檔案寫入備份片來結束該檔案的備份操作。所有
資料檔案寫入備份片之後,RMAN生成最後一個對SYS DBMS BACKUP RESTORE 資料包的呼叫,該呼叫在控制檔案中寫入備份資訊(包括
備份片名,啟動備份操作時的檢查點的SCN和完成備份的時間)
至此完成備份!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24558279/viewspace-746166/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- RMAN的備份原理
- RMAN備份恢復原理
- oracle聯機熱備份的原理,及rman增量備份原理Oracle
- Oracle聯機熱備份的原理及rman增量備份原理Oracle
- oracle聯機熱備份的原理及rman增量備份原理(zt)Oracle
- Oracle RMAN備份以及壓縮原理分析Oracle
- Backup And Recovery User's Guide-備份RMAN備份-使用RMAN備份備份集GUIIDE
- RMAN說,我能備份(9)--RMAN增量備份與備份保留策略
- 【RMAN】RMAN備份至ASMASM
- RMAN說,我能備份(14)--實戰RMAN備份
- rman 備份策略
- Backup And Recovery User's Guide-備份RMAN備份-用RMAN備份映象拷貝備份GUIIDE
- RMAN說,我能備份(3)--RMAN全庫備份和表空間備份
- 【RMAN】RMAN的備份保留策略
- rman備份和增量備份指令碼指令碼
- Oracle Rman Catalog的建立方法和備份原理Oracle
- RMAN備份恢復典型案例——RMAN備份&系統變慢
- RMAN說,我能備份(5)--RMAN備份歸檔檔案
- Backup And Recovery User's Guide-RMAN備份概念-RMAN備份的多個拷貝-備份的備份GUIIDE
- rman 備份指令碼指令碼
- rman備份型別型別
- RMAN 備份詳解
- RMAN備份詳解
- rman備份學習
- oracle之rman備份Oracle
- rman備份筆記筆記
- RMAN的備份加密加密
- rman 0.1.2 備份 script
- Oracle RMAN 增量備份Oracle
- oracle rman備份命令Oracle
- 常用RMAN 備份命令
- rman備份指令碼指令碼
- rman 備份 全庫
- 【轉】Oracle rman備份Oracle
- -- RMAN備份詳解
- RMAN 備份策略 scripts
- rman備份設定
- exp備份和rman備份的區別