Hitachi

 Hitachi Application Server V10 コマンドリファレンスWindows®用)


2.16.1 create-jdbc-connection-pool

JDBCコネクションプールの登録

書式

asadmin [asadmin-options] create-jdbc-connection-pool [--help]
    [--datasourceclassname=datasourceclassname]
    [--restype=resourcetype]
    [--steadypoolsize=poolsize]
    [--maxpoolsize=maxpoolsize]
    [--maxwait=maxwaittime]
    [--poolresize=poolresizelimit]
    [--idletimeout=idletimeout]
    [--isolationlevel=isolationlevel]
    [--isisolationguaranteed={true|false}]
    [--isconnectvalidatereq={false|true}]
    [--validationmethod=validationmethod]
    [--validationtable=validationtable]
    [--nontransactionalconnections={false|true}]
    [--validateatmostonceperiod=validationinterval]
    [--leaktimeout=leaktimeout]
    [--leakreclaim={false|true}]
    [--creationretryattempts=creationretryattempts]
    [--creationretryinterval=creationretryinterval]
    [--statementtimeout=statementtimeout]
    [--lazyconnectionenlistment={false|true}]
    [--lazyconnectionassociation={false|true}]
    [--driverclassname=jdbcdriverclassname]
    [--matchconnections={false|true}]
    [--maxconnectionusagecount=maxconnectionusagecount]
    [--ping={false|true}]
    [--pooling={false|true}]
    [--statementcachesize=statementcachesize]
    [--validationclassname=validationclassname]
    [--description description]
    [--property name=value[:name=value]...]
    connectionpoolid

格納先

Application Serverインストールディレクトリー/javaee/glassfish/bin

機能

create-jdbc-connection-poolサブコマンドは、指定されたJDBCコネクションプール名を持つJava Database Connectivity(JDBC)ソフトウェアを新規登録します。

次のようにして、認証付きのJDBCコネクションプールは作成できます。

接続するデータベースに応じて次に示すオプションを指定します。

注※1

XAトランザクションを使用しない場合に指定します。

注※2

XAトランザクションを使用する場合に指定します。

注※3

コネクション障害検知を行う場合だけ指定します。

注※4

このオプションは、トランザクションがグローバルトランザクションでないときに、オートコミット機能を有効にするかどうかを設定します。この設定がtrueでない場合、コネクション障害検知機能が正常に動作しません。コネクション障害検知機能を使用する場合、trueを指定します。

注※5

XAトランザクションを使用しない場合、かつHiRDB.iniファイルに指定されている設定を使用する場合に指定します。

注※6

databaseNameserverNameportNumberdriverTypeの4つのプロパティーか、urlのどちらかを指定します。両方を指定した場合、urlが有効になり、それ以外の4つのプロパティーは無視されます。

このサブコマンドはリモートモードだけサポートします。

前提条件

ドメイン管理サーバは、稼働状態である必要があります。

ファイル

JDBCコネクションプールを作成するのに--propertyオプションを使用しない場合は、XMLディスクリプターでコネクション情報を指定します。

引数

--help | -?

このサブコマンドのヘルプテキストを表示します。

--datasourceclassname=datasourceclassname

ベンダー供給のJDBCデータソースのリソースマネージャーの名称を指定します。グローバルトランザクションを使用する場合は、javax.sql.XADatasourceインターフェースを実装したクラスを指定します。

型:String

指定できる値を次に示します。

  • datasourceクラス名

デフォルト値:なし

--restype=resourcetype

このオプションは次のどちらかの場合に必要になります。

  • DataSourceクラスが、javax.sql.DataSourcejavax.sql.XADataSourceまたはjavax.sql.ConnectionPoolDataSourceのうち2つ以上のインターフェースを実装する時

  • Driverクラスの提供が必須の時

--restypeオプションにjava.sql.Driverを指定する場合、--driverclassnameオプションも必要です。

--restypeオプションにjavax.sql.DataSourcejavax.sql.XADataSource、またはjavax.sql.ConnectionPoolDataSourceを指定する場合、--datasourceclassnameオプションも必要です。

--restypeオプションを指定しない場合、--driverclassnameオプションか--datasourceclassnameオプションのどちらか一方を必ず指定してください。

型:String

指定できる値を次に示します。

  • java.sql.Driver

  • javax.sql.DataSource

  • javax.sql.XADataSource

  • javax.sql.ConnectionPoolDataSource

デフォルト値:なし

--steadypoolsize=poolsize

プールに保持する初期コネクション数と最小コネクション数を指定します。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:24

glassfish-resources.xmljdbc-connection-pool要素のsteady-pool-size属性のデフォルト値も、このオプションのデフォルト値と同じです。

--maxpoolsize=maxpoolsize

作成できる最大コネクション数を指定します。

型:Integer

指定できる値を次に示します。

  • 12147483647

デフォルト値:24

glassfish-resources.xmljdbc-connection-pool要素のmax-pool-size属性のデフォルト値も、このオプションのデフォルト値と同じです。

--maxwait=maxwaittime

コネクションタイムアウトが送信されるまでに、呼び出し側が待機する必要がある時間をミリ秒単位で指定します。

0は、呼び出し側を無期限に待機させます。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:60000

--poolresize=poolresizelimit

idle-timeout-in-secondsタイマーが終了の際、解除されるコネクション数を指定します。

型:Integer

指定できる値を次に示します。

  • 12147483647

デフォルト値:2

--idletimeout=idletimeout

コネクションをアイドル状態で維持できる最長時間を秒単位で指定します。

このタイムアウト値は、アプリケーションのコネクションに使えない時間の蓄積を避けるため、データベースサーバ側のタイムアウト値よりも短くする必要があります。

0を指定した場合、無効になります。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:300

--isolationlevel=isolationlevel

プール化データベースコネクションに設定されたトランザクションアイソレーションレベルを指定します。

プールされたコネクションに対して分離レベルをプログラム的に変更するようなアプリケーションを利用した場合、プールに不整合が起きる危険があります。これはプログラムエラーにつながります。

型:String

指定できる値を次に示します。

  • read-uncommitted

  • read-committed

  • repeatable-read

  • serializable

デフォルト値:JDBCドライバーのプロバイダーが設定する独立性レベル

--isisolationguaranteed={true|false}

特定の分離レベルがトランザクションアイソレーションレベルに指定された場合にだけ適用されます。

型:Boolean

指定できる値を次に示します。

  • true

  • false

デフォルト値:true

--isconnectvalidatereq={false|true}

コネクション障害検知機能を使用するかどうかを指定します。trueの場合、コネクション障害検知機能を使用します。

型:Boolean

指定できる値を次に示します。

  • true

  • false

デフォルト値:false

--validationmethod=validationmethod

--isconnectvalidatereqオプションがtrueの場合、実行する検証のタイプを指定します。

  • auto-commitを指定した場合:

    Connection#setAutoCommit(Connection#getAutoCommit())を実行します。

  • meta-dataを指定した場合:

    Connection#getMetaData()を実行します。

  • tableを指定した場合:

    --validationtableオプションで指定したテーブルに対して、SELECT文を実行します。

  • custom-validationを指定した場合:

    --validationclassnameオプションで指定したユーザ定義のクラスを使用します。

型:String

指定できる値を次に示します。

  • auto-commit

  • meta-data

  • table

  • custom-validation

デフォルト値:table

--validationtable=validationtable

使用する検証テーブルの名称を指定し、SELECT文を実行してコネクションを検証します。

--isconnectvalidatereqオプションがtrueの場合、--validationmethodオプションがtableに設定されていれば、このオプションの設定は必須です。

型:String

指定できる値を次に示します。

  • 検証テーブル名

デフォルト値:なし

--nontransactionalconnections={false|true}

このプロパティーを持つプールがtrueに設定の場合、非トランザクションコネクションを返します。このコネクションは、トランザクションマネージャーに自動的に登録されません。

型:Boolean

指定できる値を次に示します。

  • true

  • false

デフォルト値:false

--validateatmostonceperiod=validationinterval

連続するリクエスト間で、コネクションを検証する間隔を秒単位で指定します。この属性を適切な値に設定すると、コネクションの検証リクエスト数を最小限にします。

0を指定した場合、常にコネクションを検証します。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:0

--leaktimeout=leaktimeout

コネクションプール内のコネクションリークを追跡する時間を秒単位で指定します。指定の時間内にアプリケーションによってコネクションがプールに戻されない場合は、潜在的リークがあるものと見なされ、呼び出し側のスタックトレースが記録されます。0を指定した場合はコネクションリークを追跡しません。

コネクションリークがある場合にだけ、このオプションで検知できます。

--leakreclaimオプションがtrueに設定される場合だけ、コネクションは再開できます。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:0

--leakreclaim={false|true}

リークコネクションの追跡が完了した後で、リークコネクションをコネクションプールに復元するかどうかを指定します。

型:Boolean

指定できる値を次に示します。

  • true

    リークコネクションはコネクションプールに復元されます。

  • false

    リークコネクションはコネクションプールに復元されません。

デフォルト値:false

--creationretryattempts=creationretryattempts

Java EE Serverが、最初のコネクションの確立に失敗した場合に、最大何回までコネクション再確立を試行するかを指定します。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:0

--creationretryinterval=creationretryinterval

コネクション確立のリトライ間隔を秒単位で指定します。

--creationretryattempts0の場合、--creationretryintervalオプションは無視されます。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:10

--statementtimeout=statementtimeout

完了していないクエリーが終了するまでの時間を秒単位で指定します。

型:Integer

指定できる値を次に示します。

  • -12147483647

デフォルト値:-1

--lazyconnectionenlistment={false|true}

メソッドがリソースを実際に使用する場合、リソースをトランザクションに参加させるかどうかを指定します。

型:Boolean

指定できる値を次に示します。

  • true

    メソッドがリソースを実際に使用する場合に限り、リソースをトランザクションに参加させます。

  • false

    リソースはトランザクションに常時参加させます。メソッドがリソースを実際に使用する場合に限りません。

デフォルト値:false

--lazyconnectionassociation={false|true}

物理コネクションを使用する際に、その物理コネクションを論理コネクションに関連づけ、および、トランザクションが完了した際には関連づけないことを指定します。関連づけの有無は物理コネクションの再使用を有効にします。

型:Boolean

指定できる値を次に示します。

  • true

    物理コネクションは、物理コネクションを使用するときだけに関連づけられ、トランザクションが完了した際には関連づけられません。

    --lazyconnectionenlistmentオプションもtrueに設定する必要があります。

  • false

    物理コネクションは、物理コネクションを使用する前でも論理コネクションに関連づけられ、トランザクションが完了した際には関連づけられません。

デフォルト値:false

--driverclassname=jdbcdriverclassname

ベンダー供給のJDBCドライバーのクラス名を指定します。このドライバーはjava.sql.Driverインターフェースを実装している必要があります。

型:String

指定できる値を次に示します。

  • java.sql.Driverインターフェースを実装するJavaクラス

デフォルト値:なし

--matchconnections={false|true}

プールから選択したコネクションがリソースアダプターと一致する必要があるどうかを指定します。

プール内のすべてのコネクションが同一の場合、コネクションとリソースアダプターが一致する必要はありません。

型:Boolean

指定できる値を次に示します。

  • true

    コネクションはリソースアダプターと一致する必要があります。

  • false

    コネクションはリソースアダプターと一致する必要はありません。

デフォルト値:false

--maxconnectionusagecount=maxconnectionusagecount

コネクションを再使用できる最大回数を指定します。最大数に達すると、コネクションが閉じられます。コネクションを再使用できる最大回数を制限することで、ステートメントのリークが回避できます。0を指定した場合はコネクションを再使用できる回数の上限がなくなります。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:0

--ping={false|true}

trueの場合、コネクションプール作成時または再構成時にコネクションプールが使用できるかどうかテストします。

型:Boolean

指定できる値を次に示します。

  • true

  • false

デフォルト値:false

--pooling={false|true}

プールに対してコネクションのプーリングが有効かどうかを指定します。

型:Boolean

指定できる値を次に示します。

  • true

  • false

デフォルト値:true

--statementcachesize=statementcachesize

デフォルトのキャッシュ機構を使用してキャッシュされるSQLステートメント数を指定します。

型:Integer

指定できる値を次に示します。

  • 02147483647

デフォルト値:0

--validationclassname=validationclassname

--validationmethodオプションがcustom-validationのときに独自の検証を提供するクラス名を指定します。 このクラスは、org.glassfish.api.jdbc.ConnectionValidationインターフェースを実装する必要があり、さらにJava EE Serverにアクセスできるようにする必要があります。

--validationmethodオプションがcustom-validationに設定されている場合、このオプションは必須です。

型:String

指定できる値を次に示します。

  • org.glassfish.api.jdbc.ConnectionValidationインターフェースを実装したクラス

デフォルト値:なし

--description description

指定されたJDBCコネクションプールの詳細を説明するテキストを指定します。

型:String

指定できる値を次に示します。

  • テキストでの説明

デフォルト値:なし

--property name=value[:name=value]...

プールを構成するためのオプションの属性名と値のペアを指定します。

指定形式は、name=valueです。複数指定する場合は、コロン(:)で区切ります。同じプロパティー名を複数指定した場合は、最後に指定したプロパティーの値が有効となります。

属性名または属性値にコロンが含まれる場合、そのコロンをエスケープするために円記号(\)を使用する必要があります。 別の文字でも、エスケープ文字が必要になることがあります。

HiRDBまたはOracleに接続するためのプロパティーは、それぞれ「HiRDBに接続する場合に指定するオプション」または「Oracleに接続する場合に指定するオプション」を参照してください。そのほかに指定できるプロパティーについては、使用するデータベースのマニュアルを参照してください。

プロパティー名とvalueに指定できる値を次に示します。

user=value

データベースに接続するために必要なユーザー名を指定します。

型:String

デフォルト値:なし

password=value

型:String

デフォルト値:なし

データベースに接続するために必要なパスワードを指定します。

databaseName=value

このコネクションプールのデータベースを指定します。

型:String

デフォルト値:なし

serverName=value

このコネクションプールのデータベースサーバを指定します。

型:String

デフォルト値:なし

portNumber=value

データベースサーバがリクエストをリッスンするポートを指定します。

型:Integer

指定できる値を次に示します。

  • 165535

デフォルト値:なし

networkProtocol=value

通信プロトコルを指定します。

型:String

デフォルト値:なし

roleName=value

初期SQLロール名を指定します。

型:String

デフォルト値:なし

datasourceName=value

コネクションプーリングが動作するXADataSourceまたはConnectionPoolDataSourceを指定します。

型:String

デフォルト値:なし

description=value

テキストの説明を指定します。

型:String

デフォルト値:なし

url=value

このコネクションプールのURLを指定します。これは標準プロパティーではありませんが、共通に使用されます。

型:String

デフォルト値:なし

dynamic-reconfiguration-wait-timeout-in-seconds=value

コネクションプールの動的再構成を、コネクションプールを使用中のアプリケーションに透過的に有効にするために使用されます。これによって、プールへの属性またはプロパティーの変更を有効にするためにアプリケーションを再起動する必要がなくなります。

処理中のトランザクションのコネクション取得要求は、タイムアウト期間内のコネクション取得要求であるかぎり、トランザクションを完了するために古いプール構成のまま実行することが許可されます。新しいコネクション取得要求はプールの再構成が完了するまで待機し、コネクションは変更されたプール構成を使用して取得されます。

型:Long

指定できる値を次に示します。

  • xy(xの値×1000 ≧ -9223372036854775808 および yの値×1000 ≦ 9223372036854775807)

デフォルト値:0

connectionpoolid

作成するJDBCコネクションプールの名称を指定します。

型:String

指定できる値を次に示します。

  • コネクションプールID

デフォルト値:なし

使用例

次の例は、JDBCコネクションプールを作成します。

asadmin create-jdbc-connection-pool
--datasourceclassname org.apache.derby.jdbc.ClientDataSource 
--restype javax.sql.XADataSource
--property portNumber=1527:password=APP:user=APP:serverName=
localhost:databaseName=sun-appserv-samples:connectionAttributes=\;
create\\=true sample_derby_pool

戻り値

戻り値

説明

0

サブコマンドの実行に成功しました。

1

サブコマンドの実行中にエラーが発生しました。