WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

Type 4 接続用の JDBC プロバイダーのセットアップ

mqsicreateconfigurableservice または mqsichangeproperties コマンドを使用して、JDBC プロバイダー・サービスを構成します。

始める前に:
メッセージ・フローに DatabaseRetrieveDatabaseRouteJavaComputeMappingまたは Java™ ユーザー定義ノードを含めて、そのノードでデータベースと対話する場合、ブローカーはそのデータベースとの接続を確立して、そのノードが実行する操作を実施できるようにする必要があります。 JDBCProvider 構成可能サービスを定義して、接続を完了するのに必要な情報をブローカーに提供しなければなりません。
重要: JDBCProvider サービスに名前を付ける際は、以下の要件を考慮してください。
  • JavaCompute ノードまたは Java ユーザー定義ノードで JDBCProvider サービスを使用する場合、JDBCProvider サービスの名前は、ノードからの getJDBCType4Connection() API 呼び出しにおける datasourceName パラメーターと一致する必要があります。
  • Mapping ノードで JDBCProvider サービスを使用する場合、JDBCProvider サービスの名前は、グラフィカル・データ・マップのデータベース変換で使用するデータベース名と一致している必要があります。 各データベース変換では、データベース名は、マップの作成に使用されたデータ設計プロジェクトのデータベース定義 (.dbm ファイル) によって判別されます。
  • DatabaseRetrieve ノードまたは DatabaseRoute ノードで JDBCProvider サービスを使用する場合、JDBCProvider サービスの名前は、ノードの「データ・ソース名」プロパティーの値と一致している必要があります。

JDBCProvider 構成可能サービスは、1 つのデータベースだけへの接続をサポートします。そのため、ノードまたは Java アプリケーションが接続するそれぞれのデータベースのサービスを作成する必要があります。

WebSphere Message Broker Explorer を使用して Type 4 接続用の JDBC プロバイダーをセットアップするには、新しい構成可能サービスの作成を参照してください。

mqsicreateconfigurableservice または mqsichangeproperties コマンドを使用して Type 4 接続用の JDBC プロバイダーをセットアップするには、以下のステップを実行します。

  1. JDBCProvider サービスを必要とするデータベースのタイプを識別します。

    サポートされるデータベースでは、サポートされている JDBC ドライバーとデータベースが示されています。一部のプラットフォームおよび一部のデータベースでは、グローバル調整 (XA) トランザクションのサポートが制限されます。

  2. mqsireportproperties コマンドを実行して、使用可能な JDBCProvider サービスのリストを表示します。 broker_name の部分を、使用しているブローカー名で置き換えます。
    mqsireportproperties broker_name -c JDBCProviders -a -o AllReportableEntityNames

    このコマンド応答では、定義されている JDBCProvider 構成可能サービスがすべてリストされます。 独自の定義を作成していない場合、以下のデフォルト提供サービスのリストが表示されます。

    • DB2®
    • Informix®
    • Informix_With_Date_Format
    • Microsoft_SQL_Server
    • Oracle
    • Sybase_JConnect6_05

    Informix データベースに接続する場合は、次のようにします。

    • 以前のバージョンの Informix サーバーが使用していた日付形式接続属性に依存するクライアント・アプリケーションとの互換性のためには、Informix_With_Date_Format を使用します。
    • 日付形式属性に依存しないクライアント・アプリケーションには、Informix を使用します。
  3. 関連する JDBCProvider サービス定義の内容を表示します。 例えば、提供されている Oracle 定義を表示するには、以下のコマンドを実行します。
    mqsireportproperties broker_name -c JDBCProviders -o Oracle -r

    このコマンド応答では、Oracle 定義のすべてのプロパティーがリストされます。 この定義を変更していない場合、プロパティーは初期値に設定されています。その一部は、実行可能な定義を作成するために変更することが必要です。 例えば、databaseName というプロパティーは default_Database_Name に設定されていますが、接続先とする特定のデータベースを識別するためには変更する必要があります。

    JDBCProvider サービスには、以下のプロパティーがあります。

    • connectionUrlFormat。 特定のデータベース・タイプに固有の、接続 URL 定義を表すパターン。 例えば、DB2 のパターンは以下の内容で定義されます。
      jdbc:db2://[serverName]:[portNumber]/[databaseName]:user=[user];password=[password];

      実行時にブローカーがデータベースに接続するときに、このパターンはブローカーにより使用され、完成されます。 大括弧内の値 (例えば [serverName]) は、ブローカーにより、mqsicreateconfigurableservicemqsichangeproperties、または mqsisetdbparms コマンドで指定した値を使用して、パターンに置き換えられます。

      以下の値および優先順位がブローカーによって使用され、パターンのユーザー ID およびパスワードを置換します。

      1. 最初に、すべてのプラットフォームで: mqsisetdbparms を使用し、-n パラメーターでデータベースを指定することにより、特定のデータベースに対して設定したユーザー ID およびパスワード。
      2. 2 番目に、すべてのプラットフォームの場合: mqsisetdbparms を使用し、-n パラメーターで jdbc::JDBC を指定することにより、その他のすべてのデータベースに対して設定したユーザー ID およびパスワード。
      3. 3 番目に、値はプラットフォーム固有です。
        1. Windows platformWindows の場合: mqsicreatebroker コマンドで指定したブローカー・サービス ID およびパスワード。
        2. Linux platformUNIX platformLinux および UNIX の場合: ユーザー ID mqsiUser および パスワード ******** (これらの値は固定)。
        3. z/OS platformz/OS® の場合: ユーザー ID "" およびパスワード ""

      提供されている JDBCProvider サービスの 1 つを使用する場合は、パターン自体を変更するために mqsichangeproperties コマンドを使用しないでください。パターンに変更を加えると、予測不能な結果の原因となる場合があります。

      mqsicreateconfigurableservice コマンドを使用して独自の JDBCProvider サービスを定義する場合は、mqsireportproperties コマンドを使用して、connectionUrlFormat ストリングの内容が、デフォルトの提供されているプロバイダーと、使用しているデータベース・タイプに関して正確に一致しているか検査します。

      さらに、z/OS で作業する場合に、JCL ファイルの BIPCRCS と BIPCHPR を使用して JDBCProvider サービスを定義する際には、ブローカーが稼働するのと同じコード・ページを使用して 3270 エミュレーターが構成されていることを確認してください。 コード・ページが一致しない場合は、定義した connectionUrlFormat ストリング・パターンがブローカーで正しく認識されない可能性があります。

    • connectionUrlFormat Attr1-5。 データベースに対して定義された URL パターンに、サーバー ID などの非標準 JDBC データ・ソース・プロパティーが含まれている場合は、標準属性のほかに、5 種類の汎用接続の URL 属性のいずれかを使用して、これらのプロパティーを指定します。 以下に例を示します。
      • connectionURLFormat = jdbc:oracle:thin:[user]/[password]@[serverName]:[portNumber]:[connectionUrlFormatAttr1] である場合、connectionUrlFormatAttr1 には、mqsicreateconfigurableservice または mqsichangeproperties コマンドでプロパティー connectionUrlFormatAttr1 に対して値を定義することで提供する必要がある、Oracle サーバー ID が含まれていなければなりません。 それによりブローカーは、すべての必要な値を必要なパターンに置き換えることができます。
      • connectionURLFormat = jdbc:informix-sqli://[serverName]:[portNumber]/[databaseName]:informixserver=[connectionUrlFormatAttr1]; user=[user];password=[password] である場合、connectionUrlFormatAttr1 に、サーバー (通常は INFORMIXSERVER 環境変数により指定される) 上の Informix インスタンスの名前が含まれている必要があります。 この値は大/小文字の区別があります。
    • databaseName。 データ・ソース・エントリーが接続を可能にするデータベースの名前。employees など。
    • databaseSchemaNames。 必要に応じて、メッセージ・フローのノードによって作成される SQL ステートメントで使用されるデータベース・スキーマの名前をオーバーライドします。 このプロパティーは Mapping ノードによってのみ、およびデータベース変換を組み込んだグラフィカル・データ・マップを呼び出す場合にのみ使用されます。 詳しくは、JDBCProviders 構成可能サービスを参照してください。
    • databaseType。 データベースのタイプ。DB2 など。
    • databaseVersion。 データベースのバージョン。9.1 など。
    • description。 データ・ソース定義を記述するためのオプション・プロパティー。
    • environmentParmsDB2 および Informix の場合のみ。データ・ソースのプロパティーのリストを指定するオプション・プロパティー。形式は name=value で、それぞれの値はセミコロンで区切られます。
    • jarsURL。 ブローカーが実行されているシステム上のローカル・ディレクトリー・パス。 ここには、Type 4 ドライバー・クラスを含む JAR ファイルが配置されています。

      さらに、ストレージ・エリア・ネットワーク・ディスクをディレクトリー・パスに使用できますが、リモート・コンピューターにマップされるネットワーク・ドライブは使用できません。

    • maxConnectionPoolSize。 オプションでこのプロパティーを設定して、JDBC 接続プールを作成します。 詳しくは、実行グループで使用するデータベース・リソースを JDBC 接続プールで管理する操作を参照してください。
    • portNumber。 データベース・サーバーが listen しているポート番号。50000 など。
    • securityIdentity。 関連付けられたホスト・システム上に暗号化されたパスワードを格納するブローカーのセキュリティー ID の下でエントリーを検索するために、2 度めのブローカー・レジストリー・ルックアップを実施する固有なセキュリティー・キー。mysecurityIdentity など。

      JDBC Type 4 接続の保護で説明されているように、mqsisetdbparms コマンドを使用して、セキュリティー ID を作成します。 mysecurityIdentity の値 (mysecurityIdentity など) は、そのコマンドの -n パラメーターに対して、接頭部 jdbc:: に続いて指定した値と一致しなければなりません。

      セキュリティー ID はユーザー ID とパスワードの値の組を提供し、それらの値は特定の JDBCProvider サービス・エントリーに対して定義された指定のデータ・ソースにアクセスするために使用されます。このプロパティーは接続 URL に、挿入と置換にプロパティー値を必要とするようなユーザー ID とパスワードの組が含まれていない場合には無視されます。

      デフォルト値は mqsisetdbparms コマンドで jdbc::JDBCResourceName を指定することによって設定でき、以下の条件で使用されます。

      • securityIdentity がブランクであるか、またはそれをデフォルト値の default_User@default_Server から変更していないが、接続 URL パターンに ID が必要な場合。
      • 有効な固有のセキュリティー ID キーを入力したが、それを DSN キーの下で見つけられない場合。
    • serverName。 サーバーの名前。host1 など。
    • type4DatasourceClassName。 リモート・データベースへの Type 4 接続を確立し、トランザクション・サポートを整合するために使用される、JDBC データ・ソース・クラス名。 例えば、DB2 では com.ibm.db2.jcc.DB2XADataSource を指定するか、または、Oracle では oracle.jdbc.xa.client.OracleXADataSource を指定します。 整合トランザクションに getJDBCType4Connection() API 呼び出しを使用する場合は、XA クラス名を指定する必要があります。 データベース・サーバーが XA トランザクションをサポートしていない場合、または XA プロトコルを使用しないことにする場合、このプロパティーはオプションとなり、jdbcProviderXASupport プロパティーを false に設定する必要があります。
    • type4DriverClassName。 接続を確立するために使用される、JDBC Type 4 ドライバー・クラス名。 例えば、DB2 では com.ibm.db2.jcc.DB2Driver を指定するか、または、Oracle では oracle.jdbc.OracleDriver を指定します。
    • jdbcProviderXASupport。 ブローカーが XA プロトコルを使用してデータベース・サーバーに接続するかどうかを制御するオプションのプロパティー。 デフォルトでは、このプロパティーは true に設定されます。 データベース・サーバーが XA サポートに対応していない場合、または整合トランザクションが必要ではない場合は、この値を false に設定します。 このように設定すると、type4DatasourceClassName プロパティーに指定されたタイプ 4 データ・ソースではなく、type4DriverClassName プロパティーを使用して指定されたタイプ 4 ドライバーが使用されます。
  4. 提供された定義を使用する場合、mqsichangeproperties コマンドを実行して、デフォルトの値を、ご使用のデータベースおよび環境に固有の値に置き換えてください。 必須値に関して分からないことがある場合は、データベース管理者に問い合わせるか、選択したデータベースに付属の資料を確認してください。 いくつかの値はデータベース製品をインストールした方法やその位置によって異なります。例えば、jarsURL というプロパティーは、データベース・プロバイダーにより提供されてインストールされた JAR ファイルの場所を示します。
  5. 例えば提供されたサービスを将来の定義のためにテンプレートとして保存するなどの理由で、新規の構成可能サービスを作成する場合は、mqsicreateconfigurableservice コマンドを実行して定義を作成します。
    mqsicreateconfigurableservice broker_name -c JDBCProviders -o provider_name 
    -n list of properties -v list of values

    コマンドは 1 行で入力します。上記の例は読みやすさのために改行しています。

    選択したデータベース・プロバイダーが要求するすべてのプロパティーを指定します。 プロパティーと値のリストを指定するには、各フラグの後の項目をコンマで区切ります。 例えば、-n databaseName,databaseType -v EmployeeDB,DB2 のようにします。 mqsicreateconfigurableservice コマンドですべてのプロパティーを指定したわけではない場合、後から mqsichangeproperties コマンドでそれらを更新することができます。

  6. JDBCProvider サービスをセットアップまたは変更したら、JDBCProvider サービスを現在使用している実行グループ、または使用する予定の実行グループを、再ロードする必要があります。
次に行う事柄: 必要に応じて、JDBC 接続のセキュリティーをセットアップするか、グローバル整合トランザクションで JDBCProvider サービスを含めるように環境をセットアップするか、またはその両方を実行します。
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:47:17


タスク・トピックタスク・トピック | バージョン 8.0.0.5 | ah61310_