分类: Oracle
2017-05-18 22:28:22
适用于:
Oracle
Database - Enterprise Edition - 版本 10.2.0.1 到 10.2.0.5 [发行版 10.2]
本文档所含信息适用于所有平台
我们需要利用RMAN自动从FRA清除已经应用到备库的归档日志。
1) Bug 6216036:
在10g中,使用CONFIGURE命令配置的归档日志删除策略
仅适用于自动删除闪回恢复区的归档日志。
其他的删除机制,如DELETE ARCHIVELOG或DELETE
INPUT不遵守这个配置。
2)APPLIED ON STANDBY - 启用闪回恢复区删除已应用在属性为mandatory的备库的归档日志。
更多信息请查看
在11g此限制已解除。
解决方案
DataGuard的配置中,当数据库满足下列条件时,FRA下的归档日志将被自动清除,。如果您需要在主库清除,将其设置在主库。
1) 11g之前,如果不使用mandatory ARCHIVELOG目标,数据库(主库和备库)必须更改下面的参数并重新启动:
SQL> alter system set "_log_deletion_policy"='ALL' scope=spfile;
2) 在RMAN中配置下列参数(主库和备库):
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
警告:对于10g,如果设置了APPLIED ON STANDBY, 即使FRA 中的文件没有备份也会被清除。
11g: 从11g 开始,我们对归档日志删除策略的配置进行了增强,包含了 APPLIED ON [ALL] STANDBY [BACKED UP n TIMES TO DEVICE TYPE ] 选项。该选项确认归档日志已经被应用,并且在主库进行过备份后才可以被清除。
3) 归档日志必须已应用到备库。运行下面的查询列出所有已应用到备库的归档日志:
select a.thread#, a.sequence#, a.applied
from v$archived_log a, v$database d
where a.activation# = d.activation#
and a.applied='YES'
/
4) FRA有空间压力
当归档日志从FRA自动删除,你会看到数据库的alert.log报出以下信息:
Sat Jun 18 01:00:32 2011
Deleted Oracle managed file
/opt/app/oracle/FRA/ORA102/archivelog/2011_05_30/o1_mf_1_151_6y71q675_.arc
Deleted Oracle managed file
/opt/app/oracle/FRA/ORA102/archivelog/2011_05_31/o1_mf_1_151_6y87pzg4_.arc