Oracle RMAN備份以及壓縮原理分析
RMAN備份原理:
當RMAN 客戶端連線到目標資料庫後,執行備份命令時, RMAN 會開啟相應數量的通道進行工作,每一個通道在目標資料庫都有一個相對應的服務程式, RMAN 會首先呼叫 DBMS_RCVMAN 軟體包進而讀取控制檔案,確定資料檔案的存放位置等一些資訊,獲取該資訊後, RMAN 將呼叫 DBMS_BACKUP_RESTORE 軟體包對資料檔案進行讀取備份。讀取過程就是 RMAN 基於備份的演算法規則來編譯 出需要 備份的檔案列表。RMAN 執行備份操作時,會請求 Oracle 的共享記憶體段來建立 自己備份緩衝區,與通道相對應的服務程式會去掃描資料檔案中的資料塊,並且將需要備份的資料塊讀入到輸入緩衝區中,當輸入緩衝區被填滿時,會被轉移到輸出緩衝區中,在轉移的過程中,也會對資料塊進行檢測,檢測是否有損壞的資料塊,當輸出緩衝區被填滿時,就會形成備份片,與通道相對應的服務程式最終會將其寫入到指定備份的位置。
RMAN壓縮方式:
RMAN的壓縮分為三種,
第一種:
10.1版本 RMAN的壓縮方式為空值壓縮(null compression),當掃描資料塊進行備份時,可以進行空值壓縮,對塊頭為空的塊,在從輸入緩衝區轉移到輸出緩衝區時將其過濾掉,這種空值壓縮方式呢,不會去備份已分配但未被格式化的塊。
第二種:
在10.2版本RMAN的壓縮方式又出現一種未使用塊壓縮(unused block compression),這種壓縮方式是過濾掉不包含資料的資料塊,就是該資料塊已經被使用過(被格式化過),但是不包含資料。
只有在滿足以下條件的時候,Unused Block Compression會起作用:
1.初始化引數COMPATIBLE=10.2或者更新的版本
2.資料檔案是本地管理模式
3.完全備份或0級備份
4. 備份的指定位置在磁碟上
第三種:
BINARY COMPRESSION是在使用關鍵子"AS COMPRESSED" 時候才會起作用的二進位制壓縮方式。 rman 能夠使用二進位制壓縮演算法進行備份,這個二進位制的壓縮演算法能夠大大的減少備份集所需要的磁碟空間,通常情況下壓縮比會達到2-4倍
使用這種壓縮方式的命令如下:
rman> backup as compressed backupset database;
1. 啟用壓縮將消耗更多的CPU資源。
2. 啟用壓縮備份耗時略有增加。
3.節省空間。
4.當使用壓縮後的備份進行恢復時,恢復時間會變長,可以理解為還需要一個膨脹的過程。
就相當於使用備份集的恢復時間比使用映象副本的恢復時間長。
總結RMAN過濾塊的過程:
與通道相對應的服務程式會掃高水位線以下的所有資料塊 然後在輸入緩衝區到輸出緩衝區的過程中進行過濾,
過濾的塊為已分配但未被格式化的塊以及曾經使用過,但是現在為空的塊(塊中內容被delete掉)。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69975956/viewspace-2697659/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 不同版本下的rman壓縮備份
- RMAN說,我能備份(13)--RMAN中的備份壓縮和加密加密
- ORACLE備份中的壓縮Oracle
- Rman增量壓縮備份來解決備份空間不足
- 11g 資料庫rman壓縮備份壓縮率測試資料庫
- Backup And Recovery User's Guide-RMAN備份概念-備份集塊壓縮-未使用塊壓縮GUIIDE
- 【RMAN】使用RMAN的 Compressed Backupsets備份壓縮技術
- [Rman]使用RMAN的Compressed Backupsets備份壓縮技術
- oracle聯機熱備份的原理,及rman增量備份原理Oracle
- Oracle聯機熱備份的原理及rman增量備份原理Oracle
- RMAN備份原理
- [20171031]rman備份壓縮模式.txt模式
- RMAN關於並行機制的壓縮備份並行
- Backup And Recovery User's Guide-RMAN備份概念-備份集-備份集塊壓縮GUIIDE
- oracle聯機熱備份的原理及rman增量備份原理(zt)Oracle
- Oracle熱備份原理分析Oracle
- RMAN的備份原理
- Backup And Recovery User's Guide-備份資料庫-RMAN備份概覽-進行壓縮備份GUIIDE資料庫
- RMAN備份恢復原理
- Backup And Recovery User's Guide-RMAN備份概念-備份集二進位制壓縮GUIIDE
- oracle之rman備份Oracle
- Oracle RMAN 增量備份Oracle
- oracle rman備份命令Oracle
- 【轉】Oracle rman備份Oracle
- Linux備份與壓縮命令Linux
- Oracle Rman Catalog的建立方法和備份原理Oracle
- Oracle 11g RMAN備份-增量備份Oracle
- RAC模式下的備份策略以及RMAN備份指令碼模式指令碼
- Oracle RMAN備份實戰Oracle
- Oracle OCP(60):RMAN 備份Oracle
- oracle RMAN備份指令碼Oracle指令碼
- oracle 壓縮備份與普通備份從空間,時間,CPU效能的比較Oracle
- Oracle RMAN 映像備份(Image copies)基本原理與方案Oracle
- Oracle 11g RMAN備份-備份標籤Oracle
- RAC模式下的備份策略以及RMAN備份指令碼(轉)模式指令碼
- RAC模式下的備份策略以及RMAN備份指令碼(ZF)模式指令碼
- [Oracle] rman備份指令碼(2)Oracle指令碼
- ORACLE RMAN備份及還原Oracle