概述
在用DELETEOBSOLETE命令删除废弃的备份文件,如果出现如下错误(RMAN-06207RMAN-06208),那么需要用CROSSCHECK命令来解决:
RMAN-06207:WARNING:2objectscouldnotbedeletedforDISKchannel(s)dueRMAN-06208:
CROSSCHECK命令用户核对备份文件,以确保RMAN资料库与备份文件保持同步。当执行该命令时,如果RMAN资料库记录的状态与实际备份文件不匹配,则会更新资料库里的状态使其与实际备份文件状态一致;若备份文件处于expired状态,那么说明该备份已失效,可以删除。下面介绍一些常用命令。
1、CROSSCHECKBACKUP用于核对数据库、表空间、数据文件、控制文件、归档日志、SPFILE的备份集。
CROSSCHECKBACKUP;--核对所有备份(包括有效和失效的备份)CROSSCHECKBACKUPofdatabase;--核对除控制文件、归档文件外的备份文件CROSSCHECKBACKUPoftablespacesystem;CROSSCHECKBACKUPofdatafile1;CROSSCHECKBACKUPofcontrolfile;CROSSCHECKBACKUPofarchivelogall;CROSSCHECKBACKUPofarchivelogsequence3;CROSSCHECKBACKUPofspfile;2、CROSSCHECKBACKUPPIECE
用于核对特定备份片,该命令需要制定备份片的BP值或备份片名称;
CROSSCHECKBACKUPPIECE4;CROSSCHECKBACKUPPIECE'/home/oracle/app/oracle/flash_recovery_area/NWPPDB/autobackup/2019_05_18/o1_mf_s_1008593930_gfz48b8w_.bkp';3、CROSSCHECKBACKUPSET
用于核对特定的备份集,该命令需要制定备份集的BP值;
CROSSCHECKBACKUPSET4;4、CROSSCHECKCOPY
用于核对数据库、表空间、数据文件、控制文件、归档文件的映像副本(即备份是用COPYDATAFILE或BACKUPASCOPYDATAFILE命令备份数据文件的映像)
CROSSCHECKCOPY;CROSSCHECKCOPYofdatabase;CROSSCHECKCOPYoftablespacesystem;CROSSCHECKCOPYofdatafile1;CROSSCHECKCOPYofcontrolfile;CROSSCHECKCOPYofarchivelogall;CROSSCHECKCOPYofarchivelogfromsequence24untilsequence32;5、CROSSCHECKDTAFILECOPY
用于核对特定的数据文件映像副本,该命令需要指定映像副本的文件名或KEY值;
CROSSCHECKDATAFILECOPY2;CROSSCHECKDATAFILECOPY'/u01/app/oracle/rman_backup/';6、CROSSCHECKCONTROLFILECOPY
用于核对特定的控制文件映像副本,该命令需要指定控制文件映像副本的文件名或KEY值;
CROSSCHECKCONTROLFILECOPY3;CROSSCHECKCONTROLFILECOPY'/u01/app/oracle/rman_backup/;7、CROSSCHECKARCHIVELOG
用于核对特定的归档日志,该命令需要指定归档日志的文件名或KEY值或SEQUENCE值;
CROSSCHECKARCHIVELOG36;CROSSCHECKARCHIVELOG'crosscheckarchivelog'/u01/app/oracle/product/11g/dbs/arch1_6_813161833.dbf';CROSSCHECKARCHIVELOGsequence7;