Oracle Rdbでは、2種類のアフター・イメージ・ジャーナル・メカニズムがサポートされます。1つは単一の拡張可能な.aijファイルを使用するもので、もう1つは複数の固定サイズの.aijファイルを使用するものです。バックアップ操作の開始時に使用するジャーナル・メカニズムのタイプによって、バックアップ・コマンドの指定方法が影響されます。これらの2つのジャーナル・メカニズムがバックアップ操作にどう影響するかの詳細は、「説明」に示します。
バックアップ.aijファイルは、実際に使用可能な.aijファイルで、リカバリ操作時に適切なOracle Rdbデータベースに適用します。
RMU Backup After_Journalコマンドは、ユーザーがデータベースにアタッチしている場合も使用できます。
作成するバックアップ.aijファイルは、RMU Recoverコマンドとともに使用し、記録したトランザクションをリカバリ(ロールフォワード)できます。追加のRecoverコマンド(1つはバックアップ.aijファイルに対し、もう1つはより最新の.aijファイルに対するコマンド)を発行する必要があるケースもあります。Oracle Rdbでは、次の2種類の.aijファイル構成がサポートされます。
- 1つの拡張可能な.aijファイルを使用する構成
バージョン6.0より前はこの方法が常に使用され、デフォルトでもあります(バージョン6.0より前のOracle Rdbとの互換性を持たせるため)。
拡張可能な.aijファイルを使用する場合、1つの.aijファイルに書き込まれ、必要に応じて、.aijファイルの作成時に指定したブロック数で拡張されます。.aijファイルは、バックアップされる(またはファイルが置かれたデバイスが一杯になる)まで拡張し続けます。
RMU Backup After_Journalコマンドでは、現在の.aijファイル(常にディスク上にある)に記録されているトランザクションが、バックアップ.aijファイル(テープの場合もディスク・デバイスの場合もある)にコピーされます。完了すると、現在の.aijファイルは切り捨てられ、再度使用されます。更新アクティビティが頻繁な場合、他のユーザーによる.aijファイルへのアクセスとの競合の可能性があるため、アクティブな.aijファイルの切捨てが行われない場合があります。しかし、アクティブな.aijファイルに割り当てられている記憶域は、バックアップ操作が完了すると、再度使用されます。- 複数の.aijファイルを使用する構成
固定サイズの.aijファイルを使用する場合、データベースで複数の.aijファイルが保持されますが、一度に1つの.aijファイルのみに書き込まれます。この.aijファイルが現在のジャーナルとみなされます。この.aijファイルが一杯になると、他の使用可能な.aijファイルへの切替えが行われ、記録が続けられます。
固定サイズの.aijファイルの場合、RMU Backup After_Journalコマンドは次のように動作します。
- 満杯の.aijファイルのバックアップ
バックアップ操作では、まず、AIJ順序番号の最も低い.aijファイル(バックアップの必要がある)がバックアップされ、AIJ順序番号の昇順で.aijファイルのバックアップ操作が続けられます。RMU Backup After_Journalコマンドの発行時にバックアップの必要な.aijファイルが多数ある場合、1つのバックアップ・ファイルにバックアップされるすべての.aijファイルの内容が含まれる場合があります。- 現在の.aijファイルのバックアップ
バックアップ操作時にアクティブなトランザクションがある場合でも、RMU Backup After_Journalコマンドで現在のアクティブな.aijファイルのバックアップが開始されます。Quiet_Point修飾子を指定した場合、ある時点で、現在のすべてのトランザクションの終了を待ってバックアップ操作がストールします。- 次の使用可能な.aijファイルへの切替え
使用可能な.aijファイルとは、次の両方が真のファイルです。
- トランザクションの記録に現在使用されていません。
- REDO処理に必要ではありません。
このような.aijファイルは、まったく使用されていないか、すでにバックアップされています。
指定した.aijファイルが完全にバックアップされると、そのファイルは初期化され、再利用に使用可能としてマーキングされます。
注意
固定サイズの.aijファイルを使用するか、拡張可能な.aijファイルを使用するかは、ユーザーで明示的に設定できません。.aijファイルの数を1に減らすイベントが起こると、拡張可能な.aijファイルが使用されます。.aijファイルの数を複数に増やすイベントが起こると、固定サイズの.aijファイルが使用されます。アクセス不能な.aijファイルは、この計算に含まれます。したがって、1つのアクセス可能な.aijファイルと1つのアクセス不能な.aijファイル(抑止されている可能性が高い)がある場合、固定サイズの.aijジャーナルが使用されます。一部のRMU Backup After_Journalコマンド修飾子は、いずれか一方のジャーナル・メカニズムが使用されている場合にのみ有効なため、RMU Backup After_Journalコマンドを発行する前に、RMU Dumpコマンドを発行して現在使用されているジャーナル・メカニズムを確認します。
また、バックアップ操作が開始されると、バックアップ操作が完了するまで.aijファイルを変更できないことに注意してください。ただし、RMU Dumpコマンドの発行からRMU Backup After_Journalコマンドの発行までの間にジャーナルのタイプが変わると、特定のタイプのジャーナル・メカニズムにのみ有効な修飾子を指定した場合、エラー・メッセージが表示されます。(たとえば、Threshold修飾子は、拡張可能なジャーナル・メカニズムが使用されている場合にのみ有効です。)
.aijファイルをテープにバックアップする場合、RMU Backup After_Journalコマンドを発行する前に、DCL MOUNTコマンドを使用してバックアップ・メディアをマウントする必要があります。デフォルトのFormat=Old_Fileを指定した場合、RMU Backup After_JournalコマンドでRMSを使用してテープに書き込まれます。テープはOpenVMSボリュームとしてマウントされている必要があります。(つまり、MOUNTコマンドでFOREIGN修飾子を指定しないでください。)Format=New_Tape修飾子を指定した場合、RMU Backup After_Journalコマンドでは、RMU Backupコマンドで使用されるのと似た形式でバックアップ・ファイルが書き込まれます。テープはFOREIGNボリュームとしてマウントする必要があります。
.aijファイルをディスクにバックアップする場合、OpenVMSのBackupユーティリティ(BACKUP)を使用して.aijバックアップ・ファイルをアーカイブできます。
RMU Backup After_Journalコマンドをバッチ・ジョブで使用し、長時間の対話型ターミナルの占有を避けることもできます。Continuous、Interval、ThresholdおよびUntil修飾子では、バックアップ・プロセスの期間および頻度が制御されます。Continuous修飾子を使用すると、コマンドによってターミナルが無期限に占有されます。したがって、連続.aijファイル・バックアップ操作を行う場合は、バッチ・プロセスからコマンドを発行することをお薦めします。ただし、コマンド・プロシージャ内のRMU Backup After_Journalコマンドに続く部分は、Until修飾子で指定された時間が経過するまで実行されないことに注意してください。
RMU Backup After_Journalコマンドが完了すると、次のリストに示すグローバル・プロセス・シンボルに、バックアップ・ファイルの状態に関する情報が記録されます。これらのシンボルをDCLコマンド・プロシージャに使用し、バックアップ操作の自動化に役立てることができます。
ただし、DCL SET SYMBOL/SCOPE=(NOLOCAL, NOGLOBAL)コマンドを発行すると、これらのシンボルは設定されません。
- RDM$AIJ_SEQNO
最後にテープに書き込まれた.aijバックアップ・ファイルの順序番号が含まれます。このシンボルは、RDM$AIJ_BACKUP_SEQNOと同一の値を持ちます。RDM$AIJ_SEQNOは、Oracle Rdbバージョン6.0より前に作成され、Oracle Rdbの以前のバージョンとの互換性を持たせるためにあります。- RDM$AIJ_CURRENT_SEQNO
現在のアクティブな.aijファイルの順序番号が含まれます。値-1は、アフター・イメージ・ジャーナルが無効であることを表します。- RDM$AIJ_NEXT_SEQNO
バックアップの必要な次の.aijファイルの順序番号が含まれます。このシンボルには、常に正の整数値(0を含む)が含まれます。- RDM$AIJ_LAST_SEQNO
バックアップ操作の準備が整っている最後の.aijファイルの順序番号が含まれます。これは、固定サイズのジャーナルが使用されている場合、現在の順序番号とは異なります。値-1は、今までにジャーナルが1つもバックアップされていないことを表します。
RDM$AIJ_NEXT_SEQNOシンボルの値がRDM$AIJ_LAST_SEQNOシンボルの値より大きい場合、バックアップ操作に現在使用できる.aijファイルはもうありません。- RDM$AIJ_BACKUP_SEQNO
バックアップ操作で最後にバックアップされた.aijファイルの順序番号が含まれます。このシンボルは、.aijバックアップ操作の完了時に設定されます。値-1は、このプロセスがまだ.aijファイルをバックアップしていないことを表します。
RMU Backup After_Journalコマンドによって、各.aijバックアップ・ファイルの正確な順序番号を示す情報メッセージが記されます。- RDM$AIJ_COUNT
使用可能な.aijファイルの数が含まれます。- RDM$AIJ_ENDOFFILE
現在のAIJジャーナルのEOFブロック番号が含まれます。- RDM$AIJ_FULLNESS
現在のAIJジャーナルがどの程度一杯かのパーセントが含まれます。
これらのシンボルは、対応する値は数値ですが、整数シンボルではなく文字列シンボルである点に注意してください。そのため、これらのシンボルに対して算術演算を実行すると、予期しない結果になります。
これらのシンボルを使用して算術演算を行う必要がある場合、まず、OpenVMSのF$INTEGER字句解析関数を使用して文字列シンボル値を数値シンボル値に変換します。次に例を示します。
$ SEQNO_RANGE = F$INTEGER(RDB$AIJ_LAST_SEQNO) - F$INTEGER(RDB$AIJ_NEXT_SEQNO)
root-file-spec
データベース・ルート・ファイルの名前。ルート・ファイル名は、データベースの名前でもあります。アフター・イメージ・ジャーナルが有効になっていないデータベースを指定すると、エラーになります。デフォルトのファイル拡張子は.rdbです。backup-file-spec
.aijバックアップ・ファイルのファイル指定。Format=New_Tape修飾子を指定した場合以外、デフォルトのファイル拡張子は.aijです。この場合、デフォルトのファイル拡張子は.aij_rbfです。""
二重引用符によって、デフォルトの.aijバックアップ・ファイル指定を使用するようOracle RMUに指定されます。デフォルトの.aijバックアップ・ファイル指定は、SQL ALTER DATABASE文またはRMU Set After_Journalコマンドを使用して定義されます。
Accept_Label
デフォルト・ラベルまたはLabel修飾子で指定したラベルと異なる場合でも、バックアップ操作時にテープで検出した現在のテープ・ラベルをOracle RMUで保持するよう指定します。テープの保護、所有者または有効期日によってテープへの書込みが禁止されている場合以外、オペレータ通知はありません。ただし、ラベルが保持されていることと、現在テープを保持しているドライブを示すメッセージは記録され(ロギングが有効の場合)、バックアップ・ジャーナル・ファイルに書き込まれ(Journal修飾子を指定した場合)ます。この修飾子は、バックアップ操作に以前に使用した(つまり、ラベルの付いた)多くのテープを使用し、現在のテープのラベルを保持する場合に、特に有用です。
この修飾子を指定しない場合、Oracle RMUのデフォルトの動作では、テープの現在のラベルとデフォルト・ラベル(またはLabel修飾子で指定したラベル)が異なるたびに、オペレータに通知されます。
デフォルト・ラベルの詳細は、この項のLabels修飾子の説明を参照してください。様々な状況で適用されるラベルのサマリーは、表1-5を参照してください。
Active_IO=max-writes
RMU Backup After_Journalコマンドで同時に試行する、バックアップ・デバイスへの書込み操作の最大数を指定します。これは、進行中の書込み操作の最大数ではありません。この値は、アクティブなシステムI/O操作と、同時に書き込まれるデバイスの数の積です。Active_IO修飾子の値は、1〜5です。デフォルト値は3です。3より大きい値によってパフォーマンスが向上するテープ・ドライブもあります。
Block_Size=integer
バックアップ・ファイルの最大レコード・サイズを指定します。サイズは、2048〜65,024バイトです。デフォルト値は、デバイスによって異なります。適切なブロック・サイズは、テープ容量とエラー率で決まります。Compression
Compression=LZSS
Compression=Huffman
Compression=ZLIB
Nocompression
AIJバックアップ・ファイルにデータを書き込む前に使用する圧縮方法を指定できます。これによってパフォーマンスは低下しますが、AIJバックアップ・ファイルがディスク・ファイルの場合、バックアップがビジーなネットワークを介して行われる場合、または独自の圧縮を行わないテープ・ドライブにバックアップされる場合は、その分の価値があります。独自の圧縮を行うテープ・ドライブにAIJファイルをバックアップする場合、Compression修飾子を指定する必要はありません。実際、この修飾子を指定すると、ファイルが大きくなる場合もあります。この機能は、新しいバックアップ・ファイル形式にのみ作用します。/COMPRESSIONを使用する場合は、/FORMAT=NEW_TAPEも指定します。
値なしでCompression修飾子を指定した場合、デフォルトはCOMPRESSION=ZLIB=6です。
レベル値(ZLIB=level)は、相対圧縮レベルを指定する1〜9の整数で、1が最も圧縮量が少なく、9が最も圧縮量が多いことを示します。圧縮レベルが上がると、CPUを多く使用しますが、一般によりよい圧縮が得られます。デフォルトの圧縮レベルである6は、圧縮の効果とCPU消費のバランスをとったものです。
Oracle Rdb 7.2の以前のリリースと圧縮RBFファイル
Oracle Rdbの以前のリリースでは、ZLIBアルゴリズムで圧縮されたRBFファイルは読み取れませんでした。Oracle Rdb 7.2のリリース7.2.1より前のリリースで圧縮されたバックアップを読み取るには、/COMPRESSION=LZSSまたは/COMPRESSION=HUFFMANを明示的に指定する必要があります(デフォルトの圧縮アルゴリズムがLZSSからZLIBに変わったため)。Oracle Rdbバージョン7.2.1では、LZSSまたはHUFFMANアルゴリズムを使用して以前のリリースで作成された圧縮バックアップを読み取ることができます。
Continuous=(n)
Nocontinuous
.aijバックアップ・プロセスを連続的に処理するかどうかを指定します。次のいずれか、または両方を指定して終了条件を指定します。
- Until修飾子
連続バックアップ・プロセスを停止する日時を指定します。- nの値
バックアップ操作を終了するまでに、Oracle RMUでアクティブな.aijファイルのセットを反復する数を指定します。
Continuous修飾子を指定する場合、UntilまたはInterval修飾子を使用するか、nの値を指定(あるいは、その両方を指定)して、バックアップ・プロセスを停止するタイミングを指定する必要があります。ディスクへのバックアップの場合、DCL STOPコマンドでもバックアップ・プロセスを停止できます。
Continuous修飾子を指定した場合、Oracle Rdbでは、現在の.aijファイルの切捨て後(拡張可能なジャーナルを使用している場合)、または新しいジャーナルへの切替え後(固定サイズのジャーナルを使用している場合)には、バックアップ・プロセスは終了しません。かわりに、Interval修飾子の引数に指定した期間、バックアップ・プロセスが待機します。その期間の経過後、バックアップ・プロセスでしきい値に達したか(拡張可能なジャーナルの場合)、またはジャーナルが一杯か(固定サイズのジャーナルの場合)が確認されます。その後、必要に応じてバックアップ操作が行われ、反復の数またはUntil修飾子で指定した条件を満たす場合以外、次の時間隔まで再度待機します。
Continuous修飾子を指定した場合、プロセスが終了するまで、バックアップ・プロセスによってターミナルが占有されます(つまり、システム・プロンプトは表示されません)。このため、通常はバッチ・プロセスを使用してコマンドを入力します。
デフォルトのNocontinuous修飾を指定した場合、.aijファイルのバックアップの完了後、すぐにバックアップ・プロセスが停止します。反復数(n)のデフォルト値は1です。
Until修飾子とContinuous=n修飾子の両方を指定した場合、いずれかが完了すると、バックアップ操作が停止します。Until=12:00修飾子とContinuous=5修飾子を指定した場合、反復が4回しか完了していない場合でも、12時にバックアップ操作が終了します。同様に、5回の反復が12時より前に終了した場合、5回の反復の完了後、バックアップ操作が終了します。
テープへのバックアップ(特に、Format=New_Tape修飾子を使用する場合)の場合、Continuous修飾子はお薦めしません。テープの処理が正常に完了したら、バックアップ操作を無限に続ける必要がありません。
DCL STOPコマンドを使用してテープへのバックアップ操作を終了すると、不完全で破損したバックアップ・ファイルが作成される可能性があります。ただし、このバックアップ・ファイルは削除しないでください。失敗した、あるいは強制終了したバックアップ・プロセスで生成された場合でも、すべての.aijバックアップ・ファイルを保存することが非常に重要です。結果の.aijバックアップ・ファイルを破棄すると、次の.aijファイルとの間にトランザクションの食い違いが生じ、その時点以降のトランザクションをロールフォワードできなくなる場合があります。
Crc[=Autodin_II]
32ビットCRCの計算にAUTODIN-II多項式を使用し、最も信頼性の高いエンドツーエンドのエラー検出を提供します。これは、NRZ/PE(800/1600ビット/インチ)テープ・ドライブのデフォルトです。Crc=Autodin_II修飾子を選択するには、Crcと入力するだけで十分です。修飾子全体を入力する必要はありません。
Crc=Checksum
1の補数和(ディスク上のデータベース・ページのチェックサムに使用されるのと同じ計算方法)を使用します。これは、GCR(6250ビット/インチ)テープ・ドライブとTA78、TA79およびTA81テープ・ドライブのデフォルトです。Crc=Checksum修飾子では、エラーが検出されます。
Nocrc
エンドツーエンドのエラー検出を無効にします。これは、TA90(IBM 3480クラス)ドライブのデフォルトです。
Density=(density-value,[No]Compaction)
出力ボリュームの書込み密度を指定します。デフォルト値は、最初のボリューム(最初にマウントするテープ)の形式です。テープ・ドライブでデータ圧縮や複数の記録密度がサポートされていない場合、この修飾子を指定する必要はありません。Density修飾子は、テープ・ドライブにのみ適用できます。この修飾子が使用され、ターゲット・デバイスがテープ・ドライブでない場合、Oracle RMUからエラー・メッセージが返されます。
システムが7.2-1より前のバージョンのOpenVMSで稼働している場合、Density修飾子は次のように指定します。
- TA90E、TA91およびTA92テープ・ドライブの場合、bpiの値を次のように指定します。
- 圧縮形式で初期化し、テープに書き込む場合、Density = 70000。
- 非圧縮形式の場合、Density = 39872またはDensity = 40000。
- SCSI(Small Computer System Interface)テープ・ドライブの場合、Density = 1を指定し、ドライブのハードウェア・データ圧縮方法でテープの初期化および書込みを行います。
- 他のタイプのテープ・ドライブの場合、800から160000bpiの間でサポートされている密度の値を指定します。
- すべてのテープ・ドライブで、ドライブの標準密度でテープの初期化および書込みを行う場合、Density = 0を指定します。
7.2-1より前のバージョンのOpenVMSで稼働しているシステムでは、CompactionまたはNoCompactionキーワードを指定しないでください。これらのシステムでは、圧縮は密度の値によって決まり、指定できません。
Oracle RMUでは、OpenVMSバージョン7.2-1で導入されたテープの密度と圧縮の値をサポートします。次の表に、Oracle RMUでサポートされる追加の密度値を示します。
DEFAULT 800 833 1600 6250 3480 3490E TK50 TK70 TK85 TK86 TK87 TK88 TK89 QIC 8200 8500 8900 DLT8000 SDLT SDLT320 SDLT600 DDS1 DDS2 DDS3 DDS4 AIT1 AIT2 AIT3 AIT4 LTO2 LTO3 COMPACTION NOCOMPACTION
OpenVMSバージョン7.2-1の密度値と以前の密度値が同じ(800、833、1600、6250など)場合、指定した値は、テープ・デバイス・ドライバでOpenVMSバージョン7.2-1の値が受け付けられる場合は7.2-1の値として解釈され、テープ・デバイス・ドライバで以前の値のみが受け付けられる場合は以前の値として解釈されます。
テープの圧縮を受け付けるOpenVMSバージョン7.2-1の値には、次の構文を使用できます。
/DENSITY = (new_density_value,[No]Compaction)
CompactionまたはNoCompactionキーワードを使用するには、圧縮を受け付ける次の密度値のいずれかを使用する必要があります。
DEFAULT 3480 3490E 8200 8500 8900 TK87 TK88 TK89 DLT8000 SDLT SDLT320 AIT1 AIT2 AIT3 AIT4 DDS1 DDS2 DDS3 DDS4 SDLT600 LTO2 LTO3
密度値の詳細は、OpenVMSのドキュメントを参照してください。
Edit_Filename=(options)
Noedit_Filename
Edit_Filename=(options)修飾子を使用すると、指定したバックアップ・ファイル名が編集され、次のオプションで指定した値がバックアップ・ファイル名に追加されます。
- Day_Of_Week
現在の曜日。1桁の整数(1〜7)で表されます。日曜日が1、土曜日が7となります。- Day_Of_Year
年初から数えた現在の日付。3桁の整数で表されます(001〜366)。- Hour
現在時刻の時数。2桁の整数で表されます(00〜23)。- Julian_Date
1858年11月17日からの経過日数。- Minute
現在時刻の分数。2桁の整数で表されます(00〜59)。- Month
現在の月。2桁の整数(01〜12)で表されます。- Sequence
バックアップ操作の最初のジャーナルの順序番号。- Vno
Sequenceオプションと同義。Sequenceオプションの説明を参照してください。- Year
現在の年(西暦)。4桁の整数で表されます。
複数のオプションを指定する場合、各オプションの間にカンマを入れます。
編集は、指定した順序で行われます。たとえば、ジャーナル3を4月23日午後4時5分にバックアップする場合、ファイル・バックアップ.aijと修飾子/EDIT_FILENAME=(HOUR, MINUTE, MONTH, DAY_OF_MONTH, SEQUENCE)によって、backup_160504233.aijという名前のファイルが作成されます。
各Edit_Filenameオプションの間に引用符で囲んだ文字列を入れることによって、読みやすい名前にできます。たとえば、日付が30日、時間が1時55分、バージョン番号が2の場合、次の修飾子によって文字列"$30_0155-2"が.aijファイル名に追加されます。
/EDIT_FILENAME=("$",DAY_OF_MONTH,"_",HOUR,MINUTE,"-",SEQUENCE)
この修飾子は、バックアップ・ファイルのファイル名をわかりやすくし、ファイル管理を容易にする場合に有用です。
デフォルトはNoedit_Filename修飾子です。
Encrypt=({Value=|Name=}[,Algorithm=])
Encrypt修飾子によって、アフター・イメージ・ジャーナルのバックアップ・ファイルが暗号化されます。
キー値を文字列として、または事前に定義したキーの名前を指定します。アルゴリズム名を指定しない場合、デフォルトはDESCBCです。Value、NameおよびAlgorithmパラメータの詳細は、ENCRYPTのヘルプを参照してください。
この機能を使用するには、システムにOpenVMSの暗号化製品がインストールされ、ライセンスが付与されている必要があります。
この機能は、/FORMAT=NEW_TAPEを使用して作成された新規形式のバックアップ・ファイルにのみ作用します。このため、コマンドに/ENCRYPTを使用する場合、/FORMAT=NEW_TAPEも指定する必要があります。
Format=Old_Rms
Format=New_Tape
Format=Old_FileおよびFormat=New_Tapeと同義です。これらの修飾子の説明を参照してください。Format=Old_File
Format=New_Tape
バックアップ・ファイルが書き込まれる形式を指定します。.aijファイルをディスクにバックアップする場合はFormat=Old_File修飾子を指定(またはデフォルトを受け入れる)し、.aijファイルをテープにバックアップする場合はFormat=New_Tape修飾子を指定することをお薦めします。デフォルトのFormat=Old_Fileを指定した場合、RMU Backupコマンドによってファイル構造のディスクに最適な形式でファイルが書き込まれます。Format=New_Tapeを指定した場合、Oracle RMUコマンドによって、ANSI/ISOラベルおよびエンドツーエンドのエラー検出と修正を含む、テープ・ストレージに最適な形式でファイルが書き込まれます。Format=New_Tape修飾子を指定して.aijファイルをテープにバックアップする場合、RMU Backup After_Journalコマンドを発行する前に、DCL MOUNTコマンドを使用してバックアップ・メディアをマウントする必要があります。テープはFOREIGNボリュームとしてマウントする必要があります。テープをOpenVMSボリュームとしてマウント(つまり、FOREIGNボリュームとしてマウントしない)し、Format=New_Tape修飾子を指定すると、RMU-F-MOUNTFORエラーが返されます。
.aijファイルをテープにバックアップし、Format=New_Tape修飾子を指定すると、データベースのバックアップ・コピー(RMU Backupコマンドを使用)と.aijファイルのバックアップ(RMU Backup After_Journalコマンドを使用)を作成できます。
次のテープ修飾子は、Format=New_Tape修飾子と組み合せて使用した場合にのみ意味があります。
Active_IO
Block_Size
Crc
Density
Group_Size
Label
Owner
Protection
Rewind
Tape_Expiration1つのOracle RMUコマンドラインで、Format=New_TapeとNoquiet_Point修飾子は一緒に使用できません。詳細は、「使用上の注意」を参照してください。
Format=New_Tape修飾子を指定したときのデフォルトのファイル指定は、.aij_rbfです。Format=Old_File修飾子を指定したときのデフォルトのファイル指定は、.aijです。
.aijのテープへのバックアップ操作にはFormat=New_Tape修飾子を、.aijのディスクへのバックアップ操作にはFormat=Old_File修飾子をお薦めしますが、Oracle RMUでこの推奨が強制されるわけではありません。これは、Oracle Rdbの以前のバージョンとの互換性を持たせるためです。この推奨値を使用しない場合に起こり得る問題については、「使用上の注意」を参照してください。
Group_Size[=interval]
Nogroup_Size
XORリカバリ・ブロックがテープに書き込まれる頻度を指定します。グループ・サイズは0〜100です。グループ・サイズにゼロを指定した場合、あるいはNogroup_Size修飾子を指定した場合、XORリカバリ・ブロックは書き込まれません。Group_Size修飾子はテープにのみ使用可能で、デフォルト値はデバイスによって異なります。この修飾子が使用され、ターゲット・デバイスがテープ・デバイスでない場合、Oracle RMUからエラー・メッセージが返されます。Interval=number-seconds
Nointerval
バックアップ・プロセスが待機する秒数を指定します。この修飾子は、Continuous修飾子と拡張可能なジャーナル方法と組み合せて使用します。時間隔によって、Threshold修飾子の値より多いブロック数が含まれているかどうかについて、アクティブな.aijファイルを確認する頻度が決まります。秒数を指定せずにInterval修飾子を指定した場合、またはこの修飾子を省略した場合、デフォルトの秒数は60です。
選択した時間隔によってデータベースのパフォーマンスが影響されるため、まず、デフォルト(Interval=60)を使用することをお薦めします。一般的に、テストとその評価によって特定のデータベースに適した時間隔が得られます。
Nointerval修飾子を指定した場合、時間隔なし(1サイクルが終わると次のサイクルが始まる)で繰り返しアクティブな.aijファイルがテストされます。
IntervalまたはNointerval修飾子を指定する場合、Continuous修飾子を指定する必要があります。
IntervalとNocontinuous修飾子の両方を指定すると、Interval修飾子が無視されます。
Label=(label-name-list)
バックアップ・ファイルのボリュームのラベルに使用する1〜6文字の文字列を指定します。Label修飾子は、テープ・ボリュームにのみ使用できます。Label修飾子を使用する場合、1つ以上のラベル名を指定する必要があります。複数のテープの場合、テープ・ラベルのリストを指定できます。複数のテープ・ラベル名をリストする場合、名前をカンマで区切り、名前のリストをカッコで囲みます。
Label(またはAccept_Label)修飾子を指定しない場合、Oracle RMUでバックアップ・ファイル名の最初の6文字を使用して、バックアップ操作に使用される最初のテープのラベルが付けられます。後続のラベルのデフォルトは、バックアップ・ファイル名の最初の4文字に順序番号を追加したものです。たとえば、バックアップ・ファイルがmy_backup.rbfの場合、デフォルトのテープ・ラベルは、my_b、my_b01、my_b02のようになります。
テープを再度使用すると、Oracle RMUで現在のテープのラベルと、Label修飾子で指定したラベルが比較されます。既存のラベルと指定したラベルが一致しない場合、(Accept_Labels修飾子も指定した場合以外は)不一致を受け入れるかどうかを尋ねるメッセージが、Oracle RMUからオペレータに送られます。
必要に応じて、複数のテープに対するラベルのリストを明示的に指定できます。複数のテープ・ラベル名をリストする場合、名前をカンマで区切り、名前のリストをカッコで囲みます。テープを再利用する場合、Oracle RMUで想定されているラベルと各テープのラベルが一致するテープを必ずロードするか、高頻度のオペレータ操作に備えておきます。
必要なラベルより少ない数のラベルを指定した場合、指定した形式に基づいてOracle RMUでラベルが生成されます。たとえば、Label=TAPE01と指定した場合、Oracle RMUで後続のテープにTAPE02、TAPE03、〜TAPE99というラベルが付けられます。したがって、多くのボリュームをテープ・ドライブのカートリッジ・スタッカに事前ロードできます。Oracle RMUでボリュームのラベルが再度付けられるため、順序は重要ではありません。使用するすべてのテープを特定の順序でマウントする必要がないため、オペレータが介在しないバックアップ操作が成功する可能性が高まります。
バックアップ操作の完了後、リストア操作時に順序がわかるようテープの外部に適切なラベルを付けます。Oracle RMUで2番目以降のテープへの暗黙的なラベル処理を許可し、オペレータが介在しないバックアップ操作を行う場合は特に注意してください。書き込まれた順に、ドライブからテープを外します。暗黙的なラベル処理のロジックに従い、ボリュームにラベル(TAPE02、TAPE03など)を付けます。
複数ドライブでの暗黙的なラベル処理を許可してオペレータが介在しないバックアップ操作を行う場合、Journal修飾子を使用することをお薦めします。ジャーナル・ファイルに、各テープ・ドライブに書き込まれたボリューム・ラベルが記録されます。ラベルが書き込まれた順序がジャーナルに保存されます。各テープ・ドライブに書き込まれたボリュームのリストを表示するには、RMU Dump Backupコマンドを使用します。
間接ファイル参照とLabel修飾子を組み合せて使用できます。間接ファイル参照の詳細は、第1.3節を参照してください。様々な状況で適用されるラベルのサマリーは、「使用上の注意」の表1-5を参照してください。
Librarian[=options]
Oracle Media Managementインタフェースをサポートするデータ・アーカイブ・ソフトウェア・アプリケーションにファイルをバックアップするには、Librarian修飾子を使用します。コマンドラインで指定したバックアップ・ファイル名によって、Librarianユーティリティで格納されるデータのストリームが識別されます。デバイスまたはバージョン番号の指定は無視されます。Librarian修飾子には、次のオプションを使用できます。
- Trace_file=file-specification
Librarianユーティリティによってトレース・データが指定したファイルに書き込まれます。- Level_Trace=n
このオプションをデバッグ・ツールとして使用し、Librarianユーティリティによって書き込まれるトレース・データのレベルを指定します。事前に決められた値(0、1または2)またはLibrarianユーティリティで定義されている、より大きな値を使用できます。事前に決められている値は次のとおりです。
- レベル0では、すべてのエラー状態がトレースされます。これがデフォルトです。
- レベル1では、各Librarianファンクションの開始と終了がトレースされます。
- レベル2では、各Librarianファンクションの開始と終了、すべてのファンクション・パラメータの値、および各読取り/書込みバッファの最初の32バイト(16進)がトレースされます。
- Logical_Names=(logical_name=equivalence-value,...)
このオプションを使用してプロセス論理名のリストを指定できます。Librarianユーティリティは、これらの論理名を使用して、Oracle Rdbバックアップ・ファイルが格納されるカタログまたはアーカイブや、Librarianデバッグ論理名などを指定できます。論理名の定義の詳細は、Librarianのドキュメントを参照してください。プロセス論理名のリストは、LibrarianユーティリティにアクセスするOracle RMUコマンドの開始前に、Oracle RMUによって定義されます。
Oracle RMUのバックアップまたはリストア操作を実行する前に、次のOpenVMS論理名を定義して、Librarianユーティリティで使用できるようにする必要があります。これらの論理名の定義には、Librarian修飾子のLogical_Namesオプションを使用しないでください。
- RMU$LIBRARIAN_PATH
Oracle RMUのバックアップおよびリストア操作で、共有可能なLibrarianイメージをロードおよびコールできるようにするには、この論理名を定義する必要があります。等価名にはファイル・タイプ(.exeなど)が含まれる必要があります。バージョン番号は含めません。共有可能なLibrarianイメージは、インストール済(認識済)のイメージである必要があります。このイメージの名前と場所、およびインストール方法の詳細は、Librarianユーティリティのドキュメントを参照してください。- RMU$DEBUG_SBT
この論理名は必須ではありません。これが定義されている場合、Oracle RMUでLibrarian共有可能イメージをコールするモジュールからのデバッグ・トレース情報メッセージが表示されます。
ストレージ・メディアの処理はOracle RMUではなくLibrarianユーティリティで行われるため、Rewind、Density、Labelなどのデバイス固有の修飾子とLibrarian修飾子は組み合せて使用できません。
Lock_Timeout=seconds
オンライン・バックアップ操作時に.aijファイルのバックアップ操作で静止ポイント・ロックを待つ最大時間が決まります。Lock_Timeout=seconds修飾子を指定する場合、静止ポイント・ロックを待つ秒数を指定する必要があります。制限時間を過ぎると、エラーが表示され、バックアップ操作が失敗します。Lock_Timeout=seconds修飾子のデフォルト値は、SET TRANSACTION文で指定された値とCREATEまたはALTER DATABASEで指定された値のうちの小さい方です。ただし、論理名RDM$BIND_LOCK_TIMEOUT_INTERVALが定義されている場合、この論理名の値がCREATEまたはALTER DATABASEで指定した値より優先されます。
Lock_Timeout=seconds修飾子が指定されない場合、または値に0が指定された場合、.aijファイルのバックアップ操作でオンライン処理時に静止ポイント・ロックを無期限に待ちます。
Noquiet_Point修飾子が指定された場合、Lock_Timeout=seconds修飾子は無視されます。
Log
Nolog
コマンドの処理をSYS$OUTPUTに出力するかどうかを指定します。Log修飾子を指定すると、ログを出力するよう要求し、Nolog修飾子を指定すると、ログは出力されません。どちらも指定しない場合、デフォルトは現在のDCL検証スイッチの設定です。(DCL SET VERIFYコマンドでDCL検証スイッチを制御します。)Media_Loader
Nomedia_Loader
バックアップ・ファイルが出力されるテープ・デバイスにローダーまたはスタッカがあることを指定するには、Media_Loader修飾子を使用します。テープ・デバイスにローダーまたはスタッカがないことを指定するには、Nomedia_Loader修飾子を使用します。デフォルトでは、テープ・デバイスにローダーまたはスタッカがある場合、Oracle RMUでこれが認識されます。ただし、Oracle RMUでテープ・デバイスにローダーまたはスタッカがあることが認識されない場合があります。その結果、最初のバックアップ・テープが一杯になると、Oracle RMUでローダーまたはスタッカに次のテープを要求するかわりに、オペレータに次のテープが要求されます。同様に、実際にはテープ・デバイスにローダーもスタッカもない場合に、ローダーまたはスタッカがあるようにOracle RMUが動作する場合もあります。
Oracle RMUでテープ・デバイスにローダーまたはスタッカがあることが認識されていない場合、Media_Loader修飾子を指定します。Oracle RMUで実際にはないローダーまたはスタッカを待っている場合、Nomedia_Loader修飾子を指定します。
Owner_Uic=user-id
Owner修飾子と同義です。Owner修飾子の説明を参照してください。Owner=user-id
テープ・ボリューム・セットの所有者を指定します。所有者は、データベースのリストアが許可されるユーザーです。user-idパラメータは、次のいずれかのタイプのOpenVMSの識別子です。
- 英数字形式([group-name,member-name])のユーザー識別コード(UIC)
- 数字形式([group-number,member-number])のUIC
- SECRETARIESなどの汎用識別子
- DIALUPなどのシステム定義識別子
Owner修飾子は、ディスクへのバックアップ操作には使用できません。テープに使用した場合、Owner修飾子は連続ボリュームのすべてに適用されます。Rewind修飾子が指定されている場合以外、Owner修飾子は最初のボリュームには適用されません。Rewind修飾子が指定されない場合、以前にラベルが付けられたテープにバックアップ操作でファイルが追加されるため、最初のボリュームの保護が後続ボリュームの保護と異なる場合があります。
Prompt=Automatic
Prompt=Operator
Prompt=Client
サーバー・プロンプトの送信先を指定します。Prompt=Automaticを指定した場合、プロンプトは標準入力デバイスに送信されます。Prompt=Operatorを指定した場合、プロンプトはサーバー・コンソールに送信されます。Prompt=Clientを指定した場合、プロンプトはクライアント・システムに送信されます。Protection=file-protection
RMU Backup After_Journalコマンドで生成されるバックアップ・ファイルのシステム・ファイル保護を指定します。デフォルトのファイル保護は、ファイルをディスクにバックアップするか、テープにバックアップするかによって異なります。これは、テープでは削除または実行アクセスは許可されず、SYSTEMアカウントは常にテープに対する読取りおよび書込みアクセスを持つためです。また、制限の強いクラスには、制限の弱いクラスのアクセス権が集積されます。
Protection修飾子を指定しない場合、デフォルトの保護は次のとおりです。
- ディスクへのバックアップの場合、S:RWED,O:RE,G,W
- テープへのバックアップの場合、S:RW,O:R,G,W
Protection修飾子を明示的に指定した場合、テープまたはディスクへのバックアップに適用される保護の前述の違いが適用されます。つまり、Protection=(S,O,G:W,W:R)と指定した場合、テープの保護は(S:RW,O:RW,G:RW,W:R)になります。
Quiet_Point
Noquiet_Point
.aijバックアップ操作時に静止ポイント・ロックを取得するかどうかを指定します。デフォルトはQuiet_Point修飾子です。Quiet_Point修飾子の使用は、全体バックアップ操作にのみ有効です。このバックアップ操作では、順序(Sequence修飾子で指定)によってバックアップが行われるのではなく、バックアップに対するすべての.aijファイルにわたる完全パスが準備されます。全体.aijバックアップ操作は、拡張可能な.aijジャーナルが使用されているか、固定サイズの.aijジャーナルが使用されているかに関係なく行うことができます。各.aijバックアップ操作には.aij順序番号が割り当てられます。このラベル処理によって、各.aijバックアップ・ファイルが以前の.aijバックアップ・ファイルと区別されます。リカバリ操作時、.aijバックアップ・ファイルを適切な順序で適用することが重要です。RMU Recoverコマンドでは、データベース・ルート・ファイル構造がチェックされ、リカバリ操作を開始する.aij順序番号を示すメッセージが表示されます。
静止ポイントとは、すべての書込みトランザクションがコミットまたはロールバックされており、読取り/書込みトランザクションが進行中でない状態です。これによって、トランザクションの記録が後続の.aijバックアップ・ファイルに拡張されないことが保証されます。このバックアップ・ファイルは、静止ポイントになった時点と同じ状態にリカバリされたデータベースの生成に使用できます。
固定サイズのジャーナルが使用されているとき、Quiet_Point修飾子は、アクティブな.aijファイルがバックアップされるときにのみ該当します。この場合、バックアップされる.aijファイルの数に関係なく、静止ポイントは一度のみ取得されます。
ある時点でデータベースへの書込みが行われているか、書込みが待機されている場合、静止ポイントの自然発生はありません。(静止ポイントの自然発生とは、QP(静止ポイント)ロックの使用によるものではない静止ポイントです。).aijバックアップ操作で、データベースにコミットされていないデータがない状態を捕捉できません。その結果、Noquiet_Pointd修飾子で、相互に関係する.aijバックアップ・ファイルが作成されます。ある.aijバックアップ・ファイルを適用し、次の.aijバックアップ・ファイルを続けて適用しない場合、リカバリ操作が完全には適用されません。
Quiet_PointおよびNoquiet_Point修飾子の推奨については、「使用上の注意」を参照してください。
1つのコマンドラインでの次の修飾子の組合せは無効です。
- Quiet_PointとSequence
- Quiet_PointとWait
- Noquiet_PointとFormat=New
Rename
Norename
Rename修飾子では、新規の.aijファイルが作成および初期化され、元の.aijファイルの名前を変更することによってバックアップ・ファイルが作成されます。この結果、元の.aijファイルは新しい名前になり、新規.aijファイルは元の.aijファイルと同じ名前になります。Rename修飾子によって、他のバックアップ・ファイルと同じ操作が行えるような保護が、名前が変更されたバックアップ・ファイルに設定されます。新規の名前は、Edit_Filename修飾子を使用することによって指定できます。
Rename修飾子を使用した場合、バックアップ操作にかかる時間が.aijファイルの名前変更と初期化の合計時間である(バックアップのデータ・コピー(読取りおよび書込み)部分が省略される)ため、バックアップ操作が(デフォルトのNorenameを指定した場合より)速くなります。ただし、.aijファイルを含むディスクに、新規および元の.aijファイルを含めるのに十分な領域がある必要があります。.aijファイル名にデバイス指定を含めないことにも注意してください。
注意
Rename修飾子を指定し、新規および元の.aijファイルに十分な領域がない場合、アフター・イメージ・ジャーナル・シャットダウンが行われ、データベースが完全に停止します。
Rename修飾子は、固定サイズのジャーナルと拡張可能なジャーナルの両方のファイルに使用できます。
Norename修飾子では、.aijファイルの内容がテープまたはディスクにコピーされ、元の.aijファイルが再利用できるよう初期化されます。Norename修飾子でのバックアップ操作は(Renameが指定された場合より)遅くなりますが、ジャーナル・ディスクに、新規および元の.aijファイル分の領域を必要としません。
デフォルトはNorenameです。
Rewind
Norewind
バックアップ・ファイルを含める磁気テープを処理の開始前に巻き戻すよう指定します。テープは、LabelおよびDensity修飾子に従って初期化されます。Norewind修飾子がデフォルトで、バックアップ・ファイルは現在の論理EOT(テープの終端)から作成されます。この修飾子はテープ・デバイスにのみ使用できます。
Sequence=(n,m)
Nosequence
nからmまで(n、mを含む)の順序番号のジャーナルをバックアップするよう指定します。値nおよびmは、次のように解釈および補間されます。
- Sequence = (33, 35)が指定された場合、順序番号が33、34および35の.aijファイルがバックアップされます。
- Sequence = (53, 53)が指定された場合、順序番号が53の.aijファイルがバックアップされます。
- Sequence = (53)が指定された場合、順序番号が53以下の.aijファイルのうちバックアップがまだのファイルがバックアップされます。たとえば、順序番号が51、52および53の.aijファイルのバックアップがまだの場合、Sequence = (53)の指定によって、この3つの.aijファイルがバックアップされます。
- Sequence = (55, 53)が指定された場合、順序番号が53、54および55の.aijファイルがバックアップされます。
- 値リストを使用せずにSequence修飾子が指定された場合、nとmの両方が、次にバックアップが必要なジャーナルの順序番号に設定されます。
デフォルトはNosequence修飾子です。デフォルトを受け入れる場合、バックアップ操作が、次にバックアップが必要なジャーナルから開始され、指定した終了条件に達したときに停止されます。
次の修飾子は、Sequence修飾子と組み合せて使用できないか、組み合せて使用すると無効です。
Continuous
Format=New_Tape
Interval
Quiet_Point
Threshold
Untilまた、この修飾子を指定する場合、固定サイズのアフター・イメージ・ジャーナルを使用している必要があります。
Tape_Expiration=date-time
.aijバックアップ・ファイルの有効期日を指定します。Oracle RMUでテープを読む際、テープの最初のファイルのファイル・ヘッダーにある有効期日が確認され、ファイル・ヘッダーにある日付がテープ全体の有効期日とみなされます。したがって、.aijファイルをテープにバックアップする場合、.aijファイルがテープの最初のファイルのときのみ、Tape_Expiration修飾子の指定は有効です。Rewind修飾子を指定してテープの既存のファイルを上書きすることで、.aijファイルが必ずテープの最初のファイルになるようにできます。テープの最初のファイルのファイル・ヘッダーに有効期日が含まれていると、OpenVMSのSYSPRVまたはBYPASS権限を持っている場合以外は、有効期日前にテープを上書きできません。
同様に、テープにある.aijファイルを使用してリカバリを行う際、OpenVMSのSYSPRVまたはBYPASS権限を持っている場合以外、テープの最初のファイルに記録されている有効期日後にリカバリ操作を行えません。
デフォルトでは、有効期日は.aijファイルのヘッダーに書き込まれません。この場合、.aijファイルがテープの最初のファイルであると、テープがただちに上書きされます。.aijファイルがテープの最初のファイルでない場合、テープを上書きできるかどうかは、テープの最初のファイルのファイル・ヘッダーにある有効期日によって決まります。
テープのボリューム全体の有効期日を明示的に設定することはできません。ボリュームの有効期日は、常に、テープの最初のファイルの有効期日で決まります。Tape_Expiration修飾子は、ディスクへのバックアップ操作には使用できません。
テープのラベル処理の詳細は、『Oracle Rdb Guide to Database Maintenance』を参照してください。
Threshold=disk-blocks
Nothreshold
この修飾子は、拡張可能なジャーナルが有効な場合にのみ使用できます。固定サイズのジャーナルには使用できません。Threshold修飾子によって、アクティブな.aijファイルのサイズのおおよその限度が設定されます。アクティブな.aijファイルのサイズがしきい値を超えると、バックアップ・プロセスによって、アクティブな.aijファイルのバックアップおよび切捨て(リセット)が終了するまで、新規トランザクションを開始できません。バックアップ操作中、既存のトランザクションでは、.aijファイルへの書込みを続けられます。新規トランザクションの開始前に、既存のトランザクションから発行されたすべてのアクティビティが(しきい値を超えた後に発生したアクティビティも含め)アクティブな.aijディスク・ファイルから.aijバックアップ・ファイルへ移動されている必要があります。その時点で、アクティブな.aijファイルが完全に切り捨てられます。
デフォルトのNothreshold修飾子を使用する場合、各バックアップ・サイクルで、アクティブな.aijファイルが完全にバックアップされます。Nothreshold修飾子を使用することをお薦めします。
Threshold修飾子に適切な値は、データベースのアクティビティ、使用するディスク領域の量、バックアップ操作が連続かどうか、およびバックアップ操作の完了を待つ時間の長さによって異なります。
SPAMしきい値の設定の詳細は、『Oracle Rdb7 Guide to Database Performance and Tuning』を参照してください。
Until=time
連続バックアップ・プロセスを停止するおおよその日時を指定します。デフォルトはありません。Wait=n
Nowait
バックアップの準備がてきていないジャーナルがあった場合に、バックアップ操作で待機する(Wait修飾子)か、終了する(Nowait修飾子)かを指定します。Wait修飾子に指定する値は、準備ができていないジャーナルのバックアップを試行する間隔(秒)です。Sequence修飾子が指定されている場合にのみ、WaitまたはNowait修飾子も指定できます。Wait修飾子を指定した場合、間隔のデフォルト値は60秒です。
デフォルトはNowait修飾子です。
- データベースに対してRMU Backup After_Journalコマンドを使用するには、データベースのルート・ファイル・アクセス制御リスト(ACL)にRMU$BACKUP権限を持っているか、OpenVMSのSYSPRVまたはBYPASS権限を持っている必要があります。
- RMU Backup After_Journalコマンドのパフォーマンスの改善の詳細は、『Oracle Rdb7 Guide to Database Performance and Tuning』を参照してください。
注意
高速コミットが有効で、拡張可能な.aijファイル構成が使用されている場合、アフター・イメージ・ジャーナル・バックアップ・プロセスによって、元の.aijファイルの一部が圧縮され、(現在の.aijファイルの新規バージョンに)保持されます。この部分は、元のサイズの100%の場合があります。このため、バックアップの前に、必ず、最大サイズの.aijファイルの複製に十分な領域を確保するようにしてください。
.aijバックアップ操作は、十分な頻度でスケジュールし、空き領域のクリティカルな状況が検出できるよう、空き領域とジャーナル・ファイルのサイズを定期的に確認することをお薦めします。(これは、高速コミットが有効かどうかに関係なく行うことをお薦めします。)
ただし、高速コミットが有効で、RMU Backup After_Journalコマンドを発行し、.aijファイルに十分な領域がないことがわかった場合、次のいずれかを行います。
- 不必要なファイルを削除して、.aijファイルを置くディスクに十分な領域を作成します。
- 高速コミットを一時的に無効にし、.aijファイルをバックアップします。
- データベースを閉じ、アフター・イメージ・ジャーナルを無効にし、新規アフター・イメージ・ジャーナル・ファイルを有効にして、バックアップ操作を行います。(データベースは、バックアップ操作の前でも後でも開くことができます。)
- データベースを閉じます。.aijファイルに十分な大きさのバインドされたボリューム・セットまたはストライプ・セットを作成し、そこに.aijファイルをコピーします。RMU Set After_Journalコマンドを使用して、.aijファイル名を変更し(または、ジャーナルの検出に論理名が使用されている場合は、論理名を再定義し)、データベースを再度開きます。
- テープへの.aijバックアップ操作にFormat=Old_File修飾子を指定した場合、またはディスクへの.aijバックアップ操作にFormat=New_Tape修飾子を指定した場合、次の問題が起こる可能性があることに注意してください。
- テープへの.aijバックアップ操作にFormat=Old_File修飾子を使用し、テープがFOREIGNボリュームとしてマウントされている場合、ラベルなしのテープが作成され、リカバリ操作での使用は難しくなります。
したがって、テープへの.aijバックアップ操作にFormat=Old_File修飾子を使用する場合、テープをOpenVMSボリュームとしてマウントする必要があります(つまり、DCL MOUNTコマンドで/FOREIGN修飾子を指定しません)。- .aijファイルのバックアップに使用した形式を記録し、.aijバックアップ・ファイルに対してRMU Dump After_Journal、RMU Optimize After_JournalまたはRMU Recoverコマンドを発行する際、同じ形式を指定する必要があります。
Format=New_Tapeはテープへのバックアップに指定し、Format=Old_Fileはディスクへのバックアップに指定するというガイドラインに常に従う場合は、以降のOracle RMU .aijコマンドで使用するために、.aijバックアップ操作で指定した形式を記録しておく必要はありません。- テープへのバックアップ操作にFormat=Old_Fileを指定し、.aijが複数テープ・ボリュームに及ぶ場合、.aijファイルのリカバリで問題が起こる可能性があります。
- RMU Backup After_Journalコマンドを使用して.aijファイルをテープにスプールすることにより、ディスク領域を節約できます。
- 拡張可能な.aijファイルを使用する場合、アフター・イメージ・ジャーナル・バックアップ操作の開始後に.aijファイルの新規バージョンが作成されますが、古い.aijファイルがアクティブで大きくなり続けることに注意してください。切替えが行われる(.aijファイルの新規バージョンの作成から数時間かかる場合もあります)まで、古い.aijファイルがアクセスされます。このため(また、他の理由からも)、.aijファイル(またはデータベース・ファイル)にDCL DELETEまたはDCL PURGEを使用しないでください。
- 次のリストに、Quiet_PointおよびNoquiet_Point修飾子の使用に関する情報を示します。
- 静止ポイントOracle RMUバックアップで処理がストールした場合、他のユーザーが静止ポイント・ロックを保持している可能性があります。一部のケースでは、このストールは回避できません。ただし、ストールの原因が、読取り/書込みトランザクションを以前に発行して完了し、現在は読取り専用トランザクションを実行しているユーザーの場合もあります。このユーザーが読取り/書込みトランザクションを開始したとき、プロセスで静止ポイント・ロックが取得されました。通常は、このプロセスがデータベースからデタッチするまで、このロックは保持されます。
RDM$BIND_SNAP_QUIET_POINT論理名を設定して、このようなプロセスが静止ポイント・ロックを保持するかどうかを制御できます。論理名の値に"1"を設定すると、このようなプロセスがデータベースからデタッチするまで、プロセスで静止ポイント・ロックを保持されます。論理名の値に"0"を設定すると、読取り専用トランザクションの開始前に、プロセスで静止ポイント・ロックが必ず解放されます。- データベースとアフター・イメージ・ジャーナル・ファイルの両方のバックアップ方法を検討する際、静止ポイント・バックアップ操作と非静止ポイント・バックアップ操作とのトレードオフを考慮に入れます。非静止ポイント・バックアップ操作は静止ポイント・バックアップ操作より高速ですが、通常リカバリ操作に時間がかかります。.aijの非静止ポイント・バックアップ操作を行うと、トランザクションが複数の.aijファイルに及ぶことがあるため、データベースのリカバリに多数の.aijファイルを適用する必要がある場合があります。最悪の場合、最後の.aijの静止ポイント・バックアップまたはデータベースのバックアップ操作にまで遡ることもあります。静止ポイント・バックアップ操作をあまり行わない場合、リカバリに非常に時間がかかる場合があります。
これらのトレードオフの解消に使用できる1つの方法は、定期的にスケジュールされた.aijの静止ポイント・バックアップ操作の後、非静止ポイント・バックアップ操作を行うことです。(順序は逆でもかまいませんが、リカバリ操作が必要になった場合、.aijファイルの静止ポイント・バックアップによってリカバリのパフォーマンスが向上します。).aijの静止ポイント・バックアップ操作を定期的に行うことで、リカバリに多大な時間がかかることはなくなります。- Noquiet_Point修飾子を使用して作成された.aijファイルは静止ポイントで終了しないため、Noquiet_Point修飾子をFormat=New_Tape修飾子と組み合せて使用できません。一部のトランザクションは、複数のバックアップ・ファイルに及ぶ場合があります。これらのバックアップ・ファイルからリカバリする場合、1つのRMU Recoverコマンドで複数のバックアップ・ファイルを適用する必要が往々にしてあります。しかし、Format=New_Tape修飾子を指定したRMU Recoverコマンドでは、一度に1つのバックアップ・ファイルしか処理できないため、Noquiet_Point修飾子を使用して作成されたバックアップ・ファイルはサポートできません。
- Oracle RMUのテープ処理では、使用するテープ・ドライブは自動的に割り当てられません。少数のテープ・ドライブを多数のユーザーで使用する状況では、Oracle RMUで次のテープ・ボリュームのロードを待機している間に、他のユーザーがドライブを占有する場合があります。
これを回避するには、Oracle RMUコマンドを発行する前にドライブに対してDCL ALLOCATEコマンドを発行し、Oracle RMUコマンドの完了後DCL DEALLOCATEコマンドを発行します。- Label修飾子は、間接ファイル参照と組み合せて使用できます。詳細は、第1.3節を参照してください。
- .aijバックアップ・プロセスが失敗し、完了前に終了した場合、バックアップ操作が完了しなかったため、結果の.aijバックアップ・ファイルをユーザーが破棄する場合があります。しかし、失敗したバックアップ・プロセスによって生成されたものも含め、すべての.aijバックアップ・ファイルがデータベースのリカバリに必要です。失敗したバックアップ・プロセスの.aijバックアップ・ファイルを破棄した場合、データベースをその時点以降リカバリできません。.aijバックアップ・メディアとして磁気テープを使用する場合、これは特に重要です。この場合、この磁気テープを保存し、再利用しないでください。
- .aijバックアップ・プロセス(特に、連続(Continuous)モードで実行しているプロセス)が.aijバックアップ・ファイルに書き込むとき、転送されたデータがデータベース.aijファイルから削除されることがあります。バックアップ・プロセスがその後失敗したり、完了前に終了([Ctrl]+[Y]やDCL STOPコマンドなどで)した場合、データがアクティブなデータベース.aijファイルから削除されているため、データを後続の.aijバックアップ・ファイルに再転送できない可能性があります。
したがって、すべての.aijバックアップ・ファイル(失敗または終了したバックアップ・プロセスで生成されたものも)を保存することが非常に重要です。結果の.aijバックアップ・ファイルを破棄すると、次の.aijファイルとの間にトランザクションの食い違いが生じ、その時点以降のトランザクションをロールフォワードできなくなる場合があります。
この問題は、テープに直接バックアップする場合、影響度がより大きくなります。このため、テープにバックアップする場合は、無制限または長時間のバックアップ操作を使用するのではなく、一度に1つのジャーナルをバックアップします。
注意
この問題が起きた場合、データベースに矛盾または破損はありません。むしろ、破棄された.aijバックアップ・ファイル以降データベースをロールフォワードできません。
この問題を解決するには、すべての.aijバックアップ・ファイルを保存し、データベースを完全にリカバリできるようにします。
.aijバックアップ・ファイルを破棄した場合、データベースの全体完全バックアップ操作をすぐに行い、データベースを現在のトランザクションまでリストアできるようにします。- AIJバックアップ操作が完了すると、アフター・イメージ・ジャーナル・ファイルは、-1(16進のFF)のバイトのパターンで初期化されます。この初期化は、できるだけ高速になるよう設計されています。一度に多くの大規模非同期I/O操作を行うことによって、I/Oサブシステムをフルに活用します。ただし、このスピードには、初期化時のI/Oコンポーネントに対する高ロードが伴います。このロードによって、システムの他のI/O操作が遅くなる場合があります。
2つの論理名を使用して、AIJ初期化処理でシステムにかかる相対I/Oロードを制御できます。これらの論理名をシステム論理名表で定義した場合、AIJファイルの初期化のたびに、論理名が変換されます。
RDM$BIND_AIJ_INITIALIZE_IO_COUNT論理名には、AIJファイルに一度にキューイングされる非同期I/O操作の数を指定します。論理名が定義されていない場合のデフォルト値は15で、最小値は1、最大値は32です。
RDM$BIND_AIJ_INITIALIZE_IO_SIZE論理名では、I/O操作ごとに書き込まれる512バイトのディスク・ブロックの数が制御されます。論理名が定義されていない場合のデフォルト値は127で、最小値は4、最大値は127です。
論理名の値を小さくすると、バックアップ後のAIJファイルの初期化に必要な時間が増えます。ただし、I/Oサブシステムに対するロードも少なくなります。- 以前にサポートされていた値は想定どおりに機能しない可能性があるため、OpenVMSバージョン7.2-1で追加された記録密度の値を、これを受け付けるOpenVMSのテープ・デバイス・ドライバに使用します。OpenVMSバージョン7.2-1の記録密度の値をサポートするドライバに、以前にサポートされていた値を指定すると、以前の値がバージョン7.2-1の密度の値に、可能な場合、変換されます。値が変換できない場合、警告メッセージが表示され、指定した値が使用されます。
OpenVMSバージョン7.2-1で追加された記録密度の値を、これをサポートしないテープ・デバイス・ドライバに指定すると、可能な場合は、値が受け入れ可能な値に変換されます。値が変換できない場合、警告メッセージが表示され、値は、既存のデフォルトの内部記録密度値(MT$K_DEFAULT)に変換されます。
指定した値とテープ・デバイス・ドライバで受け付ける値が不整合の場合、次の密度関連のエラーのいずれかが表示されます。
%DBO-E-DENSITY, TAPE_DEVICE:[000000]DATABASE.BCK; does not support specified density %DBO-E-POSITERR, error positioning TAPE_DEVICE: %DBO-E-BADDENSITY, The specified tape density is invalid for this device
- サポートされていない密度の値を使用する場合、VMS INITIALIZEおよびMOUNTコマンドを使用して、テープの記録密度を設定します。Density修飾子は使用しないでください。
- RMU Backup After_JournalにLog修飾子を使用すると、DCLグローバル・シンボルRDM$AIJ_LAST_OUTPUT_FILEが自動的に作成されます。シンボルの値は、フル出力のバックアップAIJファイル指定です。
- データベースを表すデータ・ストリーム名は、Oracle RMUバックアップ・コマンドで指定されたバックアップ・ファイル名に基づいて生成されるため、データベースのLibrarianユーティリティへの次のバックアップの格納には別のバックアップ・ファイル名を使用するか、同じファイル名を再度使用する前に、まず、バックアップ・ファイル名から生成された既存のデータ・ストリームを削除する必要があります。
Librarianユーティリティに格納されている既存のデータ・ストリームを削除するには、Librarian管理ユーティリティまたはOracle RMU Librarian/Removeコマンドを使用します。
例1MF_PERSONNELデータベースでアフター・イメージ・ジャーナルが有効になっているとすると、次のコマンドで、拡張可能な.aijのエントリが、指定した時間になるまで連続してバックアップされます。
$ RMU/BACKUP/AFTER_JOURNAL/CONTINUOUS/THRESHOLD=500 - _$ /INTERVAL=300/UNTIL="01-JUL-1996 16:15:00.00" - _$ MF_PERSONNEL.RDB DISK12:[PERS_AIJ]BU_PERSONNEL.AIJ
300秒ごとに、ディスクのアクティブな.aijファイルがしきい値の500ブロックに達しているかどうかがバックアップ・プロセスで確認されます。達していない場合、しきい値のテストでアクティブな.aijファイルが少なくとも500ブロックのサイズに達したことが示されるまで、通常、トランザクション処理が300秒間隔で繰り返し行われます。.aijファイルがこのファイル・サイズに達すると、Oracle RMUで、既存のトランザクションが引き続きアクティブな.aijファイルへ書き込むことは許可されますが、新規トランザクションは開始できません。
アクティブな.aijファイルに550ブロック含まれているとすると、Oracle Rdbでこの550ブロックがバックアップ・ジャーナル・ファイルに移動され、アクティブなジャーナル・ファイルから削除されます。その後、バックアップ操作中に、すでに進行中であったトランザクションによってアクティブなジャーナル・ファイルへジャーナル・レコードが追加されたかどうかが、バックアップ・プロセスで確認されます。そうであった場合、Oracle RMUでこれらのジャーナル・レコードがバックアップ・ファイルに移動されます。
Oracle Rdbで、アクティブなジャーナル・ファイルを完全に移動した後、ジャーナル・ファイルが0ブロックに切り捨てられます。その後、Oracle Rdbで、新規トランザクションが開始され、バックアップ・プロセスの300秒間隔のしきい値テストが再開します。Until修飾子で指定された日時になるまで、バックアップ・プロセスは続行します。
例2
次の例では、.aijファイルのバックアップが続けて行われる例を示します。バックアップ操作の間に多数のトランザクションがデータベースにコミットされることに注意してください。
$ RMU/BACKUP/AFTER_JOURNAL/LOG MF_PERSONNEL MFPERS_BKUP_AIJ1.AIJ %RMU-I-AIJBCKBEG, beginning after-image journal backup operation %RMU-I-OPERNOTIFY, system operator notification: Oracle Rdb V8.0 Database DISK1:[DB]MF_PERSONNEL.RDB;1 Event Notification AIJ backup operation started %RMU-I-AIJBCKSEQ, backing up after-image journal sequence number 0 %RMU-I-LOGBCKAIJ, backing up after-image journal AIJ1 at 16:35:53.41 %RMU-I-LOGCREBCK, created backup file DISK1:[DB]MFPERS_BKUP_AIJ1.AIJ;1 %RMU-I-AIJBCKSEQ, backing up after-image journal sequence number 1 %RMU-I-LOGBCKAIJ, backing up after-image journal AIJ2 at 16:35:54.58 %RMU-I-QUIETPT, waiting for database quiet point %RMU-I-OPERNOTIFY, system operator notification: Oracle Rdb V8.0 Database DISK1:[DB]MF_PERSONNEL.RDB;1 Event Notification AIJ backup operation completed %RMU-I-AIJBCKEND, after-image journal backup operation completed successfully %RMU-I-LOGAIJJRN, backed up 2 after-image journals at 16:35:56.40 %RMU-I-LOGAIJBLK, backed up 508 after-image journal blocks at 16:35:56.41 . . . $ More transactions committed to the database . . . $ RMU/BACKUP/AFTER_JOURNAL/LOG MF_PERSONNEL MFPERS_BKUP_AIJ2.AIJ %RMU-I-AIJBCKBEG, beginning after-image journal backup operation %RMU-I-OPERNOTIFY, system operator notification: Oracle Rdb V8.0 Database DISK1:[DB]MF_PERSONNEL.RDB;1 Event Notification AIJ backup operation started %RMU-I-AIJBCKSEQ, backing up after-image journal sequence number 2 %RMU-I-LOGBCKAIJ, backing up after-image journal AIJ1 at 16:47:44.66 %RMU-I-LOGCREBCK, created backup file DISK2:[AIJ]MFPERS_BKUP_AIJ2.AIJ;1 %RMU-I-OPERNOTIFY, system operator notification: Oracle Rdb V8.0 Database DISK1:[DB]MF_PERSONNEL.RDB;1 Event Notification AIJ backup operation completed %RMU-I-AIJBCKEND, after-image journal backup operation completed successfully %RMU-I-LOGAIJJRN, backed up 1 after-image journal at 16:47:46.57 %RMU-I-LOGAIJBLK, backed up 254 after-image journal blocks at 16:47:46.57
例3
次の例では、Edit_Filename修飾子を使用して、わかりやすいファイル名を.aijバックアップ・ファイルに付けます。Rename修飾子によって、現在の.aijファイルの名前を変更し、元の.aijファイルと同じ名前を使用して新規.aijファイルを作成することによって、Oracle RMUでバックアップ・ファイルを作成するよう指定されます。
$ RMU/BACKUP/AFTER_JOURNAL MF_PERSONNEL - _$ /EDIT_FILENAME=(SEQUENCE,"_",HOUR,"_",MINUTE,"_",MONTH,"_", - _$ DAY_OF_MONTH) AIJ2/RENAME $ DIR DISK1:[DB.AIJ2]*.AIJ Directory DISK1:[DB.AIJ_TWO] AIJ23_15_46_07_09.AIJ;1
例4
次の例では、.aijバックアップ・ファイル名のデフォルトを、RMU Set After_Journalコマンドで以前に指定したものにする場合に使用する構文を示します。使用される.aijバックアップ・ファイル名は、バックアップ操作に含まれる最初の.aijファイルに対応していることに注意してください。
$ RMU/SET AFTER_JOURNAL MF_PERSONNEL /ENABLE/RESERVE=5 - _$ /ADD=(NAME=AIJ1, FILE=DISK1:[AIJ]AIJ_ONE, - _$ BACKUP_FILE=DISK4:[AIJBCK]AIJ1BCK) - _$ /ADD=(NAME=AIJ2, FILE=DISK2:[AIJ]AIJ_TWO, - _$ BACKUP_FILE=DISK4:[AIJBCK]AIJ2BCK) - _$ /ADD=(NAME=AIJ3, FILE=DISK3:[AIJ]AIJ_THREE, - _$ BACKUP_FILE=DISK4:[AIJBCK]AIJ3BCK) %RMU-W-DOFULLBCK, full database backup should be done to ensure future recovery $ ! $ !Assume backup operation was performed and other database activity occurs. $ !Then back up the .aij files: $ ! $ RMU/BACKUP/AFTER_JOURNAL MF_PERSONNEL.RDB "" $ ! $ DIR DISK4:[AIJBCK] Directory DISK4:[AIJBCK] AIJ1BCK.AIJ;1
例5
次の例では、圧縮と密度の値を使用します。
RMU/BACKUP/AFTER_JOURNAL /DENSITY=(TK89,COMPACTION)/REWIND - /LABEL=(LABEL1,LABEL2) MF_PERSONNEL TAPE1:MFP.AIJ, TAPE2: