この章では、RMANを構成する場合の基本的なタスクについて説明します。この章の内容は次のとおりです。
関連項目:
この章で説明していない構成オプション(バックアップの圧縮やバックアップの暗号化など)については、「RMAN環境の構成: 高度なトピック」を参照してください。
Oracle Secure Backup(OSB)Cloud Module用にRMANを構成する方法については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』の付録Cを参照してください。
RMANには、バックアップに必要なほとんどのパラメータに対して、基本的なバックアップおよびリカバリを実行できる適切なデフォルトが備えられています。RMANベースのバックアップ計画を実装する場合、最も一般的な構成を理解すると、RMANを効果的に使用できます。
RMANの継続的な使用を簡単にするには、各ターゲット・データベースにいくつかの永続構成を設定します。これらの設定によって、RMANの動作の様々な点が制御されます。たとえば、バックアップの保存方針、バックアップのデフォルトの格納先、デフォルトのバックアップ・デバイス・タイプなどを構成できます。SHOW
およびCONFIGURE
コマンドを使用して、RMANの構成を表示および変更できます。
この項では、RMAN構成の概要およびCONFIGURE
コマンドを使用してRMANのデフォルトの動作をバックアップとリカバリ環境用に変更する方法について説明します。また、使用可能な主な設定および一般的な設定値についても説明します。
注意:
テープへのバックアップを計画している場合は、「メディア・マネージャにバックアップするためのRMANの構成」を参照してください。
この項の内容は、次のとおりです。
関連項目:
CONFIGURE
の構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
バックアップ先のデバイス・タイプが指定されていないバックアップは、構成済のデフォルト・デバイスに格納されます。RMANは、デフォルトのデバイス・タイプとしてディスクを使用するように事前構成されています。追加の構成は必要ありません。
デフォルトのデバイス・タイプをディスクからテープに変更したり、テープからディスクに戻す必要がある場合があります。表5-1に、デフォルトのデバイスを構成するコマンドを示します。
表5-1 デフォルトのデバイス・タイプを構成するコマンド
コマンド | 説明 |
---|---|
|
バックアップをデフォルトでディスクに格納するように指定します。 リカバリ領域が有効になっている場合、バックアップ場所はデフォルトで高速リカバリ領域になります。リカバリ領域が有効になっていない場合、バックアップ場所はデフォルトでディスク上のオペレーティング・システム固有のディレクトリになります。 ディスクにバックアップする場合、データベース・ファイルの論理ブロック・サイズは、バックアップ先のデバイスの物理ブロック・サイズの倍数である必要があります。たとえば、ブロック・サイズが2KBのDISKタイプのデバイスは、論理ブロック・サイズが2KB、4KB、6KBなどのデータベース・ファイルのバックアップ先としてのみ使用できます。ほとんどのディスク・ドライブの物理ブロック・サイズは512バイトであるため、この制限が、ディスク・ドライブへのバックアップに影響を及ぼすことはほとんどありません。ただし、書込み可能なDVDまたは物理ブロック・サイズが大きいデバイスにバックアップする場合は、この制限の影響を受ける可能性があります。 |
|
バックアップをデフォルトでテープに格納するように指定します。 メディア・マネージャで使用するRMANの設定方法については、「メディア・マネージャにバックアップするためのRMANの構成」を参照してください。RMANがメディア・マネージャと通信できるようになった後、テープにバックアップが作成されるようにRMANを構成し、デフォルトのデバイス・タイプとしてSBTを指定します。 |
次の例に示すように、BACKUP
コマンドのDEVICE
TYPE句を使用して、デフォルト・デバイスを常に上書きできます。
BACKUP DEVICE TYPE sbt DATABASE; BACKUP DEVICE TYPE DISK DATABASE;
構成済のデフォルトのデバイス・タイプを変更する手順
RMANを起動し、ターゲット・データベースおよびリカバリ・カタログ(使用している場合)に接続します。
SHOW ALL
コマンドを実行して、現在構成されているデフォルトのデバイスを表示します。
TO DISK
またはTO sbt
のいずれかを指定して、CONFIGURE DEFAULT DEVICE TYPE
コマンドを実行します。
関連項目:
DEVICE TYPE句を指定したBACKUP
コマンドを使用する方法の詳細は、『Oracle Databaseバックアップおよびリカバリ・リファレンス』
を参照してください。
BACKUP
コマンドでは、バックアップ・セットまたはイメージ・コピーのいずれかを作成できます。ディスクの場合、CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO
コマンドを使用すると、デフォルトのバックアップ・タイプとしてバックアップ・セットまたはイメージ・コピーを作成するようにRMANを構成できます。ディスクのデフォルトのバックアップ・タイプは、圧縮されていないバックアップ・セットです。
注意:
RMANはディスクにのみイメージ・コピーを書き込むことができるため、テープのバックアップ・タイプはバックアップ・セットのみになります。
RMANはバイナリ圧縮を使用してバックアップ・セットを作成できます。BACKUP TYPE TO ... BACKUPSET
句にCOMPRESSED
オプションを指定すると、デバイス・タイプに対してデフォルトで圧縮バックアップ・セットを使用するようにRMANを構成できます。圧縮を無効にするには、他の必要な設定を示す引数を指定してCONFIGURE DEVICE TYPE
コマンドを使用しますが、COMPRESSED
キーワードは省略します。
バックアップのデフォルト・タイプを構成する手順
「RMANチャネルについて」で説明されているように、RMANチャネルとは、データベース・サーバー・セッションへの接続のことです。RMANは、ほとんどのタスクの実行にチャネルを使用します。
この項の内容は、次のとおりです。
ディスクまたはSBT
チャネルのオプションを構成するには、CONFIGURE CHANNELコマンドを使用します。
CONFIGURE
CHANNEL
では、ALLOCATE CHANNEL
コマンドでワンタイム・オプションを指定するときに使用するものと同じオプションを使用します。デバイス・タイプに汎用チャネル設定を構成できます。汎用チャネル設定は、デバイスの構成済設定に基づいて作成されるチャネルで使用されるテンプレートです。
注意:
この項では、ディスク・チャネルの構成について説明します。テープのチャネルを構成する方法については、「メディア・マネージャで使用するSBTチャネルの構成」を参照してください。
CONFIGURE
CHANNEL
を使用してデバイスの汎用チャネル設定を指定すると、以前の設定は競合がない場合でも破棄されます。たとえば、2番目のCONFIGURE
CHANNEL
コマンドで構成済のディスク・チャネルに対してFORMAT
のみを指定すると、ディスク・チャネルのMAXPIECESIZE
がデフォルト値に戻されます。
CONFIGURE CHANNEL DEVICE TYPE DISK MAXPIECESIZE 2G; CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT /tmp/%U;
デフォルトでは、RMANは、1つのディスク・チャネルをすべての操作に割り当てます。このチャネルに対して、バックアップ用の新しいデフォルトの場所などの他のオプションを指定する必要がある場合があります。
例5-1 デフォルト以外のバックアップ場所の構成
この例では、ディスク・バックアップを/disk1
ディレクトリに書き込むようにRMANを構成し、相対ファイル名にデフォルト以外の書式を指定します。
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/disk1/ora_df%t_s%s_s%p';
例5-1では、RMANは、書式指定子%t
を4バイトのタイムスタンプに、%s
をバックアップ・セット番号に、%p
をバックアップ・ピース番号に自動的に置換します。
注意:
ディスク・チャネルに明示的な書式を構成すると、RMANは、デフォルトでは高速リカバリ領域にバックアップを作成しません。この場合、高速リカバリ領域のディスク領域管理機能は失われます。
例5-2 ASMディスクの場所の構成
この例は、ASMディスクの場所を構成する方法を示します。
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '+dgroup1';
関連項目:
バックアップを作成する方法については、「RMANを使用したデータベース・ファイルのバックアップ」を参照してください。
コマンドの実行時にデバイス・タイプで使用できるチャネルの数によって、RMANが読取りまたは書込みをパラレルで行うかどうかが決まります。通常、コマンドの実行に使用するチャネルの数は、アクセスされるデバイスの数と一致する必要があります。したがって、テープ・バックアップの場合は、テープ・ドライブごとに1つのチャネルを割り当てます。ディスク・バックアップの場合は、物理ディスクごとに1つのチャネルを割り当てます。ただし、複数のチャネルを使用して、ディスク・サブシステム・アーキテクチャ用にバックアップを最適化できる場合は除きます。適切な数のチャネルが割り当てられない場合、I/O操作中のRMANのパフォーマンスが低下します。
CONFIGURE DEVICE TYPE sbtを使用すると、SBTデバイスに対してチャネルのパラレル化
設定、バックアップ・セットの
バイナリ圧縮
などのオプションを構成できます。デバイス・タイプの構成は、チャネルの構成とは別に設定できます。
関連項目:
ディスク・バックアップをパラレル化する方法については、「ディスク・バックアップの複数のフォーマットの指定」を参照してください。
BACKUP
コマンドのCHANNELパラメータの詳細は、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
Oracle Real Application Clusters(Oracle RAC)構成でパラレル操作を活用する方法については、『Oracle Real Application Clusters管理およびデプロイメント・ガイド』を参照してください。
例5-3 SBTデバイスのパラレル化の構成
この例では、RMANで2つのテープ・ドライブをパラレルに使用してメディア・マネージャにバックアップできるようにSBTデバイスを変更します(出力例も示します)。構成済の各SBTチャネルは、データの合計の約半分ずつをバックアップします。
RMAN> CONFIGURE DEVICE TYPE sbt PARALLELISM 2; old RMAN configuration parameters: CONFIGURE DEVICE TYPE 'SBT_TAPE' BACKUP TYPE TO COMPRESSED BACKUPSET PARALLELISM 1; new RMAN configuration parameters: CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET; new RMAN configuration parameters are successfully stored
例5-4 SBTデバイスのバックアップ・タイプの構成
この例では、SBTデバイスのデフォルトのバックアップ・タイプを、圧縮されていないバックアップ・セットに変更します(出力例も示します)。
この例で使用されているCONFIGURE DEVICE TYPE
コマンドは、パラレル化とバックアップ・タイプのみに影響し、指定されていない設定値には影響しません。例5-3では、パラレル化設定を変更しても、圧縮済バックアップ・セットのデフォルトのバックアップ・タイプは変更されていません。例5-4では、デフォルトのバックアップ・タイプを変更しても、複数のテープ・ドライブをパラレルに使用する機能には影響していません。
RMAN> CONFIGURE DEVICE TYPE sbt BACKUP TYPE TO BACKUPSET;
old RMAN configuration parameters: CONFIGURE DEVICE TYPE 'SBT_TAPE' PARALLELISM 2 BACKUP TYPE TO COMPRESSED BACKUPSET; new RMAN configuration parameters: CONFIGURE DEVICE TYPE 'SBT_TAPE' BACKUP TYPE TO BACKUPSET PARALLELISM 2; new RMAN configuration parameters are successfully stored
ジョブの実行中にチャネルを手動で割り当てると、構成済チャネルのすべての設定が無視されます。たとえば、デフォルトのデバイス・タイプがSBTに構成された状態で、次のコマンドを実行するとします。
RUN { ALLOCATE CHANNEL c1 DEVICE TYPE DISK; BACKUP TABLESPACE users; }
この場合、RMANでは、RUN
コマンド内で手動で割り当てたディスク・チャネルのみが使用され、CONFIGURE
DEVICE
TYPE
、CONFIGURE
DEFAULT
DEVICE
またはCONFIGURE
CHANNEL
設定を使用して設定されたデフォルトは上書きされます。
関連項目:
構成済チャネルおよび割当て済チャネルについては、「RMANチャネルについて」を参照してください
ALLOCATE CHANNELの構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
CONFIGUREの構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
「RMAN制御ファイルおよびサーバー・パラメータ・ファイルの自動バックアップについて」で説明されているように、RMANは、制御ファイルおよびサーバー・パラメータ・ファイルを自動的にバックアップするように構成することができます。自動バックアップは、バックアップ・レコードが追加されるたびに実行されます。 また、データベースがARCHIVELOG
モードで実行されている場合も、自動バックアップは、制御ファイル内のデータベース構造メタデータが変更されるたびに実行されます。制御ファイルの自動バックアップによって、RMANは、現行の制御ファイル、リカバリ・カタログおよびサーバー・パラメータ・ファイルが消失した場合でも、データベースをリカバリできます。
自動バックアップのファイル名は標準書式に従っているため、RMANは、リポジトリにアクセスせずにこのファイルを検索し、サーバー・パラメータ・ファイルをリストアできます。リストアされたサーバー・パラメータ・ファイルを使用してインスタンスを起動すると、RMANは、自動バックアップから制御ファイルをリストアできます。制御ファイルをマウントすると、RMANリポジトリが使用可能になり、RMANは、データファイルをリストアし、アーカイブREDOログが検索できるようになります。
次のコマンドを実行すると、自動バックアップ機能を有効にできます。
CONFIGURE CONTROLFILE AUTOBACKUP ON;
次のコマンドを実行すると、自動バックアップ機能を無効にできます。
CONFIGURE CONTROLFILE AUTOBACKUP OFF;
制御ファイルの自動バックアップは、デフォルトでは、CDBに対してはオン、非CDBに対してはオフです。
関連項目:
CONFIGUREの構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
この項の内容は、次のとおりです。
デフォルトでは、構成済のすべてのデバイスの自動バックアップ・ファイルの書式は、FORMAT
句では置換変数
%Fになります。この変数の書式は、c-IIIIIIIIII-YYYYMMDD-QQ
に変換されます。プレースホルダは次のように定義されます。
IIIIIIIIII
は、DBIDを表します。
YYYYMMDD
は、バックアップが生成された日のタイム・スタンプです。
QQ
は、00
から始まる16進の順序です。最大値はFF
です。
次のコマンドを使用すると、デフォルトの書式を変更できます。ここで、deviceSpecifier
は有効なデバイス・タイプです。'string
'は指定したデバイスに対する有効なハンドルであり、この中に置換変数%F
が含まれている必要があります(他の置換変数を含めることはできません)。
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE deviceSpecifier TO 'string';
たとえば、次のコマンドを実行すると、制御ファイルの自動バックアップにデフォルト以外のファイル名を指定できます。ファイル名で、?
はORACLE_HOME
を表します。
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '?/oradata/cf_%F';
次の例では、自動ストレージ管理ディスク・グループに書き込まれるように自動バックアップを構成します。
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '+dgroup1/%F';
注意:
制御ファイルの自動バックアップに有効な書式は、%D
、%I
、%M
、%Y
、%F
、%T
、%d
および%n
です。これら以外の書式を使用すると、制御ファイルの自動バックアップをリストアできない場合があります。
デバイスに対する制御ファイルの自動バックアップの書式をクリアするには、次のコマンドを使用します。
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR; CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE sbt CLEAR;
データベースに高速リカバリ領域が設定されている場合、ディスクに対する制御ファイルの自動バックアップ書式をクリアすると、制御ファイルの自動バックアップを高速リカバリ領域に格納することができます。
注意:
高速リカバリ領域のすべてのファイルはOracle Databaseによって管理され、関連するファイル名はOracle Managed Files(OMF)形式で管理されます。
RUN
コマンド内またはRMANプロンプトのいずれかでSET
CONTROLFILE
AUTOBACKUP
FORMATコマンドを指定すると、現在のセッションのみで構成済の自動バックアップ書式が上書きされます。優先順位は次のとおりです。
SET CONTROLFILE AUTOBACKUP FORMAT
(RUN
ブロック内)
SET CONTROLFILE AUTOBACKUP FORMAT
(RMAN
プロンプト)CONFIGURE CONTROLFILE AUTOBACKUP FORMAT
次の例では、2つの形式のSET
CONTROLFILE
AUTOBACKUP
FORMAT
の相互作用を示します。
SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'controlfile_%F'; BACKUP AS COPY DATABASE; RUN { SET CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/tmp/%F.bck'; BACKUP AS BACKUPSET DEVICE TYPE DISK DATABASE; }
最初のSET CONTROLFILE AUTOBACKUP FORMAT
は、制御ファイルのすべての構成済自動バックアップ書式より優先され、RMANクライアントが終了するまで制御ファイルの自動バックアップの名前を制御します。RUN
ブロック内のSET CONTROFILE AUTOBACKUP FORMAT
は、RUN
ブロックが有効な間、RUN
ブロックの外にあるSET CONTROLFILE AUTOBACKUP FORMAT
をオーバーライドします。
ほとんどのプラットフォームでは、テープなどのシーケンシャル・メディアにバックアップしたり、これらからリストアする場合には、Oracle Databaseとメディア管理ソフトウェアを統合する必要があります。テープに対するデータベースとファイル・システムの両方のバックアップをサポートしているOracle Secure Backupをメディア・マネージャとして使用できます。特にOracle Secure Backupとともに使用するためにRMANを設定する方法については、『Oracle Secure Backup管理者ガイド』を参照してください。
Oracle Secure Backupを使用しない場合は、サード・パーティのメディア・マネージャを使用できます。この項では、サード・パーティのメディア・マネージャとともに使用するためにRMANを構成する一般的な手順について説明します。実際の手順は、インストールしたメディア管理製品およびデータベースを実行するプラットフォームによって異なります。Oracle Secure Backup以外のメディア・マネージャとともにRMANを使用する場合は、製品固有のすべての情報をベンダーから入手する必要があります。
メディア・マネージャを構成する際、次の項を順に参照してください。
RMANをサード・パーティのメディア・マネージャとともに使用するには、メディア・マネージャをインストールし、RMANと通信できるようにする必要があります。詳細は、メディア管理ベンダーのソフトウェアのドキュメントを参照してください。
通常、まず、メディア管理ソフトウェアをターゲット・ホストまたは本番ネットワークにインストールして構成します。オペレーティング・システム・ファイルのRMAN以外のバックアップをターゲット・データベース・ホスト上に作成できることを確認します。この手順に従って、メディア・マネージャとターゲット・ホストの基本的な統合が正常に完了したことを確認すると、後で行うトラブルシューティングが簡単になります。RMANを使用しないでメディア・マネージャにファイルをバックアップする方法については、メディア管理ソフトウェアのドキュメントを参照してください。
次に、サード・パーティのメディア管理モジュールを入手してインストールし、データベース・サーバーと統合します。このモジュールには、Oracle Databaseがメディア・マネージャへのアクセス時にロードおよび使用するメディア管理ライブラリが含まれています。このモジュールは通常、別ライセンスのサード・パーティ製品です。詳細は、メディア管理ベンダーに問い合せてください。
メディア・マネージャとともにRMANを使用する前に、メディア管理ライブラリの場所を指定します。RMANでメディア・マネージャとの通信に使用するチャネルの割当てまたは構成を行う場合は、ALLOCATE CHANNEL
またはCONFIGURE CHANNEL
コマンドにSBT_LIBRARY
パラメータを指定する必要があります。SBT_LIBRARY
パラメータには、ライブラリへのパスを指定します。
次に、チャネルの構文の例を示します。ここで、pathnameは、ライブラリの絶対ファイル名です。
CONFIGURE CHANNEL DEVICE TYPE sbt
PARMS 'SBT_LIBRARY=pathname';
RMANは、メディア・マネージャと通信するためのチャネルを割り当てる場合、SBT_LIBRARY
パラメータで指定されたライブラリをロードします。
割当て済または事前構成済のチャネルでSBT_LIBRARY
パラメータの値を指定しない場合、RMANは、プラットフォーム固有の安全なデフォルトの場所を検索します。
LinuxおよびUNIXでは、SBTライブラリは次の場所からロードされます。
/opt/oracle/extapi/[32,64]/{SBT}/{VENDOR}/{VERSION}/libobk.so
SBTライブラリのファイル名の拡張子名はプラットフォームによって異なります。
HP-UXの場合は.so
、.sl
AIXの場合は.a
Windowsでは、SBTライブラリは次の場所からロードされます。
%SYSTEM_DRIVE%\oracle\extapi\[32,64]\{SBT}\{VENDOR}\{VERSION}\orasbt.dll
RMANが安全なデフォルトの場所を使用できないか、またはOracle Database 11g以前を使用している場合、RMANは、環境変数PATH
またはLIBPATH
で指定されている場所からSBTライブラリをロードします。
組織に、環境変数PATH
またはLIBPATH
を使用してライブラリ・ディレクトリを指定することを禁止するセキュリティ要件または法規制順守の要件がある場合があります。この動作を無効にするには、PARMS
文字列をSBT_SECURE=1
に設定します。
注意:
デフォルトのメディア管理ライブラリ・ファイルは、標準のデータベース・インストールには含まれません。サード・パーティのメディア管理ソフトウェアをインストールした場合にのみ含まれます。
関連項目:
プラットフォーム上でメディア・マネージャを統合する方法については、オペレーティング・システム固有のデータベース・ドキュメントおよびメディア・ベンダーが提供するドキュメントを参照してください。
メディア管理ソフトウェアのインストール後、Recovery Managerでバックアップを受け入れることができるように、ベンダーの要件に従ってソフトウェアを構成します。インストールしたメディア管理ソフトウェアのタイプによっては、メディア・プールの定義、ユーザーおよびクラスの構成などが必要になる場合があります。
RMANの適切な設定については、メディア管理ベンダーのドキュメントを参照してください。PARMS
パラメータは、メディア・マネージャに指示を送信します。PARMS
の値がALLOCATE CHANNEL
またはCONFIGURE CHANNEL
コマンドで必要な場合、またはFORMAT
文字列がBACKUP
またはCONFIGURE
コマンドで推奨される場合は、その情報についてベンダーのドキュメントを参照してください。
例5-5に、Oracle Secure BackupのPARMS
設定を示します。このPARMS
設定は、datafile_mf
という一連のテープにバックアップを行うようにメディア・マネージャに指示します。PARMS
設定は、常にベンダー固有です。
例5-5 Oracle Secure BackupのPARMS設定
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARMS 'ENV=(OB_MEDIA_FAMILY=datafile_mf)';
関連項目:
ALLOCATE CHANNELの構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』
を参照してください。
チャネル制御オプションについては、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
Oracle Secure Backupに対するRMAN固有のパラメータ設定については、『Oracle Secure Backupリファレンス』を参照してください。
次の手順では、ALLOCATE CHANNEL
コマンドを使用して、RMANとメディア・マネージャの基本的な通信テストを実行します。
チャネルの割当てをテストする手順
チャネルの割当てに失敗すると、データベースは、常に自動診断リポジトリ(ADR)・ホーム・ディレクトリのTRACEサブディレクトリにトレース・ファイルを書き込みます。出力例を次に示します。
SKGFQ OSD: Error in function sbtinit on line 2278 SKGFQ OSD: Look for SBT Trace messages in file /oracle/rdbms/log/sbtio.log SBT Initialize failed for /oracle/lib/libobk.so
関連項目:
自動診断リポジトリを使用してデータベース操作を監視する方法については、『Oracle Database管理者ガイド』を参照してください。
メディア・マネージャでチャネルの割当てをテストした後、テスト・バックアップを作成し、リストアします。
バックアップおよびリストア操作が正常に完了すると、RMANでメディア・マネージャを使用できます。バックアップの失敗には、次の状況が考えられます。
バックアップが中断する。
バックアップが中断した場合、通常はメディア・マネージャがテープのマウントを待機していることを示します。テープ・マウント要求モードのメディア・マネージャ・ジョブの有無を確認し、問題を修正します。「メディア・マネージャにバックアップするためのRMANの構成」の手順を正しく実行していることを確認します。
バックアップが「ORA-27211: メディア管理ライブラリのロードに失敗しました」
を戻して失敗する。
このエラーは、メディア管理ソフトウェアが正しく構成されていないことを示します。「メディア・マネージャにバックアップするためのRMANの構成」の手順を正しく実行していることを確認します。また、メディア管理ソフトウェアの要件に従って、PARMS
およびFORMAT
文字列を設定していることも確認します。
例5-6 テープへのサーバー・パラメータ・ファイルのバックアップ
この例の(メディア管理ベンダーで要求されているチャネル設定に置き換える)コマンドを使用すると、メディア・マネージャにバックアップを作成できるかどうかをテストできます。データベースでサーバー・パラメータ・ファイルが使用されていない場合は、かわりに、現行の制御ファイルをバックアップします。
RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS 'SBT_LIBRARY=/mydir/lib/libobk.so, ENV=(OB_DEVICE=drive1,OB_MEDIA_FAMILY=datafile_mf)'; BACKUP SPFILE; # If your database does not use a server parameter file, use: # BACKUP CURRENT CONTROLFILE; }
例5-7 テープからのサーバー・パラメータ・ファイルのリストア
この例では、例5-6で作成したバックアップを一時ディレクトリにリストアします。メディア・マネージャへのバックアップが正常に完了した後、サーバー・パラメータ・ファイルを初期化パラメータ・ファイルとしてリストアします。
RUN { ALLOCATE CHANNEL c1 DEVICE TYPE sbt PARMS 'SBT_LIBRARY=/mydir/lib/libobk.so, ENV=(OB_DEVICE=drive1,OB_MEDIA_FAMILY=datafile_mf)'; RESTORE SPFILE TO PFILE '/tmp/test_restore.f'; # If your database does not use a server parameter file, use: # RESTORE CURRENT CONTROLFILE TO '/tmp/test_restore.f'; }
メディア・マネージャで使用するRMANチャネルを構成できます。構成済チャネルの概要およびその使用方法については、「高度なチャネル・オプションの構成」を参照してください。
次の項では、メディア・マネージャで使用するチャネルの構成について説明します。
バックアップ・ピース名は、BACKUP
コマンド、CONFIGURE
CHANNEL
コマンドまたはALLOCATE
CHANNEL
コマンドで指定するFORMAT
文字列によって決まります。メディア・マネージャではバックアップ・ピース名はバックアップ・ファイルの名前とみなされるため、すべてのバックアップ・ピースはメディア管理カタログ内で一意の名前を持つ必要があります。
FORMAT
パラメータ内の置換変数を使用すると、一意のバックアップ・ピース名を生成できます。たとえば、%d
にはデータベース名を指定し、%t
にはバックアップ・タイムスタンプを指定します。ほとんどの用途に対して%U
を使用できます。この場合、RMANは一意なファイル名を自動的に生成します。バックアップ・ピース名の例としては、12i1nk47_1_1
があります。FORMAT
パラメータを指定しない場合、RMANは%U
置換変数を含む一意のファイル名を自動的に生成します。
使用しているメディア・マネージャで、ファイルの名前およびサイズに制限がある場合があります。この場合、バックアップ・ピース名がメディア・マネージャの制限に従うように、バックアップ・ピース名の指定をより制御する必要があります。たとえば、14文字のバックアップ・ピース名のみをサポートするメディア・マネージャ、特別なFORMAT
文字列を必要とするメディア・マネージャなどが存在します。%U
置換変数によって生成される一意の名前は、14文字を超えません。
一部のメディア・マネージャでは、バックアップまたはリストア可能なファイルの最大サイズが制限されている場合があります。RMANがこの制限を超えるバックアップ・セットを生成しないようにする必要があります。バックアップ・ピースのサイズを制限するには、CONFIGURE
CHANNEL
およびALLOCATE
CHANNEL
コマンドに設定可能なパラメータMAXPIECESIZE
を使用します。
関連項目:
MAXPIECESIZE
を設定する方法については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』および「RMANバックアップ・ピースの数およびサイズについて」を参照してください
BACKUPコマンドのFORMAT文字列に使用可能な変数の完全なリストは、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
メディア・マネージャでの文字列の文字制限については、メディア管理ソフトウェアのドキュメントを参照してください。
メディア・マネージャをバックアップする最も簡単な方法は、SBTチャネルを構成する方法です。「バックアップ用のデフォルト・デバイスの構成: ディスクまたはSBT」で説明されているように、テープ・デバイスをデフォルトのバックアップ先として使用できます。
メディア・マネージャで使用するチャネルを構成する手順
RMANコマンドを使用して、ターゲット・データベースを Zero Data Loss Recovery Appliance (リカバリ・アプライアンス)にバックアップできます。ターゲット・データベースのバックアップ用の一元化されたリポジトリとしてリカバリ・アプライアンスを使用するには、特定の構成手順が必要です。
リカバリ・アプライアンスへのバックアップを作成するためのRMANを構成するには、次の手順を実行します。
「リカバリ・アプライアンスを使用するための前提条件」で説明している前提条件を満たしていることを確認します。
「リカバリ・アプライアンスにバックアップするためのRMANの構成手順」に示す手順を完了します。
関連項目:
『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』
RMANを使用してターゲット・データベースをリカバリ・アプライアンスにバックアップするには、ターゲット・データベースのOracleホームにリカバリ・アプライアンス・バックアップ・モジュールをインストールする必要があります。バックアップ・モジュールは、デフォルトの場所またはユーザー指定の場所にインストールできます。リカバリ・アプライアンス・バックアップ・モジュールをインストールすると、リカバリ・アプライアンスでターゲット・データベースを認証するために使用される資格証明が含まれるOracleウォレットおよびリカバリ・アプライアンスにバックアップを転送するために使用される共有ライブラリが作成されます。
関連項目:
リカバリ・アプライアンス・バックアップ・モジュールのインストールの詳細は、『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』を参照してください。
RMANを使用してデータベースをリカバリ・アプライアンスにバックアップするには、ターゲット・データベース・ホスト上でリカバリ・アプライアンス・バックアップ・モジュールの場所を決定する必要があります。この場所は、リカバリ・アプライアンスに対してRMANチャネルを構成するか割り当てるときに使用されます。CONFIGURE
またはALLOCATE
コマンドのSBT_LIBRARY
パラメータは、リカバリ・アプライアンス・バックアップ・モジュールの場所を指定します。RMANはリカバリ・アプライアンスをバックアップするときに、SBT_LIBRARY
パラメータで指定された共有ライブラリをロードします。
SBT_LIBRARY
パラメータには、絶対パス名またはファイル名を指定できます。ファイル名を指定すると、RMANによってオペレーティング・システム固有の場所でファイルが検索されます。デフォルトでは、リカバリ・アプライアンス・バックアップ・モジュールは、UNIX/Linuxの場合は$ORACLE_HOME/lib/libra.so
、Windowsの場合は%ORACLE_HOME\database\lib\libra.sso
にあります。
例5-8 チャネル構成時におけるリカバリ・アプライアンス・バックアップ・モジュールの場所の指定
次のコマンドは、Linuxでリカバリ・アプライアンス・バックアップ・モジュールの絶対パス名を指定することによってRMAN SBTチャネルを構成します。
CONFIGURE CHANNEL DEVICE TYPE sbt PARAMS 'SBT_LIBRARY=/u01/oracle/lib/libra.so';
保護されたデータベースに格納されているクライアント構成ファイルには、リカバリ・アプライアンス・バックアップ・モジュールがリカバリ・アプライアンスと通信するために使用する構成設定が含まれます。このファイルは、リカバリ・アプライアンス・バックアップ・モジュールのインストール時に自動的に作成されます。これには、リカバリ・アプライアンスでターゲット・データベースを認証するために必要な資格証明が格納されるOracleウォレットの場所が含まれる必要があります。他のオプション設定が含まれる場合もあります。
リカバリ・アプライアンスを使用する場合、クライアント構成設定をRMANコマンドに含めることができます。RMANのCONFIGURE CHANNEL
またはALLOCATE CHANNEL
コマンドのENV
パラメータを使用して、リカバリ・アプライアンスのクライアント構成パラメータを直接指定します。
関連項目:
『Zero Data Loss Recovery Appliance保護されたデータベースの構成ガイド』
例5-9 リカバリ・アプライアンスのクライアント構成設定の指定
次のコマンドは、CONFIGURE CHANNEL
コマンドの一部としてリカバリ・アプライアンスのクライアント構成設定を直接指定します。
CONFIGURE CHANNEL DEVICE TYPE 'SBT_TAPE' PARAMS 'SBT_LIBRARY= libra.so, ENV=(BA_WALLET=location=file:/home/oracle/product/12.1.0/dbhome_1/wallet credential_alias=ra-scan:1521/zdlra5:dedicated)';
この例では、ra-scan
はリカバリ・アプライアンスのSCANであり、zdlra5
はリカバリ・アプライアンス・メタデータ・データベースのサービス名です。
「高速リカバリ領域について」で説明されているように、高速リカバリ領域機能を使用すると、バックアップおよびリカバリに関連する様々なファイルの作成と管理をデータベースで実行可能なディスク領域を設定できます。高速リカバリ領域を使用することをお薦めします。バックアップ計画を実装する場合の最初の手順の1つとして、高速リカバリ領域を構成することを検討してください。
この項では、高速リカバリ領域の機能の概要、この領域に格納されているファイルの識別方法、ファイル管理の規則および最も重要な構成オプションの概要について説明します。この項の内容は、次のとおりです。
関連項目:
高速リカバリ領域には、制御ファイル、オンラインREDOログ、アーカイブREDOログ、フラッシュバック・ログおよびRecovery Managerバックアップを含めることができます。リカバリ領域内のファイルは、永続的なファイルまたは一時的なファイルに分類されます。永続的なファイルとは、データベース・インスタンスで使用されるアクティブなファイルのことです。永続的でないすべてのファイルは一時的なファイルとなります。通常、Oracle Databaseでは、バックアップの保存方針に従って不要になった一時的なファイルまたはテープにバックアップされた一時的なファイルは最終的に削除されます。
高速リカバリ領域とは、RMANのディスク・バックアップ、制御ファイルの自動バックアップおよびアーカイブREDOログ・ファイルを保持するために使用できるOracle Database管理領域です。この場所に配置されたファイルはOracle Databaseによってメンテナンスされ、生成されたファイル名はOracle Managed Files(OMF)形式でメンテナンスされます。
表5-2に、リカバリ領域内のファイル、各ファイルの分類(永続的または一時的)およびデータベースの可用性への影響を示します。
表5-2 高速リカバリ領域内のファイル
ファイル | タイプ | 高速リカバリ領域にアクセスできない場合のデータベースの動作 |
---|---|---|
永続的 |
データベースで高速リカバリ領域に格納されている制御ファイルの多重コピーに書き込むことができない場合は、インスタンスで障害が発生します。アクセス可能な多重コピーがリカバリ領域外にある場合でも障害が発生します。 参照: リカバリ領域で制御ファイルを構成する方法については、「制御ファイルの場所の構成」を参照してください。 |
|
オンラインREDOログ・ファイル |
永続的 |
高速リカバリ領域外のアクセス可能な場所にオンラインREDOログのミラー化されたコピーが存在している場合、インスタンスの可用性は影響を受けません。そうでない場合、インスタンスで障害が発生します。 参照: リカバリ領域でオンラインREDOログ・ファイルを構成する方法については、「オンラインREDOログの場所の構成」を参照してください。 |
アーカイブREDOログ・ファイル |
一時的 |
高速リカバリ領域外のアクセス可能な場所にログがアーカイブされる場合、インスタンスの可用性は影響を受けません。そうでない場合、データベースは、オンラインREDOログをアーカイブできないため最終的に停止します。 参照: リカバリ領域でアーカイブREDOログ・ファイルを構成する方法については、「アーカイブREDOログの場所の構成」を参照してください。 |
外部のアーカイブREDOログ・ファイル |
一時的 |
インスタンスの可用性は影響を受けません。 注意: 外部のアーカイブREDOログ・ファイルは、LogMinerセッション用のロジカル・スタンバイ・データベースによって受信されます。通常のアーカイブ・ログとは異なり、外部のアーカイブREDOログは別のDBIDに関連付けられます。このため、ロジカル・スタンバイ・データベース上ではバックアップまたはリストアできません。 |
データファイルおよび制御ファイルのイメージ・コピー |
一時的 |
インスタンスの可用性は影響を受けません。 |
バックアップ・ピース |
一時的 |
インスタンスの可用性は影響を受けません。 |
フラッシュバック・ログ |
一時的 |
保証付きリストア・ポイントが定義されていない場合、インスタンスの可用性は影響を受けません。この場合、データベースによって、フラッシュバック・データベースが自動的に無効となり、アラート・ログにメッセージが書き込まれてデータベース処理が続行されます。保証付きリストア・ポイントが構成されている場合、インスタンスはフラッシュバック・ログとの相互依存関係が原因で失敗します。 フラッシュバック・ログは、データベースのPoint-in-Timeリカバリ(DBPITR)にかわる有効な機能を提供するOracle Flashback Database機能によって生成されます。これらのログは一時的なファイルであり、高速リカバリ領域に格納する必要があります。他の一時的なファイルとは異なり、フラッシュバック・ログは他のメディアにバックアップできません。高速リカバリ領域にフラッシュバック・ログを格納できる十分な領域がなく、リカバリ領域が他のバックアップ保存要件を満たしている場合、そのリカバリ領域では、フラッシュバック・ログを削除することができます。 参照: フラッシュバック・ロギングを有効にする方法については、「フラッシュバック・データベースの有効化」を参照してください。 |
Windowsプラットフォームを使用している場合は、Volume Shadow Copy Service(VSS)をOracle VSSライターとともに使用できます。この場合、高速リカバリ領域によって、VSSスナップショットにバックアップされているファイルの管理が自動化され、必要に応じてそれらのファイルが削除されます。
関連項目:
VSS環境でバックアップを作成する方法については、『Oracle Databaseプラットフォーム・ガイドfor Microsoft Windows』を参照してください。
高速リカバリ領域は、Oracle Managed Files(OMF)および自動ストレージ管理(ASM)とともに使用できます。高速リカバリ領域は、OMFの上に構築されるため、OMFを格納できるすべての場所に格納できます。リカバリ領域は、ASMで使用することもできます。
ASMストレージに高速リカバリ領域を設定しない場合でも、Oracle Managed Filesを使用してASMディスク・グループでバックアップ・ファイルを管理することができます。しかし、新しいバックアップで領域が必要となった場合にリカバリ可能目標を達成するためにファイルを自動削除する必要がなくなるため、高速リカバリ領域の主要なメリットのうちの1つ(ファイルの自動削除)が失われます。ただし、OMFの他の自動機能は動作します。
バックアップを格納する場合、高速リカバリ領域を使用せずにASMでOMFを使用することはできますが、お薦めしません。ASM下のファイルは直接操作しにくいためです。
高速リカバリ領域内の領域は、保存方針に従って保持する必要があるバックアップおよびアーカイブ・ログと、削除される可能性がある他のファイルの間でバランスが取られています。Oracle Databaseでは、他の目的のために領域の再利用が必要になるまで、対象のファイルは高速リカバリ領域から削除されません。多くの場合、最近テープに移されたファイルはディスクでリカバリに使用できます。リカバリ領域は、テープに対するキャッシュとして使用できます。Oracle Databaseでは、高速リカバリ領域が一杯になると、リカバリ領域内の領域を再利用するために必要に応じて対象のファイルが自動的に削除されます。
関連項目:
「高速リカバリ領域の削除の規則」および「高速リカバリ領域が一杯になった場合の対応」を参照してください。
高速リカバリ領域を有効化するには、2つの初期化パラメータを設定します。これらのパラメータを使用すると、データベース・インスタンスを停止して再起動してもしなくても、高速リカバリ領域を有効化できます。
まず、DB_RECOVERY_FILE_DEST_SIZE
パラメータを使用して高速リカバリ領域のサイズを設定します。次に、DB_RECOVERY_FILE_DEST
パラメータを使用してフラッシュ・リカバリ・ファイルの物理的な場所を設定します。
表5-3は、高速リカバリ領域の有効化に必須のパラメータおよびオプションのパラメータを示しています。
Oracle Real Application Clusters(Oracle RAC)データベースでは、すべてのインスタンスでこれらの初期化パラメータの値が同じである必要があります。この場所は、クラスタ・ファイル・システム、ASMまたは共有ディレクトリ上である必要があります。
表5-3 高速リカバリ領域の初期化パラメータ
初期化パラメータ | 必須 | 説明 |
---|---|---|
|
該当 |
ディスク割当て制限を指定します。ディスク割当て制限は、このデータベースのリカバリ領域で使用されるデータの最大格納量をバイト単位で示したものです。このパラメータは、
|
|
該当 |
リカバリ領域の場所を指定します。ファイル・システム上のディレクトリまたはASMディスク・グループを指定することができますが、RAWディスクは指定できません。この場所は、ディスク割当て制限に対応できる十分な大きさである必要があります。 |
|
該当せず |
データベースをフラッシュバックできる時点の上限(分)を指定します。このパラメータは、フラッシュバック・データベースでのみ必要です。 このパラメータによって、リカバリ領域で保持されるフラッシュバック・ログ・データのサイズが間接的に決定されます。ただし、データベースによって生成されるフラッシュバック・ログのサイズは、データベース・ワークロードによって大幅に異なる可能性があります。一定期間に行われるデータベース更新によって影響を受けるブロックが増えると、この期間に生成されるフラッシュバック・ログ・データによって使用されるディスク領域も増えます。 |
関連項目:
ALTER SYSTEMの構文については、『Oracle Database SQL言語リファレンス』
を参照してください。データベース初期化パラメータを設定および変更する方法の詳細は、『Oracle Database管理者ガイド』を参照してください。
高速リカバリ領域は、大きいほど便利になります。高速リカバリ領域は、表5-2に示されているファイルを格納できる十分なサイズにすることをお薦めします。リカバリ領域には、データベース内のすべてのデータファイルのコピーおよび選択したバックアップ計画で使用される増分バックアップを格納できる必要があります。
前述のサイズの領域を保持することが難しい場合は、最も重要な表領域のバックアップ、およびテープにまだコピーされていないすべてのアーカイブ・ログを保持できるサイズの領域を作成することをお薦めします。最低限、高速リカバリ領域は、テープにコピーされていないアーカイブREDOログを格納できるサイズにする必要があります。リカバリ領域に新しいフラッシュバック・ログを格納できる十分な領域がなく、リカバリ領域が他のバックアップ保存要件を満たしている場合、そのリカバリ領域では、古いフラッシュバック・ログを削除して領域を確保することができます。
有効な高速リカバリ領域のサイズを判断する方法は、次の状況によって異なります。
データベースに、頻繁に変更されるデータ・ブロックが少数含まれているか、多数含まれているか
バックアップをディスクにのみ格納するか、ディスクおよびテープに格納するか
冗長性に基づいたバックアップの保存方針を使用するか、リカバリ期間に基づいた保存方針を使用するか
論理エラーに対応する場合のPoint-in-Timeリカバリの代替方法として、フラッシュバック・データベースの使用を計画するか、保証付きリストア・ポイントの使用を計画するか
フラッシュバック・ロギングを有効にする場合、生成されるフラッシュバック・ログのサイズは、生成されるREDOログのサイズと同程度になります。たとえば、DB_FLASHBACK_RETENTION_TARGET
を24時間に設定し、1日に20GBのREDOがデータベースで生成される場合は、目安として20から30GBのディスク領域をフラッシュバック・ログに使用できるようにします。フラッシュバック・ロギングが有効になっている場合、同じ目安が保証付きリストア・ポイントに適用されます。たとえば、毎日20GBのREDOがデータベースで生成され、保証付きリストア・ポイントが1日保持される場合は、20GBから30GBのディスク領域を割り当てます。
バックアップの保存方針がREDUNDANCY 1
に設定されている場合に高速リカバリ領域のサイズを決定し、永久増分の使用に関してOracle推奨の計画に従うとします。この例では、次の式を使用して、ディスク割当て制限を見積もります。nは、増分更新の間隔(日)です。yは、ロジカル・スタンバイ・データベースでの外部のアーカイブREDOログの適用の遅延です。
Disk Quota = Size of a copy of database + Size of an incremental backup + Size of (n+1) days of archived redo logs + Size of (y+1) days of foreign archived redo logs (for logical standby) + Size of control file + Size of an online redo log member * number of log groups + Size of flashback logs (based on DB_FLASHBACK_RETENTION_TARGET value)
高速リカバリ領域は、データファイル、制御ファイル、オンラインREDOログなどのアクティブなデータベース・ファイルがデータベースによって保持されているデータベース領域とは別のディスクに配置します。データベース領域と同じディスクに高速リカバリ領域を設定している場合、メディアで障害が発生すると、アクティブなデータベース・ファイルとバックアップの両方を失う可能性があります。
DB_RECOVERY_FILE_DEST
は、DB_CREATE_FILE_DEST
初期化パラメータまたはDB_CREATE_ONLINE_LOG_DEST_
n
初期化パラメータのいずれとも異なる値に設定することをお薦めします。DB_RECOVERY_FILE_DEST
がこれらのパラメータと同じ場合は、データベースによってアラート・ログに警告が書き込まれます。
次のいずれかの条件を満たす場合、複数のデータベースでDB_RECOVERY_FILE_DEST
に同じ値を指定できます。
DB_UNIQUE_NAME
初期化パラメータが指定されている2つのデータベースで、DB_UNIQUE_NAME
の値が同じではない。
DB_UNIQUE_NAME
が指定されていないデータベースで、2つのデータベースのDB_NAME
の値が同じではない。
このように、複数のデータベースで1つのリカバリ領域を共有する場合、リカバリ領域の場所は、すべてのデータベースのリカバリ・ファイルを保持できるサイズにする必要があります。データベースのDB_RECOVERY_FILE_DEST_SIZE
の値を追加し、ミラー化または圧縮などのオーバーヘッドを見込みます。
表5-3は、高速リカバリ領域を有効にするために設定する必要がある初期化パラメータを示しています。この項では、リカバリ領域の場所の指定方法およびその初期サイズの設定方法について説明します。
高速リカバリ領域の最適なサイズを決定する手順
フラッシュバック・データベースが有効になっている場合、またはアーカイブ・ログに高速リカバリ領域を使用している場合は、次の中から適切な手順を実行します。それ以外の場合は、手順3に進みます。
「高速リカバリ領域内のファイルの概要」で説明されているように、現行の制御ファイルおよびオンラインREDOログの多重コピーのみが永続的なファイルです。
次の各項では、制御ファイルおよびREDOログの場所の設定方法について説明します。
オンラインREDOログ・ファイルが作成される場所を決定する初期化パラメータは、DB_CREATE_ONLINE_LOG_DEST_
n
、DB_RECOVERY_FILE_DEST
およびDB_CREATE_FILE_DEST
です。これらのパラメータの組合せによるオンラインREDOログの作成への影響の詳細は、『Oracle Database SQL言語リファレンス』のCREATE
DATABASE
文のLOGFILE
句に関する説明を参照してください。
次のSQL文を使用すると、高速リカバリ領域にオンラインREDOログを作成できます。
CREATE DATABASE
ALTER DATABASE ADD LOGFILE
ALTER DATABASE ADD STANDBY LOGFILE
ALTER DATABASE OPEN RESETLOGS
高速リカバリ領域に作成されるオンライン・ログのデフォルトのサイズは100MBです。ログ・メンバーのファイル名は、データベースによって自動的に生成されます。
初期化パラメータCONTROL_FILES
、DB_CREATE_ONLINE_LOG_DEST_
n
、DB_RECOVERY_FILE_DEST
およびDB_CREATE_FILE_DEST
が相互に作用して、データベース制御ファイルが作成される場所が決まります。これらのパラメータの相互作用の詳細は、『Oracle Database SQL言語リファレンス』のCREATE CONTROLFILE
のセマンティクスに関する説明を参照してください。
データベースによってOracle管理の制御ファイルが作成され、そのデータベースでサーバー・パラメータ・ファイルが使用されている場合は、そのサーバー・パラメータ・ファイルにCONTROL_FILES
初期化パラメータが設定されます。このデータベースでクライアント側の初期化パラメータ・ファイルが使用されている場合は、初期化パラメータ・ファイルにCONTROL_FILES
初期化パラメータを手動で設定する必要があります。
アーカイブ・ログはデータベースによって自動的に管理されるため、アーカイブの場所として高速リカバリ領域を使用することをお薦めします。高速リカバリ領域内のアーカイブ・ログに対して生成されるファイル名はOracle Managed Files用のファイル名であり、LOG_ARCHIVE_FORMAT
では決定されません。どのアーカイブ・スキームを選択した場合も、常にアーカイブREDOログの複数のコピーを作成することをお薦めします。
次に、アーカイブREDOログ用の基本的なオプションを推奨順に示します。
高速リカバリ領域を使用する場合、LOG_ARCHIVE_DEST
およびLOG_ARCHIVE_DUPLEX_DEST
初期化パラメータは使用できません。これらのパラメータを使用すると、インスタンスを開始できなくなります。かわりに、LOG_ARCHIVE_DEST_
n
パラメータを設定します。データベースでLOG_ARCHIVE_DEST_
n
が使用されている場合は、リカバリ領域を構成できます。
また、アーカイブを有効にしており、LOG_ARCHIVE_DEST
、LOG_ARCHIVE_DEST_
n
またはDB_RECOVERY_FILE_DEST
のいずれの値も設定していない場合、REDOログはプラットフォーム固有のデフォルトの場所にアーカイブされることにも注意してください。たとえば、Solarisでのデフォルトの場所は?/dbs
です。
関連項目:
LOG_ARCHIVE_DEST_
n
パラメータのセマンティクスの詳細は、『Oracle Databaseリファレンス』を参照してください。
特定のRMANコマンドまたは暗黙的な処理(制御ファイルの自動バックアップなど)によって、高速リカバリ領域にファイルを作成できます。この項では、コマンドによって高速リカバリ領域または別の場所のいずれかにファイルを作成するかどうかを制御する方法について説明します。コマンドを次に示します。
BACKUP
ディスク・バックアップの目的でFORMAT
句を指定していない場合、RMANは、Oracle Managed Files (OMF)の形式の名前が付いたバックアップ・ピースおよびイメージ・コピーを高速リカバリ領域に作成します。高速リカバリ領域が有効になっていて、BACKUPまたはチャネルでFORMAT
を指定している
場合、RMANは、リカバリ領域ではなくプラットフォーム固有の場所にバックアップを作成します。
制御ファイルの自動バックアップ
RMANは、制御ファイルの自動バックアップを高速リカバリ領域に作成できます。RMANコマンドCONFIGURE
CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK CLEAR
を使用すると、ディスク上での制御ファイルの自動バックアップ場所を指定したすべての構成済書式オプションをクリアできます。他の格納場所が構成されていない場合、RMANは高速リカバリ領域に制御ファイルの自動バックアップを作成します。
RESTORE
ARCHIVELOG
LOG_ARCHIVE_DEST_
n
パラメータをLOCATION=USE_DB_RECOVERY_FILE_DEST
に明示的または暗黙的に設定します。SET
ARCHIVELOG DESTINATION
を指定してこの動作を無効にしない場合、RMANはアーカイブREDOログ・ファイルを高速リカバリ領域にリストアします。
RECOVER
DATABASE
またはRECOVER TABLESPACE
、RECOVER ... BLOCK
、およびFLASHBACK DATABASE
これらのコマンドを使用すると、コマンドからの要求に応じて、メディア・リカバリ中に使用されるアーカイブREDOログ・ファイルをバックアップからリストアできます。RMANは、これらの操作中に必要なすべてのREDOログ・ファイルを高速リカバリ領域にリストアし、メディア・リカバリ中に適用した後で削除します。
リストアされたアーカイブ・ログを高速リカバリ領域に格納するには、LOG_ARCHIVE_DEST_
n
パラメータのいずれかをLOCATION = USE_DB_RECOVERY_FILE_DEST
に設定します。リストアされたログを他の場所に格納するためのSET ARCHIVELOG DESTINATION
を使用していないことを確認してください。
「バックアップの保存方針について」で説明されているように、バックアップの保存方針では、データのリカバリ要件に従って保存する必要があるバックアップを指定します。この保存方針は、リカバリ期間または冗長性のいずれに基づいていてもかまいません。保存方針を指定するには、CONFIGURE RETENTION POLICY
コマンドを使用します。
この項の内容は、次のとおりです。
関連項目:
CONFIGUREの構文については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。
CONFIGURE
RETENTION
POLICY
コマンドのREDUNDANCY
パラメータでは、RMANが保持する各データファイルおよび制御ファイルの全体またはレベル0のバックアップの数を指定します。特定のデータファイルまたは制御ファイルの全体またはレベル0のバックアップの数がREDUNDANCY
の設定を超えると、RMANは余分なバックアップを不要とみなします。デフォルトの保存方針は、REDUNDANCY 1
です。
作成するバックアップが増えるに従い、RMANは保存するバックアップおよび不要なバックアップを記録します。RMANは、不要でないバックアップのリカバリに必要なすべてのアーカイブ・ログおよび増分バックアップを保持します。
月曜日、火曜日、水曜日および木曜日にデータファイル7の全体バックアップを作成するとします。このデータファイルの全体バックアップは4つになります。REDUNDANCY
が2
の場合、月曜日と火曜日のバックアップは不要になります。金曜日にもう1つのバックアップを作成すると、データファイル7の水曜日のバックアップが不要となります。
REDUNDANCY
が1
であるという別の場合を想定します。月曜日の正午にレベル0のデータベース・バックアップを実行し、火曜日と水曜日の正午にレベル1の累積バックアップを、木曜日の正午にレベル0のバックアップを実行します。それぞれの日次バックアップの直後にDELETE OBSOLETE
コマンドを実行します。水曜日にDELETE
コマンドを実行しても、火曜日のレベル1のバックアップは冗長でないため、削除されません。火曜日のレベル1のバックアップは、火曜日の正午から水曜日の正午までの時点に月曜日のレベル0のバックアップをリカバリするために使用できます。ただし、木曜日のDELETE
コマンドでは、以前のレベル0およびレベル1のバックアップが削除されます。
次の例のように、RMANプロンプトでCONFIGURE
RETENTION
POLICY
コマンドを実行します。
CONFIGURE RETENTION POLICY TO REDUNDANCY 3;
CONFIGURE
コマンドのRECOVERY
WINDOW
パラメータでは、現時点と最初のリカバリ可能ポイント間の日数を指定します。Recovery Managerは、全体バックアップまたはレベル0の増分バックアップがリカバリ期間内にある場合はいずれのバックアップも不要とみなしません。また、Recovery Managerは、リカバリ期間内のランダムな時点までリカバリする必要があるすべてのアーカイブ・ログおよびレベル1増分バックアップを保持します。
RMANプロンプトでCONFIGURE
RETENTION
POLICY
コマンドを実行します。次の例では、先週の任意の時点までデータベースをリカバリできます。
CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS;
RMANは、リカバリ期間によって不要とみなされたバックアップを自動的には削除しません。かわりに、RMANは、REPORT
OBSOLETE
の出力やV$BACKUP_FILES
のOBSOLETE
列に、それらをOBSOLETE
として表示します。DELETE
OBSOLETE
コマンドを実行すると、RMANは不要なファイルを削除します。
保存方針を無効にすると、RMANはすべてのバックアップを必要とみなします。保存方針を無効にするには、次のコマンドを実行します。
CONFIGURE RETENTION POLICY TO NONE;
保存方針をNONE
に構成することは、保存方針を消去することとは異なります。消去すると、デフォルトのREDUNDANCY 1
の設定に戻りますが、NONE
では完全に無効になります。
保存方針を無効にし、保存方針オプションをコマンドに渡さずにREPORT OBSOLETE
またはDELETE OBSOLETE
を実行すると、不要なバックアップを判断する保存方針が存在しないため、RMANはエラーを発行します。
注意:
高速リカバリ領域を使用している場合は、保存方針が無効になっている状態でデータベースを実行しないでください。ファイルが不要とみなされないと、ファイルを高速リカバリ領域から削除できるのは、そのファイルが他のディスクの場所またはテープなどの3次ストレージ・デバイスにバックアップされた場合のみになります。このアクションによって、リカバリ領域内のすべての領域が使用され、データベースの通常の操作に影響を及ぼす可能性があります。「Oracleによる高速リカバリ領域でのディスク領域の管理方法」を参照してください。
CONFIGURE
コマンドを実行して、バックアップの最適化の有効と無効を切り替えます。バックアップを最適化すると、同じファイルまたは同じバージョンのファイルがバックアップされている場合などの特定の状況においてファイルのバックアップがスキップされます。
この項の内容は、次のとおりです。
バックアップの最適化を有効にすると、BACKUP
コマンドは、同一のファイルが指定のデバイス・タイプにバックアップされている場合に、ファイルのバックアップをスキップします。表5-4に、すでにバックアップされているファイルと同一かどうかを判断するためにRMANで使用される基準を示します。
表5-4 同一ファイルかどうかを判断する基準
ファイル・タイプ | 同一ファイルかどうかを判断する基準 |
---|---|
データファイル |
すでにバックアップに含まれているデータファイルと同じDBID、チェックポイントSCN、作成SCN、および |
アーカイブ・ログ |
同じDBID、スレッド、順序番号、および |
バックアップ・セット |
同じDBID、バックアップ・セット・レコードIDおよびスタンプ |
ファイルが同一でありバックアップされているとRMANが判断した場合、そのファイルはスキップ対象になります。 ただし、RMANは、ファイルをスキップするかどうかについて、さらに詳細な確認を行う必要があります。これは、RMANが指定されたデバイス・タイプに十分なバックアップを保持しているかどうかを判断するアルゴリズムに、保存方針とバックアップ多重化機能の両方の要素があるためです。
Recovery Managerは、次の条件を満たしている場合にバックアップの最適化を使用します。
CONFIGURE
BACKUP
OPTIMIZATION
ON
コマンドを実行し、バックアップの最適化を有効にしている。
BACKUP
DATABASE
、ALL
またはLIKE
オプションを指定したBACKUP
ARCHIVELOG
、BACKUP
BACKUPSET
ALL
、BACKUP RECOVERY AREA
、BACKUP RECOVERY FILES
あるいはBACKUP DATAFILECOPY
を実行する。
注意:
BACKUP RECOVERY AREA
またはBACKUP RECOVERY FILES
と組み合せてTO DESTINATION
を使用すると、RMANは、指定したTO DESTINATION
の場所に同じバックアップを持つファイルのバックアップのみをスキップします。
1つのタイプのチャネルのみを割り当てている(1つのBACKUPコマンドでディスクとSBTチャネルを併用していない)。
注意:
UNDOのバックアップの最適化では、RMANは、すでにコミットされているトランザクションの(バックアップのリカバリに不要となった)UNDOの変更を除外します。バックアップの最適化を有効または無効にすることができますが、UNDOのバックアップの最適化は組込み動作です。
たとえば、バックアップの最適化を構成したと想定します。これらのコマンドは、データベース、すべてのアーカイブ・ログおよびすべてのバックアップ・セットをテープにバックアップします。
BACKUP DEVICE TYPE sbt DATABASE PLUS ARCHIVELOG; BACKUP DEVICE TYPE sbt BACKUPSET ALL;
バックアップされたすべてのファイルが最後のバックアップ以降に変更されていない場合、RMANはこれらのファイルを再度バックアップしません。また、RMANは、ファイルがすでにバックアップされているため、コマンドで指定されたすべてのファイルをスキップする場合、エラーを通知しません。
BACKUP
コマンドにFORCE
オプションを指定すると、いつでも最適化を無効にできます。たとえば、次のコマンドを実行します。
BACKUP DATABASE FORCE; BACKUP ARCHIVELOG ALL FORCE;
関連項目:
バックアップの最適化の規則の詳細は、『Oracle Databaseバックアップおよびリカバリ・リファレンス』のCONFIGUREエントリに関する項を参照してください。
バックアップの最適化は、SBTデバイスへのバックアップ時に常に適用されるわけではありません。リカバリ期間および冗長性に基づく保存方針の通常のバックアップの最適化の動作の例外については、以降の項を参照してください。
注意:
メディア・マネージャで独自の内部期限切れ方針を使用している場合、バックアップの最適化を有効にするには、注意が必要です。定期的にCROSSCHECK
コマンドを実行して、RMANリポジトリをメディア・マネージャと同期化してください。同期化を実行しないと、RMANは、テープ上に格納されたバックアップがメディア・マネージャによって廃棄されたことを認識できず、最適化によってバックアップをスキップする場合があります。
この項の内容は、次のとおりです。
バックアップの最適化が有効になっていて、リカバリ期間に基づくバックアップの保存方針が構成されているとします。この場合、SBTバックアップを実行すると、RMANは、最新のバックアップがリカバリ期間の前に作成されているデータファイルを常にバックアップします。たとえば、次の例を想定します。
現在の時点は2月21日です。
リカバリ期間は7日です。
表領域tools
のテープへの最新のバックアップは1月3日に作成されています。
表領域tools
は読取り専用です。
2月21日に、表領域tools
をテープにバックアップするコマンドを発行します。この表領域は読取り専用であるため、1月3日のバックアップ以降も変更されていませんが、RMANはバックアップを実行します。これは、7日間のリカバリ期間内にこの表領域のバックアップが存在しないためです。
この動作によって、メディア・マネージャは古いテープを期限切れにすることができます。この動作が行われない場合、メディア・マネージャは、表領域TOOLS
の1月3日のバックアップを無期限に保持し続けることになります。2月21日に表領域tools
のより新しいバックアップを作成することによって、メディア・マネージャは、1月3日のバックアップを含むテープを期限切れとして処理できます。
冗長性に基づく保存方針を構成するとします。この場合、RMANは、SBTへのオフラインまたは読取り専用のデータファイルのバックアップがr
+ 1個存在する場合にのみ、これらのファイルのバックアップをスキップします。ここで、r
はCONFIGURE
RETENTION
POLICY
TO
REDUNDANCY
r
で設定された値です。
たとえば、バックアップの最適化を有効にして、次の保存方針を設定するとします。
CONFIGURE DEFAULT DEVICE TYPE TO sbt; CONFIGURE BACKUP OPTIMIZATION ON; CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
この例では、RMANは、3つの同一のファイルがバックアップされている場合にのみ、バックアップをスキップします。ここで、これまでにバックアップしたことのない読取り/書込み表領域users
に対して、1週間の間に次の表に示す処理を実行するとします。
表5-5 バックアップの最適化への冗長性設定の影響
曜日 | 処理 | 結果 | 冗長バックアップ |
---|---|---|---|
月曜日 |
|
||
火曜日 |
|
|
|
水曜日 |
|
|
|
木曜日 |
|
|
火曜日のバックアップ |
金曜日 |
|
|
火曜日のバックアップ |
土曜日 |
|
|
火曜日のバックアップ |
日曜日 |
|
火曜日のバックアップが削除されます。 |
|
月曜日 |
|
|
水曜日のバックアップ |
火曜日、水曜日および木曜日のバックアップによって、オフライン表領域users
がバックアップされ、3つ(冗長性設定+ 1)のバックアップが存在する必要があるという条件を満たします。金曜日および土曜日のバックアップでは、バックアップの最適化のため、users
表領域のバックアップは行われません。users
の火曜日のバックアップは、木曜日以降に不要となります。
日曜日にすべての不要なバックアップを削除すると、users
の火曜日のバックアップも削除されます。火曜日のバックアップは、保存方針設定によって不要となります。月曜日のデータベース全体のバックアップによって、users
表領域がバックアップされ、3つ(冗長性設定+ 1)のバックアップが存在する必要があるという条件を満たします。この方法で、時間の経過とともにテープを再利用できます。
RMANを使用すると、アーカイブREDOログがディスクからの削除対象となる場合を制御する永続的な構成を作成できます。
この項の内容は、次のとおりです。
CONFIGURE ARCHIVELOG DELETION POLICY
コマンドを使用すると、アーカイブREDOログが削除対象になる場合を指定できます。この削除方針は、高速リカバリ領域を含むすべてのアーカイブ先に適用されます。
アーカイブREDOログは、データベースによって自動的に削除されるか、またはユーザーが実行したRMANコマンドによって削除されます。高速リカバリ領域内のログのみが、データベースによって自動的に削除されます。高速リカバリ領域内のアーカイブREDOログ・ファイルの場合は、データベースによってできるかぎり保存され、追加のディスク領域が必要になると対象となるログが削除されます。高速リカバリ領域の内部にあるか外部にあるかに関係なく、BACKUP
... DELETE INPUT
またはDELETE ARCHIVELOG
コマンドを発行すると、どの場所からも対象のログを手動で削除できます。
デフォルトでは、アーカイブREDOログの削除方針はありません。そのためアーカイブREDOログの方針はNONE
句に設定されています。この特定の場合、高速リカバリ領域は、ディスクまたはSBTに1回以上バックアップされているとき、またはバックアップ保存方針に従ってログが不要になったときに、リカバリ領域内のアーカイブREDOログ・ファイルを削除対象であるとみなします。バックアップ保存方針では、ログは保証付きリストア・ポイントで不要である場合およびOracle Flashback Databaseで不要である場合にのみ不要とみなされます。アーカイブREDOログは、ログがSYSDATE-'DB_FLASHBACK_RETENTION_TARGET'
より後に作成された場合にフラッシュバック・データベースで必要とされます。
関連項目:
方針のオプションの詳細は、『Oracle Databaseバックアップおよびリカバリ・リファレンス』のCONFIGURE ARCHIVELOG DELETION POLICYエントリを参照してください。
Data Guard環境でのアーカイブ・ログの削除方針の構成方法については、『Oracle Data Guard概要および管理』を参照してください。
CONFIGURE ARCHIVELOG DELETION POLICY BACKED UP
integer
TIMES TO DEVICE TYPE
コマンドを使用すると、アーカイブ・ログの削除方針を有効化できます。この構成では、指定した数のアーカイブ・ログのバックアップが指定したデバイス・タイプに存在する場合にのみアーカイブ・ログが削除対象になるように指定されます。
削除方針がBACKED UP
integer
TIMES
句で構成されている場合、指定したデバイス・タイプ上にinteger
個のバックアップが存在していないかぎり、BACKUP ARCHIVELOG
コマンドはログをコピーします。ログのinteger
個のバックアップが存在している場合、BACKUP ARCHIVELOG
コマンドはログをスキップします。このように、アーカイブ・ログの削除方針は、BACKUP ARCHIVELOG
コマンドのデフォルトのNOT BACKED UP
integer
TIMES
句として機能します。BACKUP
コマンドにFORCE
オプションを指定すると、削除方針を無効にできます。
アーカイブ・ログの削除方針には、Data Guard環境固有のオプションもあります。たとえば、APPLIED ON STANDBY
句を指定すると、RMANは、すべての必須のリモート転送先でログが適用された後、ログを削除します。SHIPPED TO STANDBY
を指定すると、RMANは、すべての必須のスタンバイ転送先にログが転送された後、ログを削除します。
関連項目:
方針のオプションの詳細は、『Oracle Databaseバックアップおよびリカバリ・リファレンス』のCONFIGURE ARCHIVELOG DELETION POLICYエントリを参照してください。
Data Guard環境でのアーカイブ・ログの削除方針の構成方法については、『Oracle Data Guard概要および管理』を参照してください。
Data Guard環境でRMANを使用する場合、CONFIGURE
コマンドを使用すると、この環境での物理データベースの設定の登録および構成を行うことができます。RMANは、DB_UNIQUE_NAME
初期化パラメータを使用して、データベースを別のデータベースと区別します。したがって、Data Guard環境でDB_UNIQUE_NAME
の一意性を維持することが重要です。
Data Guard環境内のデータベースに構成を作成または変更する場合、RMANはリカバリ・カタログに接続している必要があります。SET DBID
コマンドを使用して、RMANセッションでDBIDを設定する場合は、Data Guard環境でRMANがTARGET
としてデータベースに接続されていなくても、スタンバイ・データベースを構成できます。この場合は、作成されていないスタンバイ・データベースに構成を作成することもできます。
次の形式のCONFIGURE
コマンドを使用できます。
CONFIGURE DB_UNIQUE_NAME
を使用すると、フィジカル・スタンバイ・データベースへの接続が定義され、新しいデータベースが暗黙的に登録されます。
RMANがTARGET
として初めてスタンバイ・データベースに接続する場合は、新しいスタンバイ・データベースも自動的に登録されます。
CONFIGURE FOR DB_UNIQUE_NAME
を使用すると、Data Guard環境でのデータベースの設定が構成されます。
たとえば、環境内の指定したデータベースまたはすべてのデータベースに対して、チャネルやデフォルトのデバイスなどを構成できます。SHOW ALL FOR DB_UNIQUE_NAME
を使用すると、特定のスタンバイ・データベースの構成を表示でき、SHOW ALL FOR DB_UNIQUE_NAME ALL
を使用すると、認識されるすべてのデータベースの構成を表示できます。
Data Guard環境には、Data Guardにのみ関連する多くの考慮事項があります。たとえば、アーカイブ・ログがスタンバイ・データベースに転送されたか、適用されたかに基づいて、アーカイブREDOログの削除方針を構成できます。
関連項目:
スタンバイ・データベースで使用するためにRMAN環境を構成する方法については、『Oracle Data Guard概要および管理』を参照してください。
CONFIGURE ARCHIVELOG DELETION POLICYコマンドの詳細およびアーカイブ・ログが削除対象となる条件については、『Oracle Databaseバックアップおよびリカバリ・リファレンス』を参照してください。