SQL> select * from v$version;
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production
SQL> show parameter db_recovery_file_dest;
db_recovery_file_dest /u03/fast_recovery_area/MPCDB
db_recovery_file_dest_size 8016M
SQL> show parameter log_archive_dest_1;
log_archive_dest_1 location=/u03/fast_recovery_area/MPCDB/MPCDB/archivelog valid_for=(all_logfiles,all_roles) db_unique_name=MPCDB196
log_archive_dest_10
SQL> alter system set "_log_deletion_policy"=ALL scope=both sid='*';
SQL> show parameter log_deletion_policy;
_log_deletion_policy ALL
#当FRA空间达到60%使用率时,就会自动删除已经应用的archivelog(默认80%)
SQL> alter system set event='19823 trace name context forever,level 60' scope=spfile sid='*';
#如需修改配置则如下步骤:
#更改FRA配置
ALTER SYSTEM SET db_recovery_file_dest_size=8g SCOPE=BOTH;
ALTER SYSTEM SET db_recovery_file_dest=/u03/fast_recovery_area/MPCDB SCOPE=BOTH;
ALTER SYSTEM SET log_archive_dest_1='location=/u03/fast_recovery_area/MPCDB/MPCDB/archivelog valid_for=(all_logfiles,all_roles) db_unique_name=MPCDB196' SCOPE=BOTH;
3. 重启备库
ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
shutdown immediate
startup
alter database recover managed standby database using current logfile disconnect from session;
#配置备库rman的归档删除策略
[oracle@DB197 ~]$ rman target /
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
RMAN>show all;
RMAN configuration parameters for database with db_unique_name DG126 are:
CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON; # 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 RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/u01/app/oracle/product/12.2.0/db_1/dbs/snapcf_ORACLE12CDG.f'; # default
当FRA空间达到80%使用率时,就会自动删除已经应用的archivelog:
接下来我们将这个比率调整到50%,看看是什么结果:
SQL> alter system set event='19823 trace name context forever,level 50' scope=spfile sid='*';
select t.NAME,t.SPACE_LIMIT/(1024*1024) as SPACE_LIMIT,trunc(t.SPACE_USED/(1024*1024),2) as SPACE_USED ,t.SPACE_RECLAIMABLE/(1024*1024) as SPACE_RECLAIMABLE,t.NUMBER_OF_FILES,t.CON_ID from v$recovery_file_dest t
Select * from v$flash_recovery_area_usage
#主库方法同上
[oracle@DG196 ~]$ rman target /
如报如下警告
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
RMAN-08591: warning: invalid archived log deletion policy
则 alter system set "_log_deletion_policy"=ALL scope=both sid='*';
再次修改
RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON STANDBY;
new RMAN configuration parameters are successfully stored