asadminコマンドは、Java EEの実行環境のための統合コマンドであり、Java EEの実行環境の構築や、システム稼動後の運用操作を行うことができます。
以下について説明します。
asadminenv.confファイル
asadminコマンドは、Interstage Java EE DASサービスの運用管理用HTTPリスナーに接続して処理を行います。
運用管理用HTTPリスナーとの接続設定は、以下のasadminenv.confファイルで定義されており、運用管理用HTTPリスナーの設定、または、Java EE運用環境のログイン認証のためのレルムを変更した場合、このファイルも合わせて修正する必要があります。
[Windows]
C:\Interstage\F3FMisjee\config\asadminenv.conf
[Solaris/Linux]
/opt/FJSVisjee/config/asadminenv.conf
注) Solaris/Linuxでは、システム管理者のみ本ファイルを変更できます。
asadminenv.confファイルの定義内容は、以下となります。
定義項目 | 意味 | 初期値 | 値の範囲 | 備考 |
---|---|---|---|---|
AS_ADMIN_PORT | asadminコマンドが接続する、Interstage Java EE DASサービスの運用管理用HTTPリスナーの「ポート番号」のデフォルト値です。 | 12001 | 1-65535 | インストール時、または、ijinitコマンドの実行時に指定した値が初期値に反映されます。 上記以外の操作でInterstage Java EE DASサービスの運用管理用HTTPリスナーの「ポート番号」を変更した場合、必要に応じて修正してください。 |
AS_ADMIN_PROFILE | 内部パラメタです。 | cluster | ・cluster | clusterから変更しないでください。 |
AS_ADMIN_SECURE | asadminコマンドがInterstage Java EE DASサービスの運用管理用HTTPリスナーと接続する際、暗号化通信を行うかのデフォルト値です。 | true | ・true ・false | インストール時、または、ijinitコマンドの実行時に指定した値が初期値に反映されます。 上記以外の操作で、Interstage Java EE DASサービスの運用管理用HTTPリスナーの「セキュリティ」を変更した場合、必要に応じて修正してください。 |
AS_ADMIN_REALM | サービスプロセス起動時、および、asadminコマンドが運用管理用HTTPリスナーに接続する際に使用するセキュリティレルムの設定です。 | os | ・os ・file ・ldap | Java EE運用環境のログイン認証のためのレルムに合わせて修正してください。 |
以下に、asadminenv.confファイルの記述例を示します。
AS_ADMIN_PORT=12001 AS_ADMIN_PROFILE=cluster AS_ADMIN_SECURE=true AS_ADMIN_REALM=os |
運用管理用HTTPリスナーの設定、および、Java EE運用環境のログイン認証のためのレルムについては以下を参照してください。
「Java EE運用ガイド」の「管理ユーザーの登録」
「Java EE運用ガイド」の「セキュリティの定義項目」
「Java EE運用ガイド」の「HTTPサービスの定義項目」
コマンドの実行権限
本コマンドはInterstage運用グループのユーザーのみ実行可能です。
Interstage運用グループについては、「Java EE運用ガイド」-「Java EE運用環境のロール」を参照してください。
コマンド利用時のログイン認証
本コマンドの利用時はログイン認証が必要となります。
ログイン認証ついての詳細は「Java EE運用ガイド」-「asadminコマンドのログイン認証」を参照してください。
コマンド構成
asadminコマンドは、複数のサブコマンドから構成されています。それぞれのサブコマンドはJava EE運用環境の操作と対応しています。なお、サブコマンドごとに指定できるオプションは異なります。
コマンドの実行時には、以下のようにサブコマンドとオプション・オペランドを指定します。
> asadmin サブコマンド オプション オペランド |
注意
Java EEの実行環境の操作は、Interstage Java EE DASサービスを経由して行われます。
そのため、一部のサブコマンドを除き、asadminコマンドの実行時にはInterstage Java EE DASサービスが起動している必要があります。
サブコマンド
サブコマンドは、以下のように操作と操作対象の名前をハイフンでつないだ形式です。
asadmin create-cluster |
create: 操作名
cluster: 操作対象
サブコマンドの詳細については、「13.1.1 asadminコマンドのサブコマンド一覧」と各サブコマンドの説明を参照してください。
サブコマンド名の候補表示
指定したサブコマンド名に誤りがある場合は、エラーメッセージ中に、指定した文字列を含むサブコマンドの一覧が表示されます。そのため、サブコマンド名の一部を覚えていれば目的のコマンドを知ることができます。
Closest matching command(s): |
例えば、clusterに関する操作を調べたい場合は、以下のように入力します。
> asadmin cluster |
Usage
オプションの指定に誤りなどがある場合、コマンドの使用方法を示すUsageが以下の形式で表示されます。
Usage: コマンド名 オプション オペランド |
省略可能なオプションとオペランドは大括弧でくくられます。
以下にUsageの表示例を示します。
Usage: create-cluster [--terse[=true|=false]] [--echo[=true|=false]] [--newinstances instance_name1[:instance_name2]...] [--systemproperties name=value[:name=value]...] [--interactive[=true|=false]] [--host host] [--port port] [--secure[=true|=false]] [--user admin_user] [--passwordfile file_name] [--help] [--config config_name] cluster_name |
コマンドプロセスのJavaVMオプション設定
asadminコマンドを起動する場合、通常のJavaアプリケーションと同様に内部的にJavaアプリケーションの起動コマンド(Javaコマンド)を使用します。
このJavaアプリケーションの起動コマンドで指定可能なオプション(-Xmxオプションなど)を指定する場合には、環境変数VMARGSを指定してください。以下にオプションの指定例を示します。
VMARGS= -Xmx512m |
注意
-classpathオプションは指定しないでください。
以下のように不当な値を指定した場合、javaコマンドのエラーが発生します。オプションの指定方法はjavaコマンドの説明を参照してください。空白を含む値を指定する場合、値をダブルコーテーション(")で囲む必要があります。
無効なオプションを指定した場合
>set VMARGS=-option |
不当な空白を指定した場合
>set VMARGS=option1 option2 |
マルチモード
サブコマンドを指定しないでasadminコマンドを実行した場合、コマンドがマルチモードで起動します。マルチモードを使用することで、複数操作の一括実行が容易に行えます。
マルチモードについての詳細は、「13.1.3.2 multimodeサブコマンド」を参照してください。
コマンドのリモート実行
--host、--portオプションで接続先を指定することで、リモートマシンのInterstage Java EE DASサービスに対して接続し、運用操作を行うことができます。
指定された--hostオプションの値とリモート実行との関係を以下に示します。
--hostオプションの値 | リモート実行の利用 |
---|---|
デフォルト値(localhost) | × |
ローカルループバックアドレス(127.0.0.1) | × |
自ホストのホスト名 | × |
自ホストのIPアドレス | ○ |
上記以外の値 | ○ |
×:リモート実行を利用しません。ネットワークに接続できない場合も、コマンドが実行できます。
○:リモート実行を利用します。ネットワークに接続できない場合、コマンドの実行に失敗します。
>asadmin サブコマンド --host --port 他オプション オペランド |
このサブコマンドは、リモート実行のサブコマンドを指します。
オプション名 | 簡略名 | 説明 |
---|---|---|
--host | -H | ※1 |
--port | -p | ※1 |
※:操作共通オプションについては、「13.1.2 asadminコマンドの共通オプション」を参照してください。
以下のように実行します。
>asadmin create-cluster --host 192.168.0.100 --port 12001 cluster001 |
暗号化通信
asadminコマンドのリモート実行時、暗号化通信をサポートしています。Interstage Java EE DASサービスの運用管理用HTTPリスナーのセキュリティ属性およびasadmin コマンドの--secureオプションを有効にした場合、暗号化通信をします。
Interstage Java EE DASサービスの運用管理用HTTPリスナーのセキュリティ属性を有効にすることで、Interstage Java EE DASサービスはSSL接続リクエストを受けることができます。--secureオプションを有効にすることで、コマンドリモート実行時にSSL接続リクエストを発行することができます。そのため、両方を有効にした場合のみ、SSLを使用して暗号化通信ができます。有効・無効によるそれぞれの意味を以下の表に説明します。
Interstage Java EE DASサービスの運用管理用HTTPリスナーのセキュリティの設定 | --secureオプションの設定 | 意味 |
---|---|---|
true | true | Interstage Java EE DASサービスとの間の通信が暗号化されます。 |
true | false | asadminコマンドの実行に失敗します。 |
false | true | asadminコマンドの実行に失敗します。 |
false | false | Interstage Java EE DASサービスとの間の通信は暗号化されません。 |
※インストール時に「SSL暗号化通信を使用」で指定した値(“使用する”を選んだ場合trueとなります。)、および、ijinitコマンド実行時に-sslオプションで指定した値が、運用管理用HTTPリスナーのセキュリティに反映されます。
Interstage Java EE DASサービスの運用管理用HTTPリスナーのセキュリティの属性と--secureオプションを両方ともに有効にすると、コマンドのリモート実行時に、以下の例に示すように暗号化通信が使用されます。
例
Interstage Java EE DASサービスの運用管理用HTTPリスナーのセキュリティ属性を有効にします。
>asadmin set --host 10.167.157.90 --port 12001 server-config.http-service.http-listener.admin-listener.securityenabled=true |
Interstage Java EE DASサービスを再起動します。
>ijdasstop |
asadminコマンドのリモート実行時、--secureオプションを有効にします。
>asadmin create-cluster --host 10.167.157.90 --port 12001 --secure=true cluster001 |
※「10.167.157.90」はリモート接続先のIPアドレスです。
※例1、例3はリモート接続先サーバーとは別のマシンからサーバーに接続して操作を行いますが、例2はリモート接続先のサーバー上で直接操作を行います。
.asadmintruststoreファイルは、ユーザディレクトリ配下のサーバー証明書を保存するためのものです。SSL接続による管理操作は、当該サーバー証明書を利用してセキュリティ認証を行います。
また、.asadmintruststoreファイルに複数サーバー証明書を保存できます。
--secureオプションを有効にし、.asadmintruststoreファイルが存在しない場合または.asadmintruststoreファイルに指定されたホストのサーバー証明書がない場合、asadminコマンドを実行した後、以下のようなメッセージを出力します。
Do you trust the above certificate [y|n] --> |
ユーザがコンソールに”y”を入力すると、指定されたホストのサーバー証明書が作成され、コマンドの実行に成功します。また、.asadmintruststoreファイルが存在しない場合、.asadmintruststoreファイルが作成されます。
例
>asadmin create-cluster --secure=true cluster002 [ [ Version: V3 Subject: CN=xuleijie, OU=Sun GlassFish Enterprise Server, O=Sun Microsystems, L=Santa Clara, ST=California, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 Key: Sun RSA public key, 1024 bits modulus: 128282666785297763709232615016911382068540452571925164881484435807352 33678058674740174707596757135471005844826959035149947983831556701649379029486723 75143625304518888455449483001123164720766586531811413926196807365750160414054624 25776075383403099138593956478275754048419956477627853404427379080134384258507937 public exponent: 65537 Validity: [From: Thu Feb 04 12:35:43 JST 2010, To: Sat Jan 11 12:35:43 JST 2110] Issuer: CN=xuleijie, OU=Sun GlassFish Enterprise Server, O=Sun Microsystems, L =Santa Clara, ST=California, C=US SerialNumber: [ 4b6a408f] Certificate Extensions: 1 [1]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 23 EF AE E5 48 D2 A7 B6 25 32 CD DC 04 13 5E 7F #...H...%2....^. 0010: 0E B6 9B 53 ...S ] ] ] Algorithm: [MD5withRSA] Signature: 0000: 40 6A 1E 57 09 AE 74 2C 99 D2 D5 1C 23 C4 4F 50 @j.W..t,....#.OP 0010: 57 00 71 2F 35 8B B2 9F D6 9B 24 96 73 85 E2 CC W.q/5.....$.s... 0020: C3 62 8A EC DE 54 74 DA 0B CF 2F 96 C8 EE 79 83 .b...Tt.../...y. 0030: F0 11 DD 5C 34 54 A2 3B DA 6C 34 69 84 E7 6C 86 ...\4T.;.l4i..l. 0040: 5C F7 F0 2C A3 0B 1F 9D 26 E8 EC 2C F6 8A 40 FE \..,....&..,..@. 0050: DC FC EB 84 42 F0 5E 87 E4 1C 59 E1 DE 48 97 9B ....B.^...Y..H.. 0060: 55 CB 36 D6 30 62 C3 04 E2 11 8D ED 41 6C BA 5E U.6.0b......Al.^ 0070: 93 57 AF 6D D5 A9 7B F0 79 7F AA 90 38 CC 96 96 .W.m....y...8... ] Do you trust the above certificate [y|n] -->y Command create-cluster executed successfully.
ユーザがコンソールに”n”を入力すると、異常が出され、コマンドの実行に失敗します。
例
>asadmin create-cluster --secure=true cluster003 [ [ Version: V3 Subject: CN=xuleijie, OU=Sun GlassFish Enterprise Server, O=Sun Microsystems, L=Santa Clara, ST=California, C=US Signature Algorithm: MD5withRSA, OID = 1.2.840.113549.1.1.4 Key: Sun RSA public key, 1024 bits modulus: 128282666785297763709232615016911382068540452571925164881484435807352 33678058674740174707596757135471005844826959035149947983831556701649379029486723 75143625304518888455449483001123164720766586531811413926196807365750160414054624 25776075383403099138593956478275754048419956477627853404427379080134384258507937 public exponent: 65537 Validity: [From: Thu Feb 04 12:35:43 JST 2010, To: Sat Jan 11 12:35:43 JST 2110] Issuer: CN=xuleijie, OU=Sun GlassFish Enterprise Server, O=Sun Microsystems, L =Santa Clara, ST=California, C=US SerialNumber: [ 4b6a408f] Certificate Extensions: 1 [1]: ObjectId: 2.5.29.14 Criticality=false SubjectKeyIdentifier [ KeyIdentifier [ 0000: 23 EF AE E5 48 D2 A7 B6 25 32 CD DC 04 13 5E 7F #...H...%2....^. 0010: 0E B6 9B 53 ...S ] ] ] Algorithm: [MD5withRSA] Signature: 0000: 40 6A 1E 57 09 AE 74 2C 99 D2 D5 1C 23 C4 4F 50 @j.W..t,....#.OP 0010: 57 00 71 2F 35 8B B2 9F D6 9B 24 96 73 85 E2 CC W.q/5.....$.s... 0020: C3 62 8A EC DE 54 74 DA 0B CF 2F 96 C8 EE 79 83 .b...Tt.../...y. 0030: F0 11 DD 5C 34 54 A2 3B DA 6C 34 69 84 E7 6C 86 ...\4T.;.l4i..l. 0040: 5C F7 F0 2C A3 0B 1F 9D 26 E8 EC 2C F6 8A 40 FE \..,....&..,..@. 0050: DC FC EB 84 42 F0 5E 87 E4 1C 59 E1 DE 48 97 9B ....B.^...Y..H.. 0060: 55 CB 36 D6 30 62 C3 04 E2 11 8D ED 41 6C BA 5E U.6.0b......Al.^ 0070: 93 57 AF 6D D5 A9 7B F0 79 7F AA 90 38 CC 96 96 .W.m....y...8... ] Do you trust the above certificate [y|n] -->n asadmin: ERROR: ISJEE_OM2998: Error in Interstage Java EE DAS. ERROR=The certificate chain from the server is not trusted asadmin: ERROR: ISJEE_CLI137: Command create-cluster failed.
オプション
asadminコマンドのオプションは、「--help」のようにキーワードの先頭にハイフンを2つ付加した形式です。
オプションには3種類あり、値の指定方法が異なります。それぞれについて以下に説明します。
オプション種別 | 値の指定方法 | 使用例 |
---|---|---|
Boolean値を指定するオプション | オプションと値の間を「=」で区切って指定する。 | --echo=true |
文字列・数値を指定するオプション | オプションと値の間を空白または「=」で区切って指定する。(注) | --file foo.txt |
値指定を行わないオプション | - | --help |
注)ハイフン(「-」)から始まるオプションの値を指定する場合、オプション名と値を「=」で区切って指定してください。
Boolean値を指定するオプションは、値を省略してオプションだけを指定できるものがあります。オプションだけを指定する場合は、「=」も省略します。値の指定を省略した場合、デフォルト値としてtrueが設定されます。
これにより、以下の2つの入力は同じ意味になります。
> asadmin create-cluster --echo=true |
Boolean値以外の省略可能オプションは、値を省略してオプションだけを指定できるものがあります。オプションだけを指定する場合は、「=」は省略できません。値の指定を省略した場合、デフォルト値が設定されます。
これにより、以下の2つの入力は同じ意味になります。
> asadmin update-web-server-connector-config --maxprocessors=600 --target IJServer001 |
頻繁に使用されるオプションは、英単語一文字の簡略名を指定できます。簡略名の場合は、先頭のハイフンは1つです。簡略名の使用例を以下に示します。
> asadmin create-cluster -e=true |
複数の簡略名を続けて指定できます。例えば、以下の2つの入力は同じ意味になります。
asadmin create-cluster -e -t |
複数のオプションを同時に指定したい場合は、空白で区切って指定します。同じオプションを複数指定した場合はエラーとならず、後に指定したオプションの値が有効になります。
例えば、以下のケースでは、最後に指定した「--echo=true」が有効になります。
> asadmin create-cluster --echo=false --echo=true |
コマンド実行時に不正なオプションを指定した場合は、サブコマンドのUsageとエラーメッセージが表示されてコマンドが終了します。
Usage: start-cluster [--terse[=true|=false]] [--echo[=true|=false]] [--interactive[=true|=false]] [--host host] [--port port] [--secure[=true|=false]] [--user admin_user] [--passwordfile file_name] [--help] cluster_name |
オペランド
オペランドはコマンドの引数の最後尾に指定する文字列であり、操作対象の名前などを指定する時に使用します。
必須オペランドを省略した場合、以下のようにUsageとエラーメッセージを表示してコマンドが終了します。
なお、オペランドにはハイフン(「-」)から始まる値を指定することはできません。このような値を指定したい場合、Interstage Java EE管理コンソールを利用して定義更新を行ってください。
Usage: start-cluster [--terse[=true|=false]] [--echo[=true|=false]] [--interactive[=true|=false]] [--host host] [--port port] [--secure[=true|=false]] [--user admin_user] [--passwordfile file_name] [--help] cluster_name |
targetの指定
各サブコマンドの--targetオプション、またはオペランドで操作対象を指定する場合に指定できる値について説明します。
指定できる値 | 説明 |
---|---|
IJServerクラスタ名 | 作成済みのIJServerクラスタに対して操作を実施します。 |
サーバーインスタンス名 | 作成済みのサーバーインスタンスに対して操作を実施します。 |
設定名 | 作成済みの設定に対して操作を実施します。 |
domain | ドメイン(Java EE運用環境)に対して操作を実施します。 主に以下のような動作となります。
|
server | Interstage Java EE DASサービスに対して操作を実施します。 |
各サブコマンドで指定できる値が異なるため、どの値が指定できるかは各サブコマンドの説明を参照してください。
ユーザとパスワードの指定
asadminコマンド利用時、以下のいずれかの方法でInterstage Java EE DASサービスへの認証に使用するユーザとパスワードを指定します。
asadminコマンドの実行時に以下のような問い合わせが行われますので、ユーザとパスワードをそれぞれ入力します。
> asadmin create-cluster IJServer001 |
--userオプションと--passwordfileオプションを指定することで、asadminコマンド実行時のユーザとパスワードの入力を省略できます。
以下に実行例を示します。
> asadmin create-cluster --user admin --passwordfile password.txt IJServer001 |
--passwordfileオプションで指定するパスワードファイルは、AS_ADMIN_PASSWORDを使用して記述します。
AS_ADMIN_PASSWORD=パスワード |
なお、指定したパスワードファイルが参照できない場合は、コマンドの実行に失敗します。出力されたエラーメッセージを参照して対処を行ってください。
また、ユーザのホームディレクトリに.asadminpassファイルが存在していても、--passwordfileオプションが指定された場合は--passwordfileオプションの内容が優先されます。
.asadminpassファイルの詳細は、loginサブコマンドを参照してください。
--userオプションと--passwordfileオプションについては「13.1.2 asadminコマンドの共通オプション」も参照してください。
注意
パスワードファイルに記述したパスワードを保護するため、テキストエディタにより作成したパスワードファイルのアクセス権を600に設定してください。
asadminコマンドのloginサブコマンドを利用することで、asadminコマンド実行時のInterstage Java EE DASサービスのログインユーザとパスワードの入力を省略できます。詳細は、loginサブコマンドを参照してください。
セパレータ
asadminコマンドのオペランド、オプションには複数の値を指定できるものがあります。複数の値を指定する場合、セパレータを指定して各値を区切る必要があります。
セパレータの文字種別は各オペランド、オプションによって異なります。各オペランド、オプションのセパレータは以下の表のとおりになります。
setサブコマンドの場合
オペランド/オプション | セパレータ |
---|---|
applications.j2ee-application.${AppName}.libraries |
|
applications.ejb-module.${AppName}.libraries | |
applications.web-module.${AppName}.libraries | |
${clusterName_instanceName_configName}.java-config.debug-options | 「 」(半角空白) |
${clusterName_instanceName_configName}.java-config.javac-options | |
${clusterName_instanceName_configName}.java-config.jvm-options | , |
${clusterName_instanceName_configName}.java-config.profiler.jvm-options | |
${clusterName_instanceName_configName}.ijserver-control.environment-variable |
setサブコマンド以外の場合
サブコマンド | オペランド/オプション | セパレータ |
---|---|---|
create-system-properties | name | : |
create-jvm-options | jvm_option_name | |
delete-jvm-options | jvm_option_name | |
create-lifecycle-module | --property | |
rollback-transaction | transaction_id | |
create-jdbc-connection-pool | --property | |
create-jdbc-resource | --property | |
create-jms-resource | --property | |
create-jndi-resource | --property | |
create-javamail-resource | --property | |
create-custom-resource | --property | |
create-connector-connection-pool | --property | |
create-admin-object | --property | |
create-resource-adapter-config | --property | |
create-profiler | --property | |
create-connector-security-map | --principals | , |
--usergroups | ||
update-connector-security-map | --addprincipals | |
--addusergroups | ||
--removeprincipals | ||
--removeusergroups | ||
create-file-user | --groups | : |
update-file-user | --groups |
エスケープ文字の利用
コマンドのオプションまたはオペランドの値に以下に示す文字を利用する場合、エスケープ文字として'\'を指定する必要があります。
注意
get/set/listサブコマンドのオペランド(定義項目名)には指定できない文字があります。get/set/listサブコマンドのオペランド(定義項目名)で利用可能な文字については、「13.1.4 定義項目参照/更新」の「定義項目名に指定可能な文字」を参照してください。
文字の種類 | 説明 | 文字 |
---|---|---|
メタ文字(Solaris/Linux) | メタ文字(Solaris/Linux)として利用される文字 | ;&()|><*?[]~+-@!"'\`${}^ (注) |
Javaエスケープシーケンス | Javaにおいてエスケープ文字として利用される文字 | \、"など |
asadminコマンドの区切り文字 | asadminコマンドの区切り文字である文字 | : |
asadminコマンドの特殊文字 | 以下のサブコマンドで、エスケープ文字として利用される特殊文字
| ,.-:= |
マルチモードの特殊文字 | マルチモードでエスケープ文字として利用される特殊文字 | \ |
注) 利用しているShellの種類により、メタ文字(Solaris/Linux)として扱われる文字が異なります。Bourne ShellとC Shellのメタ文字(Solaris/Linux)について、以下に説明します。
| Bourne Shell | C Shell |
| Bourne Shell | C Shell |
| Bourne Shell | C Shell |
---|---|---|---|---|---|---|---|---|
; | ○ | ○ | ? | × | ○ | " | ○ | ○ |
& | ○ | ○ | [ | × | ○ | ' | ○ | ○ |
( | ○ | ○ | ] | × | × | \ | ○ | ○ |
) | ○ | ○ | ~ | × | × | ` | ○ | ○ |
| | ○ | ○ | + | × | - | $ | ○ | ○ |
> | ○ | ○ | - | × | - | { | - | ○ |
< | ○ | ○ | @ | × | - | } | - | × |
* | × | ○ | ! | ○ | ○ | ^ | - | × |
○:エスケープが必要
×:エスケープは不要
-:メタ文字(Solaris/Linux)ではない
例
エスケープ文字の利用の実行例
実行例を以下に示します。
オプションの値に「Test\Escape\Character」を指定する場合、以下のようにエスケープ文字を使用します。
Windowsではメタ文字(Solaris/Linux)のエスケープは不要です。
asadmin create-jdbc-connection-pool --datasourceclassname org.apache.derby.jdbc.ClientDataSource --restype javax.sql.DataSource --property user=APP:password=APP:databaseName=samples:serverName=localhost:portNumber=1527 --description Test\\Escape\\Character SamplePool |
注) 外部ファイルを指定してsetサブコマンドを実行した場合、およびmultimodeサブコマンドの利用時は、メタ文字(Solaris/Linux)のエスケープは不要です。
オプションの値に「c:\foo\bar」を指定する場合、以下のようにエスケープ文字を使用します。
asadmin create-jvm-options --target testserver -Dlocation=c\:\\foo\\bar |
asadmin create-jvm-options --target testserver -Dlocation=c\\:\\\\foo\\\\bar |
propertyオプションに以下のnameとvalueを指定する場合について説明します。
user=scott:password=tiger:url=jdbc:oracle:thin:@//localhost:1521/sampledb |
以下のようにエスケープ文字を使用します。
asadmin create-jdbc-connection-pool --datasourceclassname oracle.jdbc.pool.OracleDataSource --restype javax.sql.DataSource --property user=scott:password=tiger:url=jdbc\:oracle\:thin\:@//localhost\:1521/sampledb SamplePool |
asadmin create-jdbc-connection-pool --datasourceclassname oracle.jdbc.pool.OracleDataSource --restype javax.sql.DataSource --property user=scott:password=tiger:url=jdbc\\:oracle\\:thin\\:@//localhost\\:1521/sampledb SamplePool |
asadmin create-jvm-options --target testserver -e\:-Dlocation=c\:\\foo\\bar |
asadmin create-jvm-options --target testserver -e\\:-Dlocation=c\\:\\\\foo\\\\bar |
この場合、'\'の本来の意味を表現するために4つのエスケープ文字(\\\\)を指定する必要があります。それぞれの'\'の意味は以下のとおりです。
1つ目の'\': メタ文字(Solaris/Linux)のエスケープ
2つ目の'\': Javaエスケープシーケンスのエスケープ
3つ目の'\': メタ文字(Solaris/Linux)のエスケープ
4つ目の'\': 本来の'\'を意味します
1つ目の'\'は2つ目の'\'に対するエスケープ、3つ目の'\'は4つ目の'\'に対するエスケープです。
'\'に対してJavaエスケープシーケンスを指定する場合、"\\"と表記します。
'\'はメタ文字(Solaris/Linux)に該当するため、Solaris/Linuxのasadminコマンドで上記を指定する場合はそれぞれの'\'に対してエスケープ文字として'\'を付加する必要があります。
setサブコマンドで、オプション「jvm-options」の値に「-Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar」を指定する場合、以下のようにエスケープ文字を使用します。
asadmin set testserver.java-config.jvm-options=-Dcom.sun.enterprise.taglibs=appserv-jstl.jar\,jsf-impl.jar |
asadmin set testserver.java-config.jvm-options=-Dcom.sun.enterprise.taglibs=appserv-jstl.jar\\,jsf-impl.jar |
また、外部ファイルを使用しオプション「jvm-options」の値に「-Dcom.sun.enterprise.taglibs=appserv-jstl.jar,jsf-impl.jar」を指定する場合、以下のようにエスケープ文字を使用します。
testserver.java-config.jvm-options=-Dcom.sun.enterprise.taglibs=appserv-jstl.jar\,jsf-impl.jar |
get/set/listサブコマンドで、「sample.name」のようにピリオドが含まれた文字列をキー名に指定する場合、以下のようにエスケープ文字を使用します。
asadmin set testserver.property.sample\.name=samplevalue |
asadmin set testserver.property.sample\\.name=samplevalue |
オペランドに先頭が'-'である文字列を指定し、かつ、その文字列がコマンドオプションと合致する場合、先頭の'-'をエスケープする必要があります。
例えば、-s、-o=value、--switch、--option=valueなどをオペランドに指定する場合は、先頭の'-'をエスケープする必要があります。
以下に使用例で説明します。
create-jvm-options、delete-jvm-optionsサブコマンドで、オプションの値に「-Xmx512m」や「-Dlocation=c:\foo\bar」を指定する場合、以下のようにエスケープ文字を使用します。
asadmin create-jvm-options --target testserver \-Dlocation=c\:\\foo\\bar (注1) |
asadmin create-jvm-options --target testserver \\-Dlocation=c\\:\\\\foo\\\\bar (注1) |
注1) create-jvm-optionsサブコマンドで、「-xxxx=yyyy」(xxxxはオプション、yyyyは指定値)の形式のオペランド(Java VMのオプション)を指定する場合は、以下のようにオプションの「-」部分についてはエスケープ文字を使用しないで指定することもできます。
asadmin create-jvm-options --target testserver -Dlocation=c\:\\foo\\bar |
asadmin create-jvm-options --target testserver -Dlocation=c\\:\\\\foo\\\\bar |
注2) create-jvm-optionsサブコマンドで、「-xxxx」(xxxxはオプション)の形式のオペランドを指定する場合は、注1)の場合と異なり、例のようにオプションの「-」部分についてエスケープ文字を使用する必要があります。
create-lifecycle-moduleサブコマンドで、オプション「property」の値に「rmi="Server=acme1:7070":timeout=30」を指定する場合、以下のようにエスケープ文字を使用します。
asadmin create-lifecycle-module --target testserver --classname "com.acme.CustomSetup" --classpath "/export/customSetup" --loadorder 1 --property rmi="Server\=acme1\:7070":timeout=30 customSetup |
以下のいずれかの方法でエスケープを行います。
asadminの特殊文字をエスケープする方法
asadmin create-lifecycle-module --target testserver --classname "com.acme.CustomSetup" --classpath "/export/customSetup" --loadorder 1 --property rmi="Server\=acme1\:7070":timeout=30 customSetup |
メタ文字(Solaris/Linux)の'"'をエスケープする方法
asadmin create-lifecycle-module --target testserver --classname "com.acme.CustomSetup" --classpath "/export/customSetup" --loadorder 1 --property rmi=\"Server=acme1:7070\":timeout=30 customSetup |
create-jdbc-connection-poolサブコマンドで、オプション「property」の値に以下のnameとvalueを指定する場合について説明します。
user=scott:password=tiger:url="jdbc:oracle:thin:@(DESCRIPTION=(ENABLE=BROKEN)(ADDRESS_LIST=(LOAD_BALANCE=ON)(FAILOVER=ON)(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.1)(PORT=1521))(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.0.2)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=rac)))" |
以下のようにエスケープ文字を使用します。
asadmin create-jdbc-connection-pool --datasourceclassname oracle.jdbc.pool.OracleConnectionPoolDataSource --restype javax.sql.ConnectionPoolDataSource --property user=scott:password=tiger:url="jdbc\:oracle\:thin\:@(DESCRIPTION\=(ENABLE\=BROKEN)(ADDRESS_LIST\=(LOAD_BALANCE\=ON)(FAILOVER\=ON)(ADDRESS\=(PROTOCOL\=tcp)(HOST\=192.168.0.1)(PORT\=1521))(ADDRESS\=(PROTOCOL\=tcp)(HOST\=192.168.0.2)(PORT\=1521)))(CONNECT_DATA\=(SERVICE_NAME\=rac)))" OracleRACPool |
以下のいずれかの方法でエスケープを行います。
asadminの特殊文字をエスケープする方法
asadmin create-jdbc-connection-pool --datasourceclassname oracle.jdbc.pool.OracleConnectionPoolDataSource --restype javax.sql.ConnectionPoolDataSource --property user=scott:password=tiger:url="jdbc\:oracle\:thin\:@\(DESCRIPTION\=\(ENABLE\=BROKEN\)\(ADDRESS_LIST\=\(LOAD_BALANCE\=ON\)\(FAILOVER\=ON\)\(ADDRESS\=\(PROTOCOL\=tcp\)\(HOST\=192.168.0.1\)\(PORT\=1521\)\)\(ADDRESS\=\(PROTOCOL\=tcp\)\(HOST\=192.168.0.2\)\(PORT\=1521\)\)\)\(CONNECT_DATA\=\(SERVICE_NAME\=rac\)\)\)" OracleRACPool |
メタ文字(Solaris/Linux)の'"'をエスケープする方法
asadmin create-jdbc-connection-pool --datasourceclassname oracle.jdbc.pool.OracleConnectionPoolDataSource --restype javax.sql.ConnectionPoolDataSource --property user=scott:password=tiger:url=\"jdbc:oracle:thin:@\(DESCRIPTION=\(ENABLE=BROKEN\)\(ADDRESS_LIST=\(LOAD_BALANCE=ON\)\(FAILOVER=ON\)\(ADDRESS=\(PROTOCOL=tcp\)\(HOST=192.168.0.1\)\(PORT=1521\)\)\(ADDRESS=\(PROTOCOL=tcp\)\(HOST=192.168.0.2\)\(PORT=1521\)\)\)\(CONNECT_DATA=\(SERVICE_NAME=rac\)\)\)\" OracleRACPool |
コマンドをマルチモードで実行し、1つまたは複数の'\'を含む値を指定する場合、以下のいずれかの方法でエスケープ処理を行う必要があります。
1つまたは複数の'\'の先頭にエスケープ文字として'\'を追加する。
'\'が含まれた値を'"'で囲む。
以下のサブコマンドを実行する場合の対処例を示します。
create-jvm-options --target testserver \-Dlocation=c\:\\foo\\bar |
エスケープ文字を利用する場合
asadmin>create-jvm-options --target testserver \\-Dlocation=c\\:\\\foo\\\bar |
ダブルクォーテーションを利用する場合
asadmin>create-jvm-options --target testserver \\-Dlocation="c\:\\foo\\bar" |
'.'を含む定義項目を作成した場合、listサブコマンドの実行時にエスケープ文字が付与された形式で出力されます。
例
以下に実行例を示します。
>asadmin create-threadpool --target server thread.pool001 |
空白を含む文字列の指定
getサブコマンドで、オプション「file」の値に「sample get.txt」を指定する場合、以下のように実行します。
asadmin get --file "sample get.txt" testserver.* |
コマンドラインでは、コマンドオプションに空白を含む文字列を指定できません。
コマンドオプションに空白を含む文字列を指定したい場合は、multimodeサブコマンドの--fileオプションを利用する方法があります。
getサブコマンドで、オプション「file」の値に「sample get.txt」を指定する場合の実行例を以下に示します。
multimodeサブコマンドの入力とする外部ファイル「execute_get.txt」に以下のように記載します。
get --file "sample get.txt" testserver.* |
1.の外部ファイルを入力として、multimodeサブコマンドを実行します。
asadmin multimode --file execute_get.txt |
注意
空白を含む文字列を指定する場合の注意
末尾が空白である値は指定できません。指定した場合、末尾の空白が取り除かれた値が有効になります。
入力文字列長の上限
asadminコマンド実行時の入力文字列長の上限を以下に示します。
| |||
---|---|---|---|
multimodeサブコマンドを利用しない場合 | 6984バイト | 256バイト | |
multimodeサブコマンドを利用する場合 | --fileオプションを指定しない場合 | 8190バイト | 256バイト |
--fileオプションを指定する場合 | 無制限 |