15.1.9 UTF-8環境でユニット名などに指定できる文字数を変更するための設定
文字コードにUTF-8を使用している場合,日本語などのマルチバイト文字は,その他の文字コードを使用する場合よりも多くのバイト数で表現されます。ユニットの各項目で指定できる最大バイト数は文字コードに依存しないため,UTF-8で定義できる最大文字数は,シフトJISより少なくなります。
OSとJP1/AJS3 - Managerのバージョンの組み合わせが次のどれかの場合,組み込みDBをセットアップすると,UTF-8環境でもユニット名などの項目をシフトJIS環境と同じ文字数で指定できるようになります。
-
OSがLinuxで,JP1/AJS3 - Managerのバージョンが09-50-01以降
-
OSがSolaris 11で,JP1/AJS3 - Managerのバージョンが10-00-03以降
-
OSがAIX,HP-UX,またはSolaris 10で,JP1/AJS3 - Managerのバージョンが10-50-01以降
指定できる最大文字数がシフト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) クラスタ構成ではない場合
-
ユニット定義を退避する。
ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。
-
手順1で退避したユニット定義の文字コードをUTF-8に変換する。
-
UTF-8環境にJP1/AJS3 - Managerをインストールする。
-
データベースを削除する。
次のコマンドを実行して,データベースを削除します。
ajsembdbsetup -del -F サービス名
実行例を次に示します。
ajsembdbsetup -del -F AJSROOT1
-
環境設定パラメーター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"
-
データベースをセットアップする。
次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。
ajsembdbsetup -e sjis -F サービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス
実行例を次に示します。
ajsembdbsetup -e sjis -F AJSROOT1 -id _JF0 -p 22220 -tp AJS1
-
組み込みDBを停止する。
次のコマンドを実行して,組み込みDBを停止します。
ajsembdbstop -id セットアップ識別子
実行例を次に示します。
ajsembdbstop -id _JF0
-
JP1/AJS3 - Managerを起動する。
-
ユニット定義をリカバリーする。
ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。
- 補足事項
-
ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。
-
-delオプションを指定した場合:「byte」
-
-e sjisオプションを指定した場合:「sjis」
-
(b) クラスタ構成の場合
-
ユニット定義を退避する。
ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。
-
手順1で退避したユニット定義の文字コードをUTF-8に変換する。
-
UTF-8環境にJP1/AJS3 - Managerをインストールする。
-
論理ホスト環境を構築する。
jajs_setup_clusterコマンドを実行して,論理ホスト環境を構築します。
この場合,jajs_setup_clusterコマンドの-E sjisオプションを指定する必要があります。
jajs_setup_clusterコマンドに-Sオプションを指定して実行し,組み込みDBを別途セットアップする場合は,組み込みDBのセットアップ時に実行するajsembdbsetupコマンドには-e sjisオプションを指定する必要があります。
論理ホスト環境の構築の詳細については,「17.2.2 クラスタシステムの環境設定の手順(UNIX版JP1/AJS3 - Manager)」を参照してください
-
組み込みDBを停止する。
次のコマンドを実行して,組み込みDBを停止します。
ajsembdbstop -id セットアップ識別子
実行例を次に示します。
ajsembdbstop -id _JF1
-
論理ホストのJP1/AJS3 - Managerを起動する。
-
ユニット定義をリカバリーする。
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) クラスタ構成ではない場合
-
ユニット定義を退避する。
ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。
-
手順1で退避したユニット定義の文字コードをUTF-8に変換する。
-
UTF-8環境にインストール済みのJP1/AJS3 - Managerを停止する。
インストール済みのJP1/AJS3 - Managerが起動している場合,停止します。
構築しているすべてのホストのJP1/AJS3 - Managerを停止してください。
-
ajsshmdelコマンドを実行し,共有メモリー情報を削除する。
JP1/AJS3の共有メモリー情報を削除します。ajsshmdelコマンドのパスは,「/opt/jp1ajs2/bin/ajsshmdel」です。
実行例を次に示します。
- shの場合
-
/opt/jp1ajs2/bin/ajsshmdel >/dev/null 2>&1
- cshの場合
-
/opt/jp1ajs2/bin/ajsshmdel >&/dev/null
-
操作対象となる組み込みDBを起動する。
操作対象となる組み込みDBが停止している場合,次のコマンドを実行して組み込みDBを起動します。
ajsembdbstart -id セットアップ識別子
実行例を次に示します。
ajsembdbstart -id _JF0
-
データベースを削除する。
次のコマンドを実行して,データベースを削除します。
ajsembdbsetup -del -F サービス名
実行例を次に示します。
ajsembdbsetup -del -F AJSROOT1
-
環境設定パラメーター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"
-
データベースをセットアップする。
次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。
ajsembdbsetup -e sjis -F サービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス
実行例を次に示します。
ajsembdbsetup -e sjis -F AJSROOT1 -id _JF0 -p 22220 -tp AJS1
-
組み込みDBを停止する。
次のコマンドを実行して,組み込みDBを停止します。
ajsembdbstop -id セットアップ識別子
実行例を次に示します。
ajsembdbstop -id _JF0
-
JP1/AJS3 - Managerを起動する。
-
ユニット定義をリカバリーする。
ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。
- 補足事項
-
ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。
-
-delオプションを指定した場合:「byte」
-
-e sjisオプションを指定した場合:「sjis」
-
(b) クラスタ構成の場合
-
ユニット定義を退避する。
ajsprintコマンドを実行して,JP1/AJS - Managerに定義されているユニット定義を退避します。
-
手順1で退避したユニット定義の文字コードをUTF-8に変換する。
-
UTF-8環境にインストール済みのJP1/AJS3 - Managerを停止する。
インストール済みのJP1/AJS3 - Managerが起動している場合,停止します。
構築しているすべてのホストのJP1/AJS3 - Managerを停止してください。
-
ajssshmdelコマンドを実行し,共有メモリー情報を削除する。
JP1/AJS3の共有メモリー情報を削除します。ajsshmdelコマンドのパスは,「/opt/jp1ajs2/bin/ajsshmdel」です。
実行例を次に示します。
- shの場合
-
/opt/jp1ajs2/bin/ajsshmdel >/dev/null 2>&1
- cshの場合
-
/opt/jp1ajs2/bin/ajsshmdel >&/dev/null
-
操作対象となる組み込みDBを起動する。
操作対象となる組み込みDBが停止している場合,次のコマンドを実行して,組み込みDBを起動します。
ajsembdbstart -id セットアップ識別子
実行例を次に示します。
ajsembdbstart -id _JF1
-
データベースを削除する。
次のコマンドを実行して,データベースを削除します。
ajsembdbsetup -del -mh 論理ホスト名 -F スケジューラーサービス名
実行例を次に示します。
ajsembdbsetup -del -mh logicalhost -F AJSROOT2
-
環境設定パラメーター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"
-
データベースをセットアップする。
次のコマンドを実行して,シフトJIS環境とUTF-8環境でユニット名などに同じ文字数を指定できるように,データベースをセットアップします。
ajsembdbsetup -e sjis -mh 論理ホスト名 -F スケジューラーサービス名 -id セットアップ識別子 -p ポート番号 -tp テーブル名プリフィックス
実行例を次に示します。
ajsembdbsetup -e sjis -mh logicalhost -F AJSROOT2 -id _JF1 -p 22222 -tp AJS2
-
組み込みDBを停止する。
次のコマンドを実行して,組み込みDBを停止します。
ajsembdbstop -id セットアップ識別子
実行例を次に示します。
ajsembdbstop -id _JF1
-
実行系の環境設定パラメーターを待機系に設定する。
次のコマンドを実行して,実行系で変更した環境設定パラメーターを待機系に設定する。
- 実行系
-
jbsgetcnf -h 論理ホスト名 > 退避ファイル名
- 待機系
-
jbssetcnf 退避ファイル名
実行例を次に示します。
- 実行系
-
jbsgetcnf -h logicalhost > /tmp/param_output.txt
- 待機系
-
jbssetcnf /tmp/param_output.txt
-
論理ホストのJP1/AJS3 - Managerを起動する。
-
ユニット定義をリカバリーする。
ajsdefineコマンドを実行して,手順2で変換したユニット定義をリカバリーします。
- 補足事項
-
ajsembdbsetupコマンドを実行すると,環境設定パラメーターDEFLENTYPEには自動で次の値が設定されます。
-
-delオプションを指定した場合:「byte」
-
-e sjisオプションを指定した場合:「sjis」
-
(3) 定義手順(JP1/AJS3 - Managerにスケジューラーサービスを追加する場合)
(a) クラスタ構成ではない場合
-
スケジューラーサービスを追加する。
jajs_setupコマンドを実行して,スケジューラーサービスを追加します。この場合,jajs_setupコマンドに-E sjisオプションを指定する必要があります。
jajs_setupコマンドに-Sオプションを指定して実行し,組み込みDBを別途セットアップする場合は,組み込みDBのセットアップ時に実行するajsembdbsetupコマンドには,-e sjisオプションを指定する必要があります。
スケジューラーサービスの追加方法の詳細については,「15.1.1 スケジューラーサービスの多重起動の設定」または「17.2.9 論理ホストのスケジューラーサービスの多重起動の設定」を参照してください。
- 補足事項
-
jajs_setupコマンドに-E sjisオプションを指定して実行すると,環境設定パラメーターAJSCHARCODEおよびDEFLENTYPEには,自動で次の値が設定されます。
-
AJSCHARCODEの値:「UTF-8」
-
DEFLENTYPEの値:「sjis」
-
(b) クラスタ構成の場合
「(a) クラスタ構成ではない場合」を参照してください。