请看rman的show all,我明明制定了RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS; 3天之前的算过期,但是归档日志都已经累计了30天了,465条! 执行list expired archivelog all; 居然显示没有匹配的?!求解
RMAN> show all;
RMAN configuration parameters for database with db_unique_name ORCL are:
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP OFF; # default
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '%F'; # default
CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
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
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 '/data/u01/app/oracle/product/11.2.0/dbhome_1/dbs/snapcf_orcl.f'; # default
RMAN> list expired archivelog all;
specification does not match any archived log in the repository
已经累积了465条归档日志了!
archived log file name=/data/u01/app/oracle/flash_recovery_area/ORCL/archivelog/2023_09_17/o1_mf_1_465_ljfy357r_.arc RECID=196 STAMP=1147813221
validation succeeded for archived log
archived log file name=/data/ARCn_log/desk31_465_1143911652.dbf RECID=198 STAMP=1147813221
validation succeeded for archived log
archived log file name=/data/ARCn_log/desk21_465_1143911652.dbf RECID=197 STAMP=1147813221
Crosschecked 189 objects
该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
根据您提供的信息,您的RMAN配置中设置了保留策略为恢复窗口为3天(CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 3 DAYS;),但是执行"list expired archivelog all;"命令时没有匹配到任何过期的归档日志。
这种情况可能是由于以下原因之一导致的:
1、 归档日志没有过期:请确认归档日志的时间是否确实超过了3天。您提到归档日志已经累计了30天,但是可能有一些归档日志仍然处于保留范围内,没有过期。您可以使用以下命令检查保留策略的生效情况:
RMAN> SHOW RETENTION POLICY;
确保显示的保留策略与您的预期一致。
2、 归档日志已经被手动标记为保留:如果有人手动标记了归档日志为保留状态,那么这些归档日志将不会被RMAN视为过期。您可以使用以下命令检查归档日志的保留状态:
RMAN> LIST ARCHIVELOG ALL;
检查是否有归档日志被标记为保留。
3、 RMAN目录中的元数据与实际归档日志不匹配:如果RMAN目录中的元数据与实际归档日志不匹配,RMAN可能无法正确识别过期的归档日志。您可以尝试使用以下命令重新同步RMAN目录和实际归档日志:
RMAN> CROSSCHECK ARCHIVELOG ALL;
这将检查RMAN目录中的归档日志是否存在,并更新它们的状态。
如果上述方法都无法解决问题,可能需要进一步检查RMAN日志文件以获取更多信息,或者考虑重新配置RMAN的保留策略。
如果以上回答对您有所帮助,点击一下采纳该答案~谢谢