ADARAI ユーティリティは、 リカバリログ(RLOG)の準備、RLOG に含まれる情報のリスト、データベースを回復するためのジョブ制御ステートメントの作成、および ADARAI ロギングの無効化を行います。
Adabas セッションが異常終了したときのために、トランザクションリカバリが用意されています。 Adabas 自動バックアウトルーチンは、どの Adabas セッションでも開始時に常に自動的に起動され、中断されたすべてのトランザクションの処理内容をデータベースから削除します。 『Adabas オペレーションマニュアル』にある再スタート/リカバリに関する情報を参照してください。
ただし、データベースのデータセット(ASSO、DATA、または WORK)が破壊された場合は、データベースをリストアおよび再生成して、失われたデータをリカバリする必要があります。
Adabas Recovery Aid ユーティリティ ADARAI を使用すると、データベースのリカバリを自動化し、最適化できます。 Adabas 自動バックアウトルーチンは、データベースのリカバリに必要なすべての情報を記録および報告し、リカバリジョブストリーム(JCL/JCS)を作成します。このストリームに基づいて、最後に SAVE を実行した時点から障害およびエラーの時点までに実行したジョブが再実行されます。
注意:
ジョブストリーム生成機能は、VSE または z/VM の環境では使用できません。
このドキュメントでは、次のトピックについて説明します。
Adabas Recovery Aid は次の 2 つのコンポーネントで構成されています。
データベースに対して関連イベントが発生したときに情報収集するインタフェース(ADARAC)
収集された情報の列挙、データベースまたはデータベース上のファイルを回復するジョブの生成、またはリカバリロギングの非アクティブ化を行うユーティリティ(ADARAI)
このセクションでは、次のトピックについて説明します。
収集インタフェースは、ニュークリアスの停止/開始、ユーティリティの実行、Adabas Online System で生成されたイベントなど、発生した各イベントに関する情報を記録するために、ニュークリアスおよびすべてのユーティリティからコールされます。
イベント情報は、ユーティリティコンポーネントで使用するため、インタフェースによってリカバリログファイル(RLOG)にすべて記録されます。 RLOG には、リカバリジョブコントロールの構築に必要なデータセット、ユーティリティパラメータ、およびプロテクションログに関する情報が格納されます。 RLOG データセットは DD/RLOGR1 です。
ニュークリアスクラスタ環境では、すべてのニュークリアスで同じ RLOG を使用します。 RLOG の同時更新はロックによって制御されます。
注意:
情報は世代別に RLOG に格納されます。世代とは、リカバリに使用される論理単位のことです。
世代には、次の一連のオペレーション間のすべてのアクティビティが含まれます。
ADASAV SAVE/RESTORE(データベース)
RESTORE GCB
SAVE DELTA/RESTORE DELTA(データベース)
最初の世代には最初のオペレーションが含まれ、次の世代にまで拡張されます(ただし次の世代は除外されます)。 新しい世代は、前のオペレーションの後、データベースを完全に回復できる状態になった時点で開始します。
世代には、正常、制限付き、およびエラーの 3 種類があります。
世代の開始時にフルセーブを使用でき、かつ、アクティビティの記録中に異常なイベントが発生しなかった場合は、"正常" であることを示すラベルが世代に付けられます。
ADARAI でデータベースを再構築するにはユーザーが介入する必要のあるイベントがロギングサイクル中に発生すると、その世代には、"制限付き" であることを示すラベルが付けられます。 ジョブは ADARAI によって生成されますが、実行するには、ユーザーの介入が必要です。 例えば、WORK データセットサイズが減少した場合、減少した時点までのリカバリジョブを正しく実行できるようにするには、ユーザーが元のサイズで WORK データセットを作成する必要があります。
何らかの理由でロギングサイクル中にエラーが発生すると、"エラー" であることを示すラベルが世代に付けられます。 ジョブは ADARAI によって生成されますが、実行するには、変更を加える必要があります。
注意:
世代が制限付きまたはエラーになった場合は、データベースのオンライン/オフラインセーブを実行して、なるべく早く新しい世代を開始することをお勧めします。
Adabas Delta Save がインストールされている場合は、SAVE DELTA を実行すると新しい世代が開始されます。
非現行世代には、データベースに影響を与えた操作履歴が含まれており、問題の解決または監査に使用できます。
リカバリジョブの RESTORE ステップが実行された後、データベースの回復に失敗した場合は、非現行世代へアクセスできることが重要になります。 この時点では、回復対象の世代は現行世代になります。 このとき、リカバリジョブを再構築することが必要になった場合、回復対象の世代は旧世代になります。
RLOG には、ADARAI PREPARE ステップの実行中に MINGENS パラメータで指定された世代数が保持されます。 RLOG に保存された数値が MINGENS パラメータの指定値に達すると、ADARAI によって世代が再生されます。
新しい世代および保存済みの世代が使用可能な RLOG スペースを超えると、次のいずれかのイベントが発生します。
MINGENS で指定された最小世代数を保持する場合は、最も古い世代が上書きされます。
それ以外の場合は、RLOG コントロールブロックにフラグが設定され、RLOG はサービス休止になります。 この場合、データは記録されなくなります。