一. List命令的使用
列出備份集、數(shù)據(jù)文件鏡像等
列出指定表空間任意數(shù)據(jù)文件的備份集或鏡像副本
列出指定范圍內(nèi)包含歸檔日志的備份集或鏡像副本
RMAN> list backup;
RMAN> list copy;
RMAN> list backup of database;
RMAN> list backup of tablespace uers;
RMAN> list backup of archivelog all;
RMAN> list backup verbose;
#常用
RMAN> list backup summary;
RMAN> list backup of datafile { n | <dir>}
RMAN> list copy of archive from time = 'sysdate - 7';
RMAN> list backup of archivelog from sequence 1000 until sequence 1020;
RMAN> list backupset tag=TAG20101014T155753;
二.Report命令的使用
Report命令顯示存儲倉庫中詳細(xì)的分析信息
比如,哪些文件需要備份
哪些備份可以被刪除
哪些文件不可恢復(fù)等
RMAN> report schema;
RMAN> report need backup;
RMAN> report need backup days 3;
RMAN> report need backup redundancy 3;
RMAN> report need backup recovery window of 3 days;
RMAN> report obsolete;
RMAN> report unrecoverable;
RMAN> report schema at time 'sysdate-7';
RMAN> report need backup days 2 tablespace system;
三、Delete命令的使用
刪除相關(guān)的備份集或鏡像副本的物理文件,同時(shí)將刪除標(biāo)記delete更新到控制文件.如果使用恢復(fù)目錄,則是清除恢復(fù)目錄內(nèi)的該備份集。
RMAN> delete backupset;
RMAN> delete backupset n;
RMAN> delete obsolete ;
RMAN> delete obsolete redundancy 2;
RMAN> delete noprompt copy;
#常用
RMAN> delete noprompt backupset tag TAG20101016T143521;
RMAN> delete obsolete recovery window of 7 days;
RMAN> delete expired backupset;
RMAN> delete expired copy;
RMAN> delete expired archivelog all;
四、crosscheck命令的使用
用于校驗(yàn)存儲倉庫中的備份集或鏡像副本,執(zhí)行該命令后,將更新存儲倉庫中的剛剛校驗(yàn)的對象狀態(tài),便于后續(xù)操作處理。
RMAN備份校驗(yàn)時(shí)的幾種狀態(tài):
expired: 對象不存在于磁盤或磁帶。當(dāng)一個(gè)備份集處于expired狀態(tài),則該備份集中所有的備份片同樣處于expired狀態(tài)
available: 對象處于可用狀態(tài)。當(dāng)一個(gè)備份集可用,則該備份集內(nèi)的所有備份片同樣可用
unavailabe: 對象處于不可用狀態(tài)。當(dāng)一個(gè)備份集不可用,則該備份集內(nèi)的所有備份片同樣不可用
注:expired不等同于obsolette。兩者的差異請參考:文檔
校驗(yàn)時(shí)的限制:目標(biāo)數(shù)據(jù)庫必須被啟動
對于磁盤上的備份集,校驗(yàn)時(shí)不需要使用通道。而磁帶上的備份集則必須使用通道,如果未為磁帶配置自動通道,則必須手動分配
可以校驗(yàn)執(zhí)行resetlogs之前的備份,即可以校驗(yàn)不同的incarnation
RMAN> crosscheck backupset; --校驗(yàn)備份集
RMAN> crosscheck copy; --校驗(yàn)鏡像副本
RMAN> crosscheck backup of controlfile; --校驗(yàn)備份的控制文件
RMAN> crosscheck backup of archivelog all; --校驗(yàn)所有備份的歸檔日志
RMAN> crosscheck backup of datafile 1,2; --校驗(yàn)datafile 1,2
RMAN> crosscheck backup of tablespace sysaux,system; --校驗(yàn)表空間sysaux,system
RMAN> crosscheck backup completed between '13-OCT-10' and '23-OCT-10'; --校驗(yàn)時(shí)間段,時(shí)間段格式由NLS_DATE_FORMAT設(shè)置
RMAN> crosscheck backupset 1067,1068; --校驗(yàn)指定的備份集
五、validate命令的使用
驗(yàn)證一個(gè)備份集內(nèi)的數(shù)據(jù)的完整性。RMAN掃描備份集的所有備份片,并檢查校驗(yàn)和,驗(yàn)證其內(nèi)容是否可以成功還原
validate是較crosscheck更高一級的驗(yàn)證操作.crosscheck僅僅是檢查備份集的頭部信息,校驗(yàn)文件的存在性,validate驗(yàn)證數(shù)據(jù)的有效性
RMAN> validate backupset <primary key> [check logical]
check logical測試數(shù)據(jù)和索引塊,將驗(yàn)證得到的邏輯錯(cuò)誤填充到V$DATABASE_BLOCK_CORRUPTION 視圖
也可以使用restore ... validate 子句來測試可還原性,而非真實(shí)的還原數(shù)據(jù)
六、備份保留策略
保留策略主要是保留備份副本的一些規(guī)則,通常用于滿足恢復(fù)或其他的需要(比如磁盤空間或磁帶空間大小限制)。備份保留策略分為冗余和恢復(fù)窗口,這兩種保留策略互不兼容,要么使用前者,要么使用后者
備份冗余
默認(rèn)為,可以通過RMAN> configure retention policy to redundancy 2;來修改
當(dāng)為時(shí),RMAN會為每個(gè)數(shù)據(jù)文件、歸檔日志、控制文件生成一個(gè)備份??梢允褂胷eport obsolete命令查看備份數(shù)多于的備份并使用delete obsolete來刪除過時(shí)的備份
恢復(fù)窗口
恢復(fù)窗口允許完成恢復(fù)到過去某個(gè)時(shí)間點(diǎn)的時(shí)點(diǎn)恢復(fù),通常設(shè)定為多少天。
使用命令RMAN> configure retetion policy to recovery window of 7 days
該命令將確保具有足夠的數(shù)據(jù)文件和歸檔日志來執(zhí)行能夠返回一個(gè)星期中任意時(shí)間點(diǎn)的不完全恢復(fù),且允許刪除隨著時(shí)間推移而變?yōu)閺U棄的備份,即應(yīng)當(dāng)滿足該條件:SYSDATE - BACKUP CHECKPOINT TIME >= 7
對于大于天但是是恢復(fù)所需要的備份依然會被保留
清除備份保留策略
RMAN> configure retention policy clear;
注意obsolete 與expired
obsolete:是指根據(jù)保留策略來確定該備份是否在恢復(fù)的時(shí)候需要,如不在需要或有更新的備份來替代,則該備份集被置為obsolete,即廢棄的備份集或鏡像副本。
expired: 是指執(zhí)行crosscheck時(shí),根據(jù)存儲倉庫中記錄的備份信息來定位備份集或鏡像副本,而找不到對應(yīng)的備份集或鏡像副本,則這些備份集或鏡像副本被置為expired。