Data Guardのためのアーカイブ・ログ削除方針のRMAN構成(11g)

1. RMANでのアーカイブログ削除ポリシー

CONFIGURE ARCHIVELOG DELETION POLICY...に関するマニュアル

2. プライマリサイト側でのバックアップを実施する時の設定

CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

或いは
CONFIGURE ARCHIVELOG DELETION POLICY TO SHIPPED TO ALL STANDBY;
2.1 TO APPLIED ON [ALL] STANDBY お勧め

次の条件が両方とも満たされている場合に、アーカイブREDOログが削除可能であることを指定する

  • そのアーカイブREDOログが、必要なスタンバイ・データベースに適用済であること。
  • そのアーカイブREDOログが、BACKED UP …TIMES TO DEVICE TYPE削除方針で不要とされていること。BACKED UP方針が設定されていない場合、この条件が常に満たされる。

ALLオプションの意味合い

  • ALLを指定しなかった場合は、必須であるすべてのリモートの宛先に適用した後、アーカイブ・ログは削除可能になる。
  • ALLを指定した場合、アーカイブ・ログは、すべてのリモートの宛先で適用済または消費済であれば削除可能になる。
2.2 TO SHIPPED TO [ALL] STANDBY

次の条件が両方とも満たされている場合に、アーカイブREDOログが削除可能であることを指定する。

  • そのアーカイブREDOログが、必須であるリモートの宛先に転送済であること。
  • そのアーカイブREDOログが、BACKED UP …TIMES TO DEVICE TYPE削除方針で不要とされていること。BACKED UPの削除方針が設定されていない場合、この条件が常に満たされる。
3. スタンバイサイト側でのバックアップを取る時の設定

Oracle社によってログはスタンバイ・サイトでバックアップされるため、ログ削除ポリシーに対してBACKED UPオプションを構成することを薦められる。

CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP <integer> TIMES TO DEVICE TYPE <device_type>;
4. バックアップが実行されないスタンバイでのRMAN構成

Oracle社によってスタンバイ・データベースで適用された後のアーカイブ・ログの自動削除を有効にすることを薦められる。

CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

使用例
PRODSTB(SYS)> select sequence#,archived,applied from v$archived_log;

 SEQUENCE# ARC APPLIED
---------- --- ---------
        14 YES YES
        15 YES YES
        16 YES YES
        17 YES YES
        18 YES YES
        19 YES NO
        20 YES NO
        21 YES NO
        22 YES NO

9 rows selected.

PRODSTB(SYS)>

上記の適用されていないSEQUENCE#=18のログを削除してみれば、削除できない。
RMAN> show  ARCHIVELOG DELETION POLICY;

RMAN configuration parameters for database with db_unique_name PRODSTB are:
CONFIGURE ARCHIVELOG DELETION POLICY TO APPLIED ON ALL STANDBY;

RMAN> delete noprompt archivelog all;

using target database control file instead of recovery catalog
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=86 device type=DISK
RMAN-08120: WARNING: archived log not deleted, not yet applied by standby
archived log file name=/u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_19_704823111.arch thread=1 sequence=19
RMAN-08120: WARNING: archived log not deleted, not yet applied by standby
archived log file name=/u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_20_704823111.arch thread=1 sequence=20
RMAN-08120: WARNING: archived log not deleted, not yet applied by standby
archived log file name=/u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_21_704823111.arch thread=1 sequence=21
RMAN-08120: WARNING: archived log not deleted, not yet applied by standby
archived log file name=/u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_22_704823111.arch thread=1 sequence=22
List of Archived Log Copies for database with db_unique_name PRODSTB
=====================================================================

Key     Thrd Seq     S Low Time 
------- ---- ------- - ---------
5       1    18      A 09-DEC-09
        Name: /u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_18_704823111.arch

deleted archived log
archived log file name=/u01/app/oracle/bak/PRODSTB/arch/PRODSTB_1_18_704823111.arch RECID=5 STAMP=705177624
Deleted 1 objects

RMAN>

--# Standbyのログ適用サービスを再開したら、ログを適用される。
PRODSTB(SYS)> recover managed standby database using current logfile disconnect;
Media recovery complete.
PRODSTB(SYS)> select sequence#,archived,applied from v$archived_log;

 SEQUENCE# ARC APPLIED
---------- --- ---------
        14 YES YES
        15 YES YES
        16 YES YES
        17 YES YES
        18 YES YES
        19 YES YES
        20 YES YES
        21 YES YES
        22 YES IN-MEMORY

9 rows selected.

PRODSTB(SYS)>
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License