64 ビット・キュー・マネージャーを使用した Oracle とのグローバル整合の構成

ブローカー環境を構成して、64 ビット・キュー・マネージャーの制御の下に、メッセージ・フロー・トランザクションを Oracle データベースの更新情報とグローバルに整合させます。

始める前に:

64 ビット・プラットフォーム上のすべての WebSphere® MQ バージョン 6 キュー・マネージャーは、64 ビット・モードで稼働します。64 ビットのキュー・マネージャーは、64 ビット・モードでのみトランザクションを調整できます。 ブローカーが 64 ビットのキュー・マネージャーを使用している場合、 64 ビットまたは 32 ビットのいずれの実行グループにデプロイされたメッセージ・フローもグローバルに調整できますが、 32 ビットの実行グループを使用している場合は、ユーザー・データベースのデータ・ソース名を odbc.iniodbc64.ini の両方に定義する必要があります。 ブローカーが 64 ビットのキュー・マネージャーを使用しているか、または 64 ビットの実行グループを持っている場合、ブローカーの接続先のデータベースも 64 ビット・モードでなければなりません。

トランザクション・マネージャーとして 64 ビット・キュー・マネージャーを使用するグローバル整合のためにブローカー環境を構成するには、以下のようにします。

  1. Linux platformUNIX platform Linux®(x86) および UNIX® の場合のみ、以下のシンボリック・リンクを作成し、WebSphere Message Broker で提供される ODBC データベース・ドライバーおよびスイッチ・ファイルの場所を指定します。
    AIX platform AIX® の場合:
    ln -s install_dir/merant/lib/libUKicu20.a /var/mqm/exits/libUKicu20.a
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s Oracle_install_dir/lib32/libclntsh.a /var/mqm/exits/libclntsh.a
    ln -s install_dir/DD64/lib/libUKicu20.a /var/mqm/exits64/libUKicu20.a
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKor8dtc20.so
    ln -s install_dir/DD64/lib/UKora20.so /var/mqm/exits64/UKora20.so
    HP-UX platform HP-UX (PA-RISC) の場合:
    ln -s install_dir/merant/lib/libUKicu20.sl /var/mqm/exits/libUKicu20.sl
    ln -s install_dir/merant/lib/UKor8dtc20.sl /var/mqm/exits/UKor8dtc20.sl
    ln -s Oracle_install_dir/lib32/libclntsh.sl /var/mqm/exits/libclntsh.sl
    ln -s install_dir/DD64/lib/libUKicu20.sl /var/mqm/exits64/libUKicu20.sl
    ln -s install_dir/DD64/lib/UKoradtc20.sl /var/mqm/exits64/UKor8dtc20.sl
    ln -s install_dir/DD64/lib/UKora20.sl /var/mqm/exits64/UKora20.sl
    HP-UX platform HP-UX (Itanium) の場合:
    ln -s install_dir/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKor8dtc20.so
    ln -s install_dir/DD64/lib/UKora20.so /var/mqm/exits64/UKora20.so
    Linux platform Linux(x86) の場合:
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s Oracle_install_dir/lib32/libclntsh.so /var/mqm/exits/libclntsh.so
    Solaris platform Solaris (SPARC) の場合:
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKor8dtc20.so /var/mqm/exits/UKor8dtc20.so
    ln -s Oracle_install_dir/lib32/libclntsh.so /var/mqm/exits/libclntsh.so
    ln -s install_dir/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKor8dtc20.so
    ln -s install_dir/DD64/lib/UKora20.so /var/mqm/exits64/UKora20.so
    Solaris platform Solaris (x86-64) の場合:
    ln -s install_dir/merant/lib/libUKicu20.so /var/mqm/exits/libUKicu20.so
    ln -s install_dir/merant/lib/UKoradtc20.so /var/mqm/exits/UKoradtc20.so
    ln -s install_dir/merant/lib/UKora20.so /var/mqm/exits/UKora20.so
    ln -s install_dir/DD64/lib/libUKicu20.so /var/mqm/exits64/libUKicu20.so
    ln -s install_dir/DD64/lib/UKoradtc20.so /var/mqm/exits64/UKoradtc20.so
    ln -s install_dir/DD64/lib/UKora20.so /var/mqm/exits64/UKora20.so
    ここで、
    • install_dir は、WebSphere Message Broker がインストールされている場所です。
    • Oracle_install_dir は、Oracle がインストールされている場所です。これは、$ORACLE_HOME と同じ値です。
  2. XA リソース・マネージャーの情報を使って、 キュー・マネージャーがグローバルに調整するトランザクションに参加するデータベースごとに、ブローカーのキュー・マネージャーを構成します。 メッセージ・フローがメッセージ・ディクショナリーを参照するか、Publication ノードを組み込んでいる場合には、 同じ方法を使用して、ブローカー・データベースとユーザー・データベースに対して XA リソース・マネージャー情報を定義する必要があります。

    Linux platformUNIX platform Linux(x86) および UNIX の場合:

    1. テキスト・エディターでキュー・マネージャーの qm.ini ファイルを開きます。 qm.ini ファイルは、/var/mqm/qmgrs/queue_manager_name/qm.ini にあります。 queue_manager_name は、キュー・マネージャーに関連付けられているブローカーの名前です。
    2. qm.ini ファイルの末尾に、次のスタンザを貼り付けます。
      XAResourceManager:
      Name=OracleXA
      SwitchFile=SwitchFileName
      XAOpenString=ORACLE_XA
         +SQLNET=MyServerName
         +HostName=MyHostName
         +PortNumber=MyPortNumber
         +Sid=MySID
         +ACC=P/MyUserId/MyPassword
         +sestm=100+threads=TRUE
         +DataSource=MyDataSourceName
         +DB=MyDataSourceName+K=2+
      XACloseString=
      ThreadOfControl=THREAD
    3. スタンザの SwitchFile 行で、SwitchFileName を、ご使用のオペレーティング・システムに合ったスイッチ・ファイルの名前に置き換えます。 以下の表は、オペレーティング・システムごとのスイッチ・ファイルの名前を示しています。
      オペレーティング・システム スイッチ・ファイル
      HP-UX (PA-RISC) UKor8dtc20.sl
      他のすべてのプラットフォーム UKoradtc20.so

      スイッチ・ファイルは、WebSphere Message Broker によって提供されます。

    4. XAOpenString 行で、以下の値を、ご使用の構成に適した値に置き換えます。
      • MyServerName は Oracle サーバーの名前です。
      • MyHostName は、Oracle データベースのホストとなる TCP/IP ホストの名前です。
      • MyPortNumber は、Oracle データベースが listen する TCP/IP ポートです。
      • MySID は、データベースの Oracle システム ID (SID) です。
      • MyUserId は、ブローカーがデータベースに接続する際に使用するユーザー名でなければなりません。 ブローカーが使用するユーザー名は、いくつかの方法で定義できます。 ブローカーを作成するときに -u パラメーターを mqsicreatebroker コマンドで使用する場合、mqsisetdbparms コマンドを使用して特定のユーザー名とパスワードを特定のデータ・ソース名 (DSN) に関連付けていなければ、このユーザー名がデータベースに接続するために使用されます。 mqsicreatebroker コマンドの -u パラメーターも mqsisetdbparms コマンドも使用していない場合、 使用される名前は mqsicreatebroker コマンドの -i パラメーターで定義するブローカーのサービス・ユーザー名です。
      • MyPassword は、ユーザー名に関連したパスワードです。
      • MyDataSourceName は、データベースの ODBC データ・ソース名です。
    5. スタンザ内の他のすべての行においてデフォルト値を受け入れます。 例えば、AIX では以下のようにします。
      XAResourceManager:
      Name=OracleXA
      SwitchFile=UKor8dtc20.so
      XAOpenString=ORACLE_XA+SQLNET=diaz
         +HostName=diaz.hursley.ibm.com
         +PortNumber=1521
         +Sid=diaz
         +ACC=P/wbrkuid/wbrkpw
         +sestm=100+threads=TRUE
         +DataSource=MYDB+DB=MYDB+K=2+
      XACloseString=
      ThreadOfControl=THREAD
  3. キュー・マネージャーの実行中には qm.ini は読み取り専用であるため、変更を適用するには、キュー・マネージャーを停止してから再始動します。
    キュー・マネージャーを停止して再始動するには、次のコマンドを入力します。ここで、queue_manager_name はキュー・マネージャーの名前です。
    endmqm queue_manager_name
    strmqm queue_manager_name

    キュー・マネージャーが再始動したら、キュー・マネージャーのログで再始動に関連する警告がないかどうかを確認します。 このログ・ファイルは /var/mqm/qmgrs/queue_manager_name/errors にあります。 ここで、queue_manager_name は再始動したキュー・マネージャーの名前です。

    キュー・マネージャーが正しく再始動すると、qm.ini に加えた変更が適用されます。
これで Oracle が、64 ビット・キュー・マネージャーがトランザクションを整合させるグローバル整合のために構成されました。
次に、グローバルに整合されたメッセージ・フローをブローカーにデプロイできます。
関連タスク
グローバルに整合されたメッセージ・フローの構成
トランザクションのグローバル整合の構成 (2 フェーズ・コミット)
関連資料
サポートされるデータベース
mqsicreatebroker コマンド
mqsisetdbparms コマンド
関連情報
WebSphere MQ バージョン 6 インフォメーション・センター・オンライン
WebSphere MQ ライブラリー Web ページ
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
最終更新 : 2009-02-20 12:42:38

ac00915_