自動バックワード回復プロセス

自動バックワード回復プロセスについて説明します。

デフォルトでは、自動バックワード回復は無効になっています。

重要: バックワード回復のためのトランザクション ログ (TLOG) ファイルの扱いは、フォワード回復が有効かどうかによって異なります。詳細は「TLOG ファイル」を参照してください。

自動バックワード回復の判定

通常の Enterprise Server の起動、または IMS Database Control の再起動時に、DBC は DBC の最後のシャットダウンが正常に実行されたかどうかを判定します。正常に実行されていなかった場合、DBC は自動的に最新の TLOG をスキャンして、回復が必要なデータベースの有無を判定します。ただし、それによって回復プロセスは開始されません。破損していると判定された各データベースの名前は、デフォルトで %USERPROFILE%\Documents\Micro Focus User\Enterprise Developer\WORKAREA\ESName ディレクトリに置かれている ROLLBACK.LST ファイルに書き込まれ、DBC は「一時停止」モードに切り替わります。つまり、通常のトランザクション処理は禁止されていることを意味します。このモードの DBC では、データベースを回復、START、および STOP するコマンドのみが許可されます。この場合、JCL ジョブから、または mfims imsdbu ロールバック機能を使用して、データベースを手動で回復できます。すべてのデータベースが正常に回復していることが確認できたら、/DBC RESUME コマンドを使用して、DBC の機能を完全に回復させます。詳細は、「IMS データベース制御 (DBC) コマンド」を参照してください。

自動バックワード回復の有効化

エンタープライズ サーバー インスタンスのための構成情報における ES_IMS_ROLLBACK 環境変数を 1 に設定して、自動バックワード回復を有効にできます。次に例を示します。
[ES-Environment]
ES_IMS_ROLLBACK=1

通常の Enterprise Server 起動による起動時または緊急トリガー時に、IMS Database Control (DBC) プロセスは DBC の最後のシャットダウンが正常に実行されたかどうかを判定します。これを行うには、デフォルトで %USERPROFILE%\Documents\Micro Focus User\Enterprise Developer\WORKAREA\ESName ディレクトリに置かれている DBC ステータス ファイル IMSDBC.DAT を読み取ります。このファイルは、各 IMS データベースのシャットダウンおよびステータス変更のたびに、そのステータスで更新されます。

Enterprise Server 起動時、DBC は IMSDBC.DAT ファイルから各データベースの最新のステータスを読み取り、正常にシャットダウンしたデータベースを最新の状態に復元します。

IMSDBC.DAT によって 1 つ以上のデータベースが正常にシャットダウンしていないことが示された場合、DBC は自動的にバックワード回復を呼び出し、入力用として最新のトランザクション ログ (TLOG) ファイルを使用してそれらの各データベースを回復します。

すべてのデータベースの回復が完了したら、回復したデータベースおよび回復プロセス中に返された警告またはエラー メッセージの概要が、デフォルトでは ROLLBACK.LST という名前で %USERPROFILE%\Documents\Micro Focus User\Enterprise Developer\WORKAREA\ESName ディレクトリに置かれているリスト ファイルに書き込まれます。

注: 何らかの理由で DBC が IMSDBC.DAT ファイルを読み取れない場合、DBC は「一時停止」モードで起動します。その場合、通常のトランザクション処理は禁止されます。このモードの DBC では、データベースを回復、START、および STOP するコマンドのみが許可されます。この場合、JCL ジョブから、または mfims imsdbu ロールバック機能を使用して、データベースを手動で回復できます。すべてのデータベースが正常に回復していることが確認できたら、/DBC RESUME コマンドを使用して、DBC の機能を完全に回復させます。詳細については、「IMS データベース制御 (DBC) コマンド」を参照してください。