WebOTXで提供するリソースの一覧を以下に示します。なお個々のリソースについての詳細は [ リファレンス集 運用管理・設定編 > 2. MO定義リファレンス ] を参照してください。
| リソース | 説明 | ドット区切りの名前 |
|---|---|---|
| admin-object-resource | アドミンオブジェクトリソース | server.resources.admin-object-resource.<リソース名> |
| connector-connection-pool | コネクションプール | server.resources.connector-connection-pool.<リソース名> |
| connector-resource | コネクタリソース | server.resources.connector-resource.<リソース名> |
| custom-resource | カスタムリソース | server.resources.custom-resource.<リソース名> |
| external-jndi-resource | JNDIリソース | server.resources.external-jndi-resource.<リソース名> |
| jdbc-datasource | JDBCデータソース。詳細については[ ドメイン構築・基本設定ガイド > 6. リソース > 6.3. JDBCデータソース ]を参照してください。 | server.resources.jdbc-datasource.<リソース名> |
| jms-connection-factory | JMSコネクションファクトリリソース | server.resources.jms-resource.jms-connection-factory.<リソース名> |
| jms-logical-destination | JMS送信先リソース | server.resources.jms-resource.jms-logical-destination.<リソース名> |
| jms-resource | JMSリソース | server.resources.jms-resource |
| resource-adapter-config | リソースアダプタ | server.resources.resource-adapter-config.<リソース名> |
| resources | リソースの親MO | server.resources |

図6.2.1-1
JDBCデータソース登録の詳細については[ ドメイン構築・基本設定ガイド > 6. リソース > 6.3. JDBCデータソース ]を参照してください。
コマンドでリソースを追加したり、削除したりすることが出来ます。なお各コマンドの詳細については[ リファレンス集 運用管理・設定編 > 4. 運用管理コマンドリファレンス ]を参照してください。
| コマンド | 説明 |
|---|---|
| add-resources | 指定されたXMLファイルへリソースを登録 |
| create-connector-resource | 指定されたJNDI名でのリソースの登録 |
| create-custom-resource | カスタムリソースの登録 |
| create-javamail-resource | JavaMailリソースの登録 |
| create-jdbc-datasource | JDBCデータソースの登録。詳細については[ ドメイン構築・基本設定ガイド > 6. リソース > 6.3. JDBCデータソース ]を参照してください。 |
| create-jms-resource | JMSリソースの登録 |
| create-jndi-resource | JNDIリソースの登録 |
| delete-connector-resource | 指定のコネクタリソースの削除 |
| delete-custom-resource | カスタムリソースの削除 |
| delete-javamail-resource | JavaMailリソースの削除 |
| delete-jdbc-datasource | JDBCデータソースの削除 |
| delete-jms-resource | JMSリソースの削除 |
| delete-jndi-resource | JNDIリソースの削除 |
JDBCデータソースに関する運用操作法について説明します。なお、各属性の詳細については[ リファレンス集 運用管理・設定編 > 1. コンフィグレーション(設定一覧) > 1.8. JDBCデータソース > 1.8.2. JDBCデータソース設定項目一覧 ]を参照してください。
JDBCデータソースの登録と削除、および項目の参照と設定の手順について説明します。
まず、[ 注意制限事項 > 6. JDBCデータソース ]に記載されている内容をご確認ください。
あらかじめ、JDBCドライバをクラスパスに追加しておきます。詳細は、[ リファレンス集 運用管理・設定編 > 1. コンフィグレーション(設定一覧) > 1.8. JDBCデータソース > 1.8.9. クラスパス設定 ]を参照してください。

図6.3.1.1-1
| otxadmin> create-jdbc-datasource --dataSourceType <JDBCドライバベンダが提供するインタフェースの種類> <JDBCデータソース名> |
| otxadmin> list-jdbc-datasources |
次に、[ 6.3.2. JDBCコネクションプールの管理 > 6.3.2.1. 接続テスト ]によって、実際にデータベースと接続できるかどうかを確認してください。
| 統合運用管理ツールでの属性名 | 運用管理コマンドでの属性名(attribute-name) |
|---|---|
| JNDIサーバへの登録名 | jndiName |
| データソースの種別 | dataSourceType |
| JDBC仕様のメジャーバージョン | jdbcMajorVersion |
| JTA連携有無 | useJTA |
| JDBCデータソースについての説明 | description |
| JDBC URLまたはデータベース名、データソース名 | dataSourceName |
| ユーザ名 | userName |
| パスワード | password |
| サーバ名 | serverName |
| ポート番号 | portNumber |
| カスタマイズテンプレート | customizeTemplate |
| エージェントプロセス上でロードするかどうかを指定 | use-jmx-agent |
| 全てのEJBプロセスグループで使用するかどうか | use-all-ejb-processgroups |
| 最小プールサイズ | minPoolSize |
| 最大プールサイズ | maxPoolSize |
| 初期プールサイズ | initialPoolSize |
| 無通信時間の上限 | maxIdleTime |
| プロパティ置換までの待機時間 | propertyCycle |
| コネクションの一括破棄可否 | resetAllConnectionsOnFailure |
| 初期接続の接続リトライ使用有無 | reconnectInitialPool |
| 空きコネクション取得時の待ち合わせ時間 | waitFreeConnTimeout |
| ステートメントの最大プール数 | maxStatements |
| ログインタイムアウト | loginTimeout |
| 接続リトライ回数 | connectRetryMax |
| 接続リトライ間隔 | connectRetryInterval |
| 自動コミットのデフォルト値 | defaultAutoCommit |
| コネクション解放までの待ち合わせ時間 | shrinkDelayTime |
| クエリタイムアウト | queryTimeout |
| ソケットの読み取りタイムアウト | readTimeout |
| JDBCドライバの独自プロパティ | driverVenderProperties |
| トランザクション遮断レベル | transactionIsolationLevel |
| コネクションのガベージコレクト機能の動作オプション | checkGarbageOption |
| コネクションのガベージコレクト間隔 | checkGarbageInterval |
| データベースサーバの状態監視オプション | checkServerOption |
| データベースサーバの状態監視間隔 | checkServerInterval |
| データベースサーバの状態監視コマンド | checkServerCommand |
| JTAのトランザクション毎に1つの物理コネクションを使用するかどうか | useOneConnectionPerTransaction |
| データベースクラスタの使用有無 | useDatabaseCluster |
| トランザクション毎の複数ユーザ使用有無 | useMultiUsersPerTransaction |
| コネクションプールのクラスタ動作オプション | clusterPoolOption |
| クラスタ対象のJDBCデータソース名リスト | clusterPoolNames |
| 障害時の再接続処理ポリシー | validAllClusterConnectionsOnFailure |
| クラスタプールの重み | clusterPoolWeight |
| SQLの最大ランキング数 | maxSqlRankingCount |
| 最大SQL文字列長 | maxSqlTraceLength |
| ステートメントのラップ有無 | wrapStatement |
| 定義ファイルの格納ディレクトリ名 | iPXdaConfigDirectoryName |
| 動作環境定義ファイル名 | iPXdaConfigFileName |
| トランザクション定義ファイル名 | iPXdaInvokeConfigFileName |
| オプション定義ファイル名 | iPXdaOptionConfigFileName |
JTA連携有無[useJTA]をtrueにしてJDBCデータソースを登録すると、TransactionサービスのJDBCリソースが自動的に作成されます。 JTA連携有無[useJTA]をfalseに変更した場合は、[ 7. WebOTXの内部サービス > 7.4. Transactionサービス > 7.4.5. リソースの運用操作 ]を参照してJDBCリソースの削除を行ってください。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で削除することもできます。
| otxadmin> delete-jdbc-datasource <JDBCデータソース名> |
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で反映することもできます。
| otxadmin> publish-jdbc-datasource <JDBCデータソース名> |
JDBCデータソースのテストやコネクションの接続および切断、有効化および無効化、SQLランキング情報の採取といったJDBCコネクションプールの管理操作について、説明します。
登録したJDBCデータソースが使用可能かどうかをテストする場合に利用します。
既に接続テストを実施済みで有効なJDBCコネクションがプールされている場合で、データベースサーバの状態監視オプション[checkServerOption]の設定を行っていない場合は、正しくテストが行われるように、[ 6.3.2.3. JDBCコネクションの切断 ]を行ってから接続テストを行ってください。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]でテストすることもできます。
| otxadmin> ping-jdbc-datasource <JDBCデータソース名> |
接続テストが異常終了する場合は、[ トラブルシューティングガイド > 2. 障害解析 > 2.5. 機能別リンク > 2.5.4. JDBCデータソース ]を参照して障害解析を行ってください。
指定した数のJDBCコネクションを接続します。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で接続することもできます。
| otxadmin> connect-jdbc-datasource --jdbcConnections <コネクション数> <JDBCデータソース名> |
| otxadmin> connect-all-jdbc-datasources --jdbcConnections <コネクション数> |
プールされているJDBCコネクションを切断します。
使用中のJDBCコネクションは、JDBCコネクションがクローズされた時、または、トランザクションが完了した時に切断されます。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で切断することもできます。
| otxadmin> reset-jdbc-datasource <JDBCデータソース名> |
| otxadmin> reset-all-jdbc-datasources |
JDBCデータソースを有効化します。
JDBCデータソースを有効化すると、JDBCデータソースからJDBCコネクションを払い出せるようになります。また、データベースサーバの定期監視は再開されます。さらに、クラスタ化されたJDBCデータソースでは、呼び出し先のリストに追加されます。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で有効化することもできます。
| otxadmin> enable-jdbc-datasource --jdbcParentName <親のJDBCデータソース名> <有効化するJDBCデータソース名> |
JDBCデータソースを無効化します。
JDBCデータソースを無効化すると、JDBCデータソースからJDBCコネクションを払い出せなくなります(java.sql.SQLExceptionが発生します)。また、データベースサーバの定期監視は中断されます。さらに、クラスタ化されたJDBCデータソースでは、呼び出し先のリストから除外されます。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]で無効化することもできます。
| otxadmin> disable-jdbc-datasource --jdbcParentName <親のJDBCデータソース名> <無効化するJDBCデータソース名> |
JDBCデータソースを利用して実行されたSQL命令の実行時間のランキング情報をログに出力します。
JDBCデータソースのモニタリングレベルがHIGHに変更されると、SQLのランキング情報や統計情報を採取するため、java.sql.StatementがWebOTXの実装クラスでラップされます。 その際、プール済みのJDBCコネクションが切断されたり、アプリケーションが使用中のjava.sql.StatementでSQLランキング情報を採取できないことがあります。 そうした状況を避けるためには、ステートメントのラップ有無[wrapStatement]にtrueを設定しておいてください。また、JDBC仕様のメジャーバージョン[jdbcMajorVersion]には、 JDBCドライバがサポートする正しいバージョンを指定してください。
「WebOTX管理ドメイン[<ホスト名>]」-「<ドメイン名>」-「リソース」-「JDBCデータソース」-「<JDBCデータソース名>」を選択し、右クリックあるいはメニューバーの[操作]でランキング数を出力することもできます。
| otxadmin> set server.monitoring-service.module-monitoring-levels.jdbc-datasource=HIGH |
| otxadmin> dump-jdbc-datasource --rankingCount <ランキング数> <JDBCデータソース名> |
| otxadmin> dump-all-jdbc-datasources --rankingCount <ランキング数> |
2009/03/04 12:11:22.890|---: INFO [woJDBC] JDBC DataSource(V8.20.00.71) Dump Information for jdbc/Oracle
2009/03/04 12:11:22.890|---: INFO
2009/03/04 12:11:22.890|---: INFO ------------------------------------------------------------------------------
2009/03/04 12:11:22.890|---: INFO rank | start time | execute time (ms) | command | trace id
2009/03/04 12:11:22.890|---: INFO ------------------------------------------------------------------------------
2009/03/04 12:11:22.890|---: INFO 1 2009/03/04 12:09:22.465 47 select 22231852
2009/03/04 12:11:22.890|---: INFO 2 2009/03/04 12:11:16.924 4 select 23370325
2009/03/04 12:11:22.890|---: INFO
2009/03/04 12:11:22.890|---: INFO JDBC DataSource(V8.20.00.71) Stack Information
2009/03/04 12:11:22.890|---: INFO
2009/03/04 12:11:22.890|---: INFO trace id : 22231852
2009/03/04 12:11:22.890|---: INFO command : SELECT * FROM JDBC_TEST_TABLE
2009/03/04 12:11:22.890|---: INFO
jp.co.nec.WebOTX.WODSStack: This statement executed
at jp.co.nec.WebOTX.WOJDBCStatement.execute(WOJDBCStatement.java:80)
at test.jdbc.JDBCTestEJB.testSelectExecute(JDBCTestEJB.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
:
:
2009/03/04 12:11:22.890|---: INFO
2009/03/04 12:11:22.890|---: INFO trace id : 23370325
2009/03/04 12:11:22.890|---: INFO command : SELECT * FROM JDBC_TEST_TABLE
2009/03/04 12:11:22.890|---: INFO
jp.co.nec.WebOTX.WODSStack: This statement executed
at jp.co.nec.WebOTX.WOJDBCStatement.execute(WOJDBCStatement.java:80)
at test.jdbc.JDBCTestEJB.testSelectExecute(JDBCTestEJB.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
:
:
SQL命令の実行時間のランキング情報に加えて、JDBC Driverモジュールログレベルを次のレベルに設定すると、レベルに応じたJDBCドライバ関連のトレース情報がログに出力されます。ログレベルの設定方法については、[ 8. ログ > 8.2.5. JDBC > 8.2.5.1. webotx_jdbc.log ] を参照してください。
| ログレベル | 説明 |
|---|---|
| INFO、CONFIG | ConnectionとDatabaseMetaDataのトレース情報とSQLExceptionのメッセージを出力します。 |
| DEBUG | INFOレベルでの出力内容に加えて、Statement、PreparedStatement、CallableStatement、ResultSetのトレース情報を出力します。 |
| DETAIL | DEBUGレベルでの出力内容に加えて、SQLExceptionのスタック情報を出力します。 |
| TRACE | DETAILレベルでの出力内容に加えて、maxSqlTraceLengthのチェックを行わずに全ての文字列データを出力します。 |
| OFF、WARN、ERROR | JDBCドライバのトレース情報を出力しません。 |
WebOTX でMySQL を利用するための方法について説明します。
次の設定に従って、JDBCデータソースを登録してください。 登録する方法は、[ 6.3.1. JDBCデータソースの定義 > 6.3.1.1. JDBCデータソースの登録 ] を参照してください。また、その他の設定内容については、[ 1.8. JDBCデータソース > 1.8.2. JDBCデータソース設定項目一覧 ] を参照してください。
| 属性名 | 属性値 |
|---|---|
| JNDIサーバへの登録名 |
登録するJDBC データソースの名前を設定します
設定例:jdbc/MySQL |
| データソースの種別 | JDBC API |
| JDBC仕様のメジャーバージョン | 3 |
| JTA連携有無 | 必要に応じてチェックします |
| JDBCデータソースについての説明 | 任意の文字列を設定します |
| JDBC URLまたはデータベース名、データソース名 |
jdbc:mysql://ホスト名:ポート番号/データベース名
設定例:jdbc:mysql://localhost:3306/dbname |
| ユーザ名 | データベースとの接続時に使用するユーザ名を指定します |
| パスワード | データベースとの接続時に使用するパスワードを指定します |
| プロパティ名 | プロパティ値 |
|---|---|
| jdbcDriverName | com.mysql.jdbc.Driver |
次に、[ 6.3.2. JDBCコネクションプールの管理 > 6.3.2.1. 接続テスト ]によって、実際にMySQL データベースと接続できるかどうかを確認してください。