論壇地址:http://www.itpub.net/forum.php?mod=viewthread&tid=1807635&page=1&extra=#pid21614621
RMAN 備份的本質
TARGET DATABASE中有2個包,DBMS_RCVMAN和DBMS_BACKUP_RESTORE。
備份原理:備份時RMAN客戶端也會發起一個對包DBMS_RCVMAN的調用可以讀寫控制文件,這樣才知道dbf的位置等信息。之后RMAN客戶端會發給DBMS_BACKUP_RESTORE一個調用請求,該包起一個或多個server process將需要份的數據塊備份到備份集中,之后完成對數據庫備份工作;恢復原理相似;具體起多少個server process取決于CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; 該參數的設置。所以RMAN的核心就2個包。這也是其他第三方備份工具的核心原理。
例如:BACKUP DATABASE是RMAN的命令,通過客戶端本地的包recovery.bsq的解釋轉換成對目標數據庫中兩個包的調用,完成備份工作。
recovery.bsq該文件記錄著所有RMAN命令與調用目標數據庫包命令的解釋。
RMAN的配置信息
RMAN> SHOW ALL;
RMAN configuration parameters for database with db_unique_name ORCL are:
#配置冗余策略。至少一個完整的備份,單位:份
#還有一個冗余策略叫做恢復窗口,單位:天
#CONFIGURE RETENTION POLICY,按照默認提示進行。
#該冗余策略表示數據庫可以恢復到6天以內任何時刻。
#即必須擁有6天以前最近的備份數據。
#CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 6 DAYS;
#【建議】設置3份冗余備份
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
#配置備份優化
#如果設置為on,對于readonly或者offline的文件,RMAN只備份一次
#【建議】off,防止漏備數據
CONFIGURE BACKUP OPTIMIZATION OFF; # default
#默認備份到磁盤,也可以備份到磁帶SBT
#【建議】有條件盡量向帶庫上備。
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
#手工備份有容易漏備,不知SCN號等缺點。
#RMAN根據備份元數據找備份集,方便可靠。
#RMAN元數據非常重要,若丟了,備份集無用,元數據在控制文件中,所以控制文件及其重要,一定要多備份
#【建議】必須打開on,控制文件自動備份。優點,歸檔模式下,只要數據庫物理結構變化,例如增刪表空間,數據##文件,Oracle會自動
#備份控制文件
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
#控制文件備份的位置,默認在閃回區。
#【建議】增加路徑
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
#配置備份集的并行度
#【建議】4,原理請看RMAN備份原理講述。1server process個維護RMAN連接,3server process個負責備份。
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
#配置數據庫的每次備份的copy數量,Oracle的每次備份都可以有多份完全相同的拷貝。
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
#配置數據庫的歸檔日志的存放設備類型
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
#配置備份集的最大尺寸
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
#配置數據庫加密
CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
#配置加密算法AES128
CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
#配置壓縮算法
CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
#配置歸檔日志刪除策略
CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
#配置控制文件的快照文件的存放路徑和文件名,這個快照文件是在備份期間產生的,用于控制文#件的讀一致性。
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_orcl.f'; # default