Hitachi

JP1 Version 12 JP1/Automatic Job Management System 3 構築ガイド


15.1.10 UTF-8環境でユニット名などに指定できる文字数を変更するための設定

文字コードにUTF-8を使用している場合,日本語などのマルチバイト文字は,その他の文字コードを使用する場合よりも多くのバイト数で表現されます。ユニットの各項目で指定できる最大バイト数は文字コードに依存しないため,UTF-8で定義できる最大文字数は,シフトJISより少なくなります。

OSとJP1/AJS3 - Managerのバージョンの組み合わせが次のどれかの場合,組み込みDBをセットアップすると,UTF-8環境でもユニット名などの項目をシフトJIS環境と同じ文字数で指定できるようになります。

指定できる最大文字数がシフトJIS環境と同じになる項目は,次のとおりです。

JP1/AJS - ManagerをUTF-8環境に移行する場合に,UTF-8環境でユニット名などに指定できる文字数をシフトJIS環境と同じ文字数にする手順について説明します。

注意事項
  • ユニット名などの項目をシフトJIS環境と同じ文字数で指定できるように組み込みDBをセットアップすると,ユニットの最大ネスト数(最大階層数)が10になります。そのため,10階層以上のユニット構成の場合,UTF-8環境に移行できません。移行したい場合は,移行前にユニット構成を変更しておく必要があります。

  • 文字コードUTF-8環境への移行は,標準構成で行う必要があります。JP1/AJS2 - Managerからバージョンアップした環境の場合,標準構成へ変更したあとに実施してください。

    標準構成への変更方法については,マニュアル「JP1/Automatic Job Management System 3 設計ガイド(システム構築編) 8.5 JP1/AJS2 - ManagerからJP1/AJS3 - Managerへのバージョンアップ」を参照してください。

  • JP1/AJS3 - Viewのバージョンが09-50以前の場合,環境設定パラメーターDEFLENTYPEに「sjis」が設定されていると,スケジューラーサービスおよびその配下のユニットが表示されません。すべてのスケジューラーサービスで環境設定パラメーターDEFLENTYPEに「sjis」が設定されている場合,メッセージKAVV187-Eが出力され,すべてのスケジューラーサービスおよびその配下のユニットが表示されません。また,環境設定パラメーターDEFLENTYPEに「sjis」が設定されているスケジューラーサービスに対して,ajsコマンド,マネージャージョブネットなどからアクセスすると,メッセージKAVV455-Eが出力されて,スケジューラーサービスおよびその配下のユニットが表示されません。

〈この項の構成〉

(1) 定義手順(JP1/AJS3 - Managerを新規インストールする場合)

(a) クラスタ構成ではない場合

  1. ユニット定義を退避する。

    ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。

  2. 手順1で退避したユニット定義の文字コードをUTF-8に変換する。

  3. UTF-8環境にJP1/AJS3 - Managerをインストールする。

  4. データベースを削除する。

    次のコマンドを実行して,データベースを削除します。

    ajsembdbsetup -del -F サービス名

    実行例を次に示します。

    ajsembdbsetup -del -F AJSROOT1
  5. 環境設定パラメーターAJSCHARCODEに「UTF-8」を設定する。

    環境設定パラメーターAJSCHARCODEが「UTF-8」以外の値である場合,次のコマンドを実行して,環境設定パラメーターAJSCHARCODEに「UTF-8」を設定します。

    jajs_config -k "[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名]" "AJSCHARCODE"="UTF-8"

    実行例を次に示します。

    jajs_config -k "[JP1_DEFAULT\JP1AJSMANAGER\AJSROOT1]" "AJSCHARCODE"="UTF-8"
  6. データベースをセットアップする。

    次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。

    ajsembdbsetup -e sjis -F サービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス

    実行例を次に示します。

    ajsembdbsetup -e sjis -F AJSROOT1 -id _JF0 -p 22220 -tp AJS1
  7. 組み込みDBを停止する。

    次のコマンドを実行して,組み込みDBを停止します。

    ajsembdbstop -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstop -id _JF0
  8. JP1/AJS3 - Managerを起動する。

  9. ユニット定義をリカバリーする。

    ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。

補足事項

ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。

  • -delオプションを指定した場合:「byte

  • -e sjisオプションを指定した場合:「sjis

(b) クラスタ構成の場合

  1. ユニット定義を退避する。

    ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。

  2. 手順1で退避したユニット定義の文字コードをUTF-8に変換する。

  3. UTF-8環境にJP1/AJS3 - Managerをインストールする。

  4. 論理ホスト環境を構築する。

    jajs_setup_clusterコマンドを実行して,論理ホスト環境を構築します。

    この場合,jajs_setup_clusterコマンドの-E sjisオプションを指定する必要があります。

    jajs_setup_clusterコマンドに-Sオプションを指定して実行し,組み込みDBを別途セットアップする場合は,組み込みDBのセットアップ時に実行するajsembdbsetupコマンドには-e sjisオプションを指定する必要があります。

    論理ホスト環境の構築の詳細については,「17.2.2 クラスタシステムの環境設定の手順(UNIX版JP1/AJS3 - Manager)」を参照してください

  5. 組み込みDBを停止する。

    次のコマンドを実行して,組み込みDBを停止します。

    ajsembdbstop -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstop -id _JF1
  6. 論理ホストのJP1/AJS3 - Managerを起動する。

  7. ユニット定義をリカバリーする。

    ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。

補足事項
  • jajs_setup_clusterコマンドに-E sjisオプションを指定して実行すると,環境設定パラメーターAJSCHARCODEおよびDEFLENTYPEには,自動で次の値が設定されます。

    ・AJSCHARCODEの値:「UTF-8

    ・DEFLENTYPEの値:「sjis

  • ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。

    ・-delオプションを指定した場合:「byte

    ・-e sjisオプションを指定した場合:「sjis

(2) 定義手順(JP1/AJS3 - Managerがインストール済みの環境へ設定する場合)

(a) クラスタ構成ではない場合

  1. ユニット定義を退避する。

    ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。

  2. 手順1で退避したユニット定義の文字コードをUTF-8に変換する。

  3. UTF-8環境にインストール済みのJP1/AJS3 - Managerを停止する。

    インストール済みのJP1/AJS3 - Managerが起動している場合,停止します。

    構築しているすべてのホストのJP1/AJS3 - Managerを停止してください。

  4. ajsshmdelコマンドを実行し,共有メモリー情報を削除する。

    JP1/AJS3の共有メモリー情報を削除します。ajsshmdelコマンドのパスは,「/opt/jp1ajs2/bin/ajsshmdel」です。

    実行例を次に示します。

    shの場合

    /opt/jp1ajs2/bin/ajsshmdel >/dev/null 2>&1

    cshの場合

    /opt/jp1ajs2/bin/ajsshmdel >&/dev/null

  5. 操作対象となる組み込みDBを起動する。

    操作対象となる組み込みDBが停止している場合,次のコマンドを実行して組み込みDBを起動します。

    ajsembdbstart -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstart -id _JF0
  6. データベースを削除する。

    次のコマンドを実行して,データベースを削除します。

    ajsembdbsetup -del -F サービス名

    実行例を次に示します。

    ajsembdbsetup -del -F AJSROOT1
  7. 環境設定パラメーターAJSCHARCODEに「UTF-8」を設定する。

    環境設定パラメーターAJSCHARCODEが「UTF-8」以外の値である場合,次のコマンドを実行して,環境設定パラメーターAJSCHARCODEに「UTF-8」を設定します。

    jajs_config -k "[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名]" "AJSCHARCODE"="UTF-8"

    実行例を次に示します。

    jajs_config -k "[JP1_DEFAULT\JP1AJSMANAGER\AJSROOT1]" "AJSCHARCODE"="UTF-8"
  8. データベースをセットアップする。

    次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。

    ajsembdbsetup -e sjis -F サービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス

    実行例を次に示します。

    ajsembdbsetup -e sjis -F AJSROOT1 -id _JF0 -p 22220 -tp AJS1
  9. 組み込みDBを停止する。

    次のコマンドを実行して,組み込みDBを停止します。

    ajsembdbstop -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstop -id _JF0
  10. JP1/AJS3 - Managerを起動する。

  11. ユニット定義をリカバリーする。

    ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。

補足事項

ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。

  • -delオプションを指定した場合:「byte

  • -e sjisオプションを指定した場合:「sjis

(b) クラスタ構成の場合

  1. ユニット定義を退避する。

    ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。

  2. 手順1で退避したユニット定義の文字コードをUTF-8に変換する。

  3. UTF-8環境にインストール済みのJP1/AJS3 - Managerを停止する。

    インストール済みのJP1/AJS3 - Managerが起動している場合,停止します。

    構築しているすべてのホストのJP1/AJS3 - Managerを停止してください。

  4. ajssshmdelコマンドを実行し,共有メモリー情報を削除する。

    JP1/AJS3の共有メモリー情報を削除します。ajsshmdelコマンドのパスは,「/opt/jp1ajs2/bin/ajsshmdel」です。

    実行例を次に示します。

    shの場合

    /opt/jp1ajs2/bin/ajsshmdel >/dev/null 2>&1

    cshの場合

    /opt/jp1ajs2/bin/ajsshmdel >&/dev/null

  5. 操作対象となる組み込みDBを起動する。

    操作対象となる組み込みDBが停止している場合,次のコマンドを実行して,組み込みDBを起動します。

    ajsembdbstart -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstart -id _JF1
  6. データベースを削除する。

    次のコマンドを実行して,データベースを削除します。

    ajsembdbsetup -del -mh 論理ホスト名 -F スケジューラーサービス名

    実行例を次に示します。

    ajsembdbsetup -del -mh logicalhost -F AJSROOT2
  7. 環境設定パラメーターAJSCHARCODEに「UTF-8」を設定する。

    環境設定パラメーターAJSCHARCODEが「UTF-8」以外の値である場合,次のコマンドを実行して,環境設定パラメーターAJSCHARCODEに「UTF-8」を設定します。

    jajs_config -k "[{JP1_DEFAULT|論理ホスト名}\JP1AJSMANAGER\スケジューラーサービス名]" "AJSCHARCODE"="UTF-8"

    実行例を次に示します。

    jajs_config -k "[logicalhost\JP1AJSMANAGER\AJSROOT2]" "AJSCHARCODE"="UTF-8"
  8. データベースをセットアップする。

    次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。

    ajsembdbsetup -e sjis -mh 論理ホスト名 -F スケジューラーサービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス

    実行例を次に示します。

    ajsembdbsetup -e sjis -mh logicalhost -F AJSROOT2 -id _JF1 -p 22222 -tp AJS2
  9. 組み込みDBを停止する。

    次のコマンドを実行して,組み込みDBを停止します。

    ajsembdbstop -id セットアップ識別子

    実行例を次に示します。

    ajsembdbstop -id _JF1
  10. 実行系の環境設定パラメーターを待機系に設定する。

    次のコマンドを実行して,実行系で変更した環境設定パラメーターを待機系に設定する。

    実行系

    jbsgetcnf -h 論理ホスト名 > 退避ファイル名

    待機系

    jbssetcnf 退避ファイル名

    実行例を次に示します。

    実行系

    jbsgetcnf -h logicalhost > /tmp/param_output.txt

    待機系

    jbssetcnf /tmp/param_output.txt

  11. 論理ホストのJP1/AJS3 - Managerを起動する。

  12. ユニット定義をリカバリーする。

    ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。

補足事項

ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。

  • -delオプションを指定した場合:「byte

  • -e sjisオプションを指定した場合:「sjis

(3) 定義手順(JP1/AJS3 - Managerにスケジューラーサービスを追加する場合)

(a) クラスタ構成ではない場合

  1. スケジューラーサービスを追加する。

    jajs_setupコマンドを実行して,スケジューラーサービスを追加します。この場合,jajs_setupコマンドに-E sjisオプションを指定する必要があります。

    jajs_setupコマンドに-Sオプションを指定して実行し,組み込みDBを別途セットアップする場合は,組み込みDBのセットアップ時に実行するajsembdbsetupコマンドには,-e sjisオプションを指定する必要があります。

    スケジューラーサービスの追加方法の詳細については,「15.1.1 スケジューラーサービスの多重起動の設定」または「17.2.10 論理ホストのスケジューラーサービスの多重起動の設定」を参照してください。

補足事項

jajs_setupコマンドに-E sjisオプションを指定して実行すると,環境設定パラメーターAJSCHARCODEおよびDEFLENTYPEには,自動で次の値が設定されます。

  • AJSCHARCODEの値:「UTF-8

  • DEFLENTYPEの値:「sjis

(b) クラスタ構成の場合

(a) クラスタ構成ではない場合」を参照してください。