11gRMAN新機能
1. 11gRMAN新機能概要
  • Interfile backup parallelism
  • Faster backup compression
  • Better security
  • Active database duplication
  • Improved handling of long-term backups
  • Backup failover for archived redo logs
  • Archived redo log deletion policy enhancements
  • Recovery catalog enhancements
  • Undo backup optimization
    • Backup optimizationが有効の場合、Oracleは必要の無いUNDO(コミットされたトランザクション)をバックアップしないようになる。
  • Block media performance improvements
    • Flashback Databaseが有効の場合、ブロック・メディア・リカバリを行う時、OracleはFlashback LOGでブロックをリカバリすることをまず試すようになる。
    • Flashback LOGには適用できるログが無ければ、OracleはRMANのバックアップでブロックリカバリを試す。
  • Block change support for standby databases
    • フィジカル・スタンバイにBlock Change Tracking Fileを適用できるようになった。
  • Improved RMAN scripting
    • RMANコマンドライン或いはスクリプトに置き換え変数が使えるようになった。
  • Backup of read-only transportable tablespaces
    • Transportable tablespaces that are read-only will be backed up.
2. データファイル単位のパラレルバックアップ(Interfile backup parallelism)
2.1 マルチセクション・バックアップ(Multisection backup)

backup section size <sizeSpec> …

  • バックアップ・ピースごとに1つのファイル・セクション(データファイル内の連続するブロックの範囲)が含まれているRecovery Managerのバックアップ・セット。
  • マルチセクション・バックアップの目的は、Recovery Managerチャネルが単一の大規模なファイルをパラレルでバックアップできるようにすること。
  • SECTION SIZEは、MAXPIECESIZEとともに指定することはできない。
  • ファイルのサイズより大きいセクション・サイズを指定した場合、Recovery Managerはファイルのマルチセクション・バックアップを使用しない。
  • 小さなセクション・サイズを指定した結果、セクションの数が256を超えると、Recovery Managerは、正確に256になる値までセクション・サイズを増やす。

マルチセクション・バックアップで単一表領域をバックアップ

RMAN> backup section size 200M tablespace MGMT_TABLESPACE;

Starting backup at 01-DEC-09
using channel ORA_DISK_1
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/OMR/mgmt.dbf
backing up blocks 1 through 25600
channel ORA_DISK_1: starting piece 1 at 01-DEC-09
channel ORA_DISK_1: finished piece 1 at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/OMR_24kvqd5r_1_1 tag=TAG20091201T111923 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
channel ORA_DISK_1: starting full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/OMR/mgmt.dbf
backing up blocks 25601 through 48600
channel ORA_DISK_1: starting piece 2 at 01-DEC-09
channel ORA_DISK_1: finished piece 2 at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/OMR_24kvqd5r_2_1 tag=TAG20091201T111923 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:15
Finished backup at 01-DEC-09
2.2 マルチセクション・バックアップを利用してファイル単位でのパラレルバックアップを実行

VMWAREでの検証なので、二つのチャンネルを同じディレクトリへ書き込ませた。本番環境なら、シングルディスクや少数のディスク環境で運用しないほうが良い。

RMAN> run {
        allocate channel c1 device type disk format '/u01/app/oracle/bak/OMR/rman/OMR_%U';
        allocate channel c2 device type disk format '/u01/app/oracle/bak/OMR/rman/OMR_%U';
        backup section size 200M tablespace MGMT_TABLESPACE;
}

released channel: ORA_DISK_1
allocated channel: c1
channel c1: SID=118 device type=DISK

allocated channel: c2
channel c2: SID=103 device type=DISK

Starting backup at 01-DEC-09
channel c1: starting full datafile backup set
channel c1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/OMR/mgmt.dbf
backing up blocks 1 through 25600
channel c1: starting piece 1 at 01-DEC-09
channel c2: starting full datafile backup set
channel c2: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/OMR/mgmt.dbf
backing up blocks 25601 through 48600
channel c2: starting piece 2 at 01-DEC-09
channel c1: finished piece 1 at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/OMR_27kvqefl_1_1 tag=TAG20091201T114141 comment=NONE
channel c1: backup set complete, elapsed time: 00:00:27
channel c2: finished piece 2 at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/OMR_27kvqefl_2_1 tag=TAG20091201T114141 comment=NONE
channel c2: backup set complete, elapsed time: 00:00:25
Finished backup at 01-DEC-09

Starting Control File and SPFILE Autobackup at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/ctl_c-1349706745-20091201-06 comment=NONE
Finished Control File and SPFILE Autobackup at 01-DEC-09
released channel: c1
released channel: c2

RMAN> list backup of datafile 5;

List of Backup Sets
===================

...(略)
  Backup Set Copy #1 of backup set 64
  Device Type Elapsed Time Completion Time Compressed Tag
  ----------- ------------ --------------- ---------- ---
  DISK        00:00:17     01-DEC-09       NO         TAG20091201T114141

    List of Backup Pieces for backup set 64 Copy #1
    BP Key  Pc# Status      Piece Name
    ------- --- ----------- ----------
    71      1   AVAILABLE   /u01/app/oracle/bak/OMR/rman/OMR_27kvqefl_1_1
    72      2   AVAILABLE   /u01/app/oracle/bak/OMR/rman/OMR_27kvqefl_2_1
3. 圧縮バックアップ速度改善
  • Oracle 10gからBZIP2圧縮アルゴリズムが提供されるようになる。
  • Oracle 11gからZLIB圧縮アルゴリズムが提供される。
3.1 ZLIBBZIP2の違い
  • BZIP2はZLIBより圧縮率が高くてZLIBのバックアップイメージよりサイズが小さい。
  • ZLIBはBZIP2より速度が速い。
  • どちらかを選ぶかが速度対スペースの問題になる。
3.2 ZLIBアルゴリズムでの圧縮バックアップ
RMAN> CONFIGURE COMPRESSION ALGORITHM 'ZLIB';

old RMAN configuration parameters:
CONFIGURE COMPRESSION ALGORITHM 'BZIP2';
new RMAN configuration parameters:
CONFIGURE COMPRESSION ALGORITHM 'ZLIB';
new RMAN configuration parameters are successfully stored

RMAN> backup as compressed backupset database plus archivelog;

Starting backup at 01-DEC-09
current log archived
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=107 device type=DISK
channel ORA_DISK_1: starting compressed archived log backup set
channel ORA_DISK_1: specifying archived log(s) in backup set
input archived log thread=1 sequence=72 RECID=67 STAMP=704477791
channel ORA_DISK_1: starting piece 1 at 01-DEC-09
channel ORA_DISK_1: finished piece 1 at 01-DEC-09
piece handle=/u01/app/oracle/bak/OMR/rman/OMR_2ikvquj0_1_1 tag=TAG20091201T161632 comment=NONE
channel ORA_DISK_1: backup set complete, elapsed time: 00:00:03
Finished backup at 01-DEC-09

Starting backup at 01-DEC-09
using channel ORA_DISK_1
channel ORA_DISK_1: starting compressed full datafile backup set
channel ORA_DISK_1: specifying datafile(s) in backup set
input datafile file number=00005 name=/u01/app/oracle/oradata/OMR/mgmt.dbf
input datafile file number=00001 name=/u01/app/oracle/oradata/OMR/system01.dbf
input datafile file number=00003 name=/u01/app/oracle/oradata/OMR/undotbs01.dbf
input datafile file number=00002 name=/u01/app/oracle/oradata/OMR/sysaux01.dbf
input datafile file number=00006 name=/u01/app/oracle/oradata/OMR/mgmt_ecm_depot1.dbf
input datafile file number=00004 name=/u01/app/oracle/oradata/OMR/users01.dbf
channel ORA_DISK_1: starting piece 1 at 01-DEC-09
... ... 略

※ CPUに問題なければ、BZIP2アルゴリズムにしたほうが良いと思う。
4. Active database duplication
  • データベース複製(Duplication)の時に現行データベースのバックアップが不要になる。勿論バックアップのコピーも必要が無くなる。
  • ローカルサーバーとリモートサーバーにデータベースを複製することが可能。

使用例:11g RMANでActive Database Duplication

5. アーカイブログ・バックアップの改善
5.1 Backup Failover for Archived Redo Logs

複数のアーカイブ先にアーカイブログを出力する場合、1箇所のアーカイブログが何らかの原因で壊れた場合、RMANは他の出力先へフェイルオーバーしてアーカイブログをバックアップすることを試す。

5.2 アーカイブREDOログの削除方針
  • Oracle 11gからアーカイブログの削除方針はフラッシュ・リカバリ領域を含むすべてのアーカイブ先に適用されるようになった。
  • 10gはフラッシュ・リカバリ領域のみに適用される。
  • アーカイブREDOログの削除方針はデフォルトで無効(NONE)

アーカイブREDOログの削除方針を有効にする。 例はディスクに2回以上バックアップされたら、削除対象になるように指定している。

RMAN> CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK;

new RMAN configuration parameters:
CONFIGURE ARCHIVELOG DELETION POLICY TO BACKED UP 2 TIMES TO DISK;
new RMAN configuration parameters are successfully stored

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