付録B.1 システムログを使用しない運用でのバックアップとリカバリー
障害などが発生した場合,任意のタイミング(JP1/AJS3の停止時)に取得したバックアップファイルを使用してデータベースを回復させます。この運用では,回復時にシステムログを使用しません。
(1) バックアップファイルの取得タイミング
JP1/AJS3の環境に障害が発生した場合は,JP1/AJS3の環境とスケジューラーデータベースの環境を,同期を取って回復する必要があります。そのため,JP1/AJS3の運用を停止できるときは,JP1/AJS3のバックアップファイルを取得するとともに,ajsembdbbackupコマンドを実行して,スケジューラーデータベースのバックアップファイルを取得してください。バックアップファイルを取得した場合,以前取得したバックアップファイルは任意の方法で削除して問題ありません。
バックアップファイルの取得タイミングを次の図に示します。
(2) バックアップファイルの管理
データベースの回復時にバックアップファイルが必要になるため,取得したバックアップファイルを保存しておく必要があります。新たにバックアップファイルを取得する場合,それ以前に取得したバックアップファイルは不要になるため,必要に応じて削除してください。
(3) バックアップファイルの取得手順
バックアップファイルの取得手順を次に示します。
-
該当するスケジューラーデータベースを使用するスケジューラーサービス,およびスケジューラーデータベースにアクセスするJP1/AJS3のサービスをすべて停止する。
-
操作対象となる組み込みDBを起動する。
-
Windowsの場合
対象のJP1/AJS3 Database _JFn(nは0〜9またはA〜Zのどれか)サービスが開始していることを確認してください。開始していない場合は,対象のJP1/AJS3 Database _JFnサービスを開始してください。そのあと,ajsembdbstatusコマンドに-s ust -id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。稼働状態になっていない場合は,ajsembdbstartコマンドに-id _JFnオプションを指定して実行してください。
-
UNIXの場合
ajsembdbstartコマンドに-id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行してください。そのあと,ajsembdbstatusコマンドに-s ust -id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。
-
-
ajsembdbbackupコマンドを実行し,バックアップファイルを取得する。
ajsembdbbackupコマンドには,-sオプションを指定しないでください。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
手順1で停止したサービスを起動し,通常の運用を再開する。
ajsembdbbackupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド ajsembdbbackup」を参照してください。
なお,バックアップファイルを取得するときに,スケジューラーサービスが稼働中であったり,スケジューラーデータベースを参照および更新していたりすると,ajsembdbbackupコマンドがエラーになる場合があります。
(4) 障害発生時のデータベースの回復手順
障害のケースごとに回復手順を説明します。
なお,データベースの回復に使用するajsembdbbackupコマンド,ajsembdbrstrコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 3. 通常の運用で使用するコマンド」を,ajsembdbbuildコマンド,ajsembdbsetupコマンド,ajsembdbunsetコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 3 コマンドリファレンス 2. セットアップコマンド」を参照してください。
(a) データ領域のディスクに障害が発生した場合
データ領域のディスクに障害が発生した場合の回復手順を次に示します。
なお,クラスタ環境で回復する場合は,次の操作は実行系で実施してください。待機系では実施しないでください。
-
物理ホストおよびすべての論理ホストで,スケジューラーデータベースにアクセスするJP1/AJS3のサービスをすべて停止する。
-
ajsembdbunsetコマンドを実行し,データベース環境を削除する。
ajsembdbunsetコマンドに,-eオプションを指定してください。
-
障害を取り除く。
-
ajsembdbbuildコマンドを実行し,データベース環境を再構築する。
ajsembdbbuildコマンドの実行時,コマンドに指定する内容は,障害発生前のデータベース環境を構築したときと同じ内容にしてください。指定内容が異なると,このあとのスケジューラーデータベースの回復時にエラーが発生し,回復できません。
-
ajsembdbsetupコマンドを実行し,スケジューラーデータベースをセットアップする。
ajsembdbsetupコマンドの実行時,コマンドに指定する内容は,障害発生前の組み込みDBへの移行のときと同じ内容にしてください。指定内容が異なると,このあとのスケジューラーデータベースの回復時にエラーが発生し,回復できません。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
ajsembdbstartコマンドに-rオプションを指定して実行し,システム領域を回復するモードで組み込みDBを起動する。
-
ajsembdbrstrコマンドに-Mオプションを指定して実行し,組み込みDBのシステム領域を回復する。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
ajsembdbstartコマンドを実行し,組み込みDBを起動する。
-
ajsembdbrstrコマンドを実行し,スケジューラーデータベースを回復する。
ajsembdbrstrコマンドには,-ldオプションおよび-lオプションを指定しないでください。
-
ajsembdbbackupコマンドを実行する。
ajsembdbbackupコマンドを実行して,バックアップファイルを取得してください。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
手順1で停止したサービスを起動する。
(b) データベースのシステムログファイルのディスクに障害が発生した場合
「(a) データ領域のディスクに障害が発生した場合」と同様に,データベースを再構築する必要があります。回復方法については,そちらを参照してください。
(c) JP1/AJS3とデータベースに同時に障害が発生した場合
JP1/AJS3とデータベースに同時に障害が発生した場合の回復手順を次に示します。
なお,クラスタ環境で回復する場合は,次の操作を実行系としてセットアップした環境で実施してください。待機系では実行しないでください。
-
障害を取り除く。
-
JP1/AJS3をバックアップファイルからリカバリーする。
JP1/AJS3のリカバリーについては,「2. バックアップとリカバリー」を参照してください。
-
該当するスケジューラーデータベースを使用するスケジューラーサービス,およびスケジューラーデータベースにアクセスするJP1/AJS3のサービスをすべて停止する。
-
操作対象となる組み込みDBを起動する。
-
Windowsの場合
対象のJP1/AJS3 Database _JFn(nは0〜9またはA〜Zのどれか)サービスが開始していることを確認してください。開始していない場合は,対象のJP1/AJS3 Database _JFnサービスを開始してください。そのあと,ajsembdbstatusコマンドに-s ust -id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。稼働状態になっていない場合は,ajsembdbstartコマンドに-id _JFnオプションを指定して実行してください。
-
UNIXの場合
ajsembdbstartコマンドに-id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行してください。そのあと,ajsembdbstatusコマンドに-s ust -id _JFn(nは0〜9またはA〜Zのどれか)オプションを指定して実行し,組み込みDBが稼働状態になっていること(UNIT-STATがONLINEになっていること)を確認してください。
-
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
ajsembdbstartコマンドに-rオプションを指定して実行し,システム領域を回復するモードで組み込みDBを起動する。
-
ajsembdbrstrコマンドに-Mオプションを指定して実行し,組み込みDBのシステム領域を回復する。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
ajsembdbstartコマンドを実行し,組み込みDBを起動する。
-
ajsembdbrstrコマンドを実行し,スケジューラーデータベースを回復する。
ajsembdbrstrコマンドには,-ldオプションおよび-lオプションを指定しないでください。
-
ajsembdbstopコマンドを実行し,組み込みDBを停止する。
-
手順3で停止したサービスを起動する。
必要に応じて,JP1/AJS3サービスをコールドスタートで起動してください。
以上の手順を実施することで,JP1/AJS3と同期を取ってデータベースをバックアップファイル取得時の状態まで回復させることができます。
(d) JP1/AJS3に障害が発生した場合
「(c) JP1/AJS3とデータベースに同時に障害が発生した場合」と同様の手順で回復してください。