2019独角兽企业重金招聘Python工程师标准>>>
DG主库删除归档时
RMAN> delete archivelog until sequence 100;
释放的通道: ORA_DISK_1
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: SID=42 设备类型=DISK
RMAN-08137: 警告: 归档日志未删除, 因为备用或上游捕获进程需要它
归档日志文件名=/u01/app/oracle/fast_recovery_area/PRIMARY/archivelog/2016_02_25/o1_mf_1_71_cdwlpn9w_.arc 线程=1 序列=71
RMAN-08137: 警告: 归档日志未删除, 因为备用或上游捕获进程需要它
归档日志文件名=/u01/app/oracle/fast_recovery_area/1_72_904705451.arc 线程=1 序列=72
很显然,这些归档并没有被备库应用,查看v$archived_log;
SQL> select t.thread#,t.sequence#,t.COMPLETION_TIME,t.applied from v$archived_log t where t.completion_time>sysdate-7;
THREAD# SEQUENCE# COMPLETION_TIM APPLIED
---------- ---------- -------------- ---------
1 100 14-3月 -16 NO
1 101 14-3月 -16 NO
1 102 15-3月 -16 NO
1 103 15-3月 -16 NO
1 104 16-3月 -16 NO
1 105 16-3月 -16 NO
1 106 17-3月 -16 NO
1 107 17-3月 -16 NO
1 108 17-3月 -16 NO
1 109 18-3月 -16 NO
1 110 18-3月 -16 NO
1 111 18-3月 -16 NO
1 112 20-3月 -16 NO
已选择13行。
果然发现日志并未被备库应用,因此主库不能删除他!
日志没被应用,那怎么办呢?
理论上这是必须的,也是dg的一种保护备库的一种方式!当然,如果要强制删除这些归档,该怎么做?
那就只能强制删除了!
RMAN>delete force archivelog until sequence 100;
参见文档Archive Log not Getting Deleted Using Rman With Rman-08137 [ID 964522.1]
但事实上,并不推荐使用官方这种做法,除非备库上已经应用了此归档对应的重做日志文件。