15.14.2 スケジューラーデータベースで使用するDBMSを変更する
スケジューラーデータベースで使用するDBMSを変更する手順を次に示します。ISAM,および組み込みDB間で変換する場合に必要な手順です。
この操作を行うことによって,スケジューラーデータベースで使用しているDBMSをISAMに変更できます。
- 補足事項
- ISAMから組み込みDBに移行するには,ajsembdbsetupスクリプトで容易に移行できます。マニュアル「JP1/Automatic Job Management System 2 セットアップガイド」を参照してください。
- また,JP1/AJS2 06-71以前のバージョンでOracleデータベースを使用していた場合,組み込みDBに移行するためには,一度ISAMにスケジューラーデータベースを移行する必要があります。
- すべてのユニット情報をファイルに出力する。
次の形式でコマンドを実行します。
ajsprint -F スケジューラーサービス名 -a "/*" > ajs2unit.txt
ajsprintコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド ajsprint」を参照してください。
- 注意事項
- ajsprintコマンドの実行時に,ルートジョブグループ「/」の情報(ルートジョブグループの所有者,JP1資源グループ,コメント,基準日,月区分,基準時刻)についてはバックアップできません。移行先で新しく設定する必要があります。なお,次の形式でajsprintコマンドを実行すれば,カレンダー定義情報を取得できます。
ajsprint -d "/" > ajs2cal.txt
- ユニット環境定義情報ファイルの大きさに応じて,トランザクションを処理するための環境が必要になります。移行先でDBMSを定義するときの負荷を減らすため,ユニット環境定義情報ファイルは幾つかのファイルに分散し,バックアップしてください。
- 移行元のデータベースにあるジョブの実行結果は移行できません。
- JP1/AJS2 - Managerホストで論理ホストを含め,すべてのJP1/AJS2サービス,JP1/AJS2 Monitorサービス,およびJP1/AJS2 Console Agentサービスを停止する。
JP1/AJS2関連のコマンドが動作していないことを確認してください。
- UNIXの場合の注意事項
- JP1/AJS2サービス停止後,システムの共用メモリーに記憶されているスケジューラーサービスの情報をクリアーする必要があるため,次の形式でコマンドを実行します。
- ・shの場合
-
- /opt/jp1ajs2/bin/ajsshmdel >/dev/null 2>&1
-
- ・cshの場合
-
- /opt/jp1ajs2/bin/ajsshmdel >&/dev/null
- 移行元のデータベースを削除する。
- Windowsの場合
- ISAMで運用していた場合,データベースフォルダ([マネージャー環境設定]ダイアログボックスの[スケジューラーファイルの構成]タブの[データベースディレクトリ名]で指定したフォルダ)下のファイルを削除します。削除対象のファイルは,拡張子が .DRF,.K01,.K02,.KDFのファイルです。
- UNIXの場合
- ISAMで運用していた場合,データベースディレクトリ(スケジューラーサービス環境設定ファイル(Schedule.conf)のAJSDBDIRECTORYパラメーターに指定したディレクトリ)下のファイルを削除します。削除対象のファイルは,拡張子が .DAT,.K01,.K02,.DEFのファイルです。
HiRDBから移行する場合は,JP1/AJS2で使用しているテーブルも削除します。
組み込みDBから移行する場合は,ajsembdbunsetコマンドで組み込みDB環境を削除する必要があります。
ajsembdbunsetコマンドの詳細は,マニュアル「JP1/Automatic Job Management System 2 セットアップガイド 20. セットアップ時に使用するコマンド ajsembdbunset」を参照してください。
なお,二つ以上のスケジューラーサービスのデータベースを一つの組み込みDBに設定している場合,ajsembdbunsetを実施すると,すべてのスケジューラーサービスのデータベースが削除されてしまうので注意が必要です。
- 移行先の構成定義を設定する。
移行先で使用するDBMSに合わせて構成定義を変更します。フォルダまたはディレクトリなどに変更がある場合も,構成定義を変更します。
- ジョブ実行環境のデータベース格納フォルダのファイルを削除する。
スケジューラーサービスとジョブ実行環境の不整合が起こらないようにするため,移行元で使用していたジョブ実行環境のデータベース格納フォルダのファイルを削除します。
- ジョブ実行環境のデータベースを再構築する。
次のコマンドを実行して,ジョブ実行環境のデータベースを再構築します。
jpqimport -dt isam -ci jpqsetup.conf [-mh 論理ホスト名]
ジョブ実行環境構成定義ファイル(jpqsetup.conf)には,移行元で使用したファイルを使用します。
また,論理ホストで定義する場合は,-mhオプションで論理ホスト名を指定します。
jpqimportコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 セットアップガイド 20. セットアップ時に使用するコマンド jpqimport」を参照してください。
- スケジューラーデータベースをセットアップする。
次のコマンドを実行して,スケジューラーデータベースのテーブルを作成します。
ajssetup -F スケジューラーサービス名 [-mh 論理ホスト名]
論理ホストでセットアップする場合は,-mhオプションで論理ホスト名を指定します。
ajssetupコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 セットアップガイド 20. セットアップ時に使用するコマンド ajssetup」を参照してください。
- 移行先のJP1/AJS2サービス,JP1/AJS2 Monitorサービス,およびJP1/AJS2 Console Agentサービスを起動する。
- ルートジョブグループの定義情報を復元する。
ルートジョブグループの設定情報を変更する必要がある場合,JP1/AJS2 - Viewを使用して設定を復元します。
なお,コマンドを実行して復元することもできます。
- カレンダー情報の復元
ajsprintコマンドの実行によって取得したカレンダー定義情報ファイルのバックアップを指定して,次の形式でコマンドを実行します。
ajscalendar -df ajs2cal.txt "/"
- 注意事項
- 移行元のルートジョブグループにカレンダー定義がなかった場合,情報ファイルのサイズは0バイトになります。この場合,エラーメッセージKAVS0600-Eが出力されます。
- 基準日,月区分,および基準時刻の復元
次の形式でコマンドを実行します。
ajscalendar -lt 基準時刻 -ld 基準日 -md 月区分 "/"
ajscalendarコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド ajscalendar」を参照してください。
- 所有者,JP1資源グループ,コメントの復元
次の形式でコマンドを実行します。
ajschange -o 所有者 -g JP1資源グループ -C コメント "/"
ajschangeコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド ajschange」を参照してください。
- バックアップしたユニット定義を復元する。
次の形式でコマンドを実行します。
ajsdefine ajs2unit.txt
ajsdefineコマンドの詳細については,マニュアル「JP1/Automatic Job Management System 2 コマンドリファレンス 1. コマンド ajsdefine」を参照してください。
- 運用に必要なジョブネットを登録する。
これでスケジューラーデータベースで使用するDBMSの変更は終了です。