スケーラブルデータベースサーバ HiRDB Version 8 システム導入・設計ガイド(UNIX(R)用)
HiRDBをリソースマネジャとしてトランザクションマネジャに登録する方法については,トランザクションマネジャのマニュアルを参照してください。このとき,次に示す情報をトランザクションマネジャに指定します。
なお,WebLogic Serverの場合は(6)以降の操作を実施してください。
動的登録にするか又は静的登録にするかは,RMスイッチ名の指定で決まります。HiRDBのRMスイッチ名(xa_switch_t 構造体名)を次に示します。
RMスイッチ(xa_switch_t 構造体)で定義されているRM名(リソースマネジャ名)は,HiRDB_DB_SERVERです。
トランザクションマネジャがxa_openでリソースマネジャをオープンするときに使用するオープン文字列は,複数接続機能を使用する場合に指定してください。複数接続機能を使用しない場合はオープン文字列を指定する必要はありません。ただし,トランザクションマネジャがTP1/EEの場合は,複数接続機能を使用しないときでも,登録している一つのHiRDBに対してオープン文字列を指定してください。トランザクションマネジャがTUXEDO又はWebLogic Serverの場合は,複数接続機能を使用できません。
複数接続機能を使用する場合は,トランザクションマネジャに複数のHiRDBを登録し,各HiRDBに対してオープン文字列を指定します。オープン文字列には次に示す項目を指定します。
次のどちらかの書式で記述します。
これ以外の形式で指定した場合は,オープン文字列が無視されます。また,環境変数グループ識別子は4バイト固定,オープン文字列は全体で257バイト以上にできません。
トランザクションマネジャがOpenTP1,TPBroker for C++,又はTP1/EEの場合のオープン文字列の登録例を次に示します。
OpenTP1のトランザクションサービス定義のtrnstringオペランドでオープン文字列を登録します。ここでは二つのHiRDBをOpenTP1に登録します。登録条件は次のとおりとします。
リソースマネジャ | 環境変数グループ識別子 | 環境変数設定ファイル名 |
---|---|---|
HiRDB1 | HDB1 | /usr/conf/HiRDB/HiRDB11.ini /usr/conf/HiRDB/HiRDB12.ini |
HiRDB2 | HDB2 | /usr/conf/HiRDB/HiRDB21.ini /usr/conf/HiRDB/HiRDB22.ini |
オープン文字列の登録例を次に示します。
trnstring -n HiRDB_DB_SERVER -i H1 -o "HDB1*/usr/conf/HiRDB/HiRDB11.ini" -O "HDB1+/usr/conf/HiRDB/HiRDB12.ini" trnstring -n HiRDB_DB_SERVER -i H2 -o "HDB2*/usr/conf/HiRDB/HiRDB21.ini" -O "HDB2+/usr/conf/HiRDB/HiRDB22.ini" |
trnrmid -n HiRDB_DB_SERVER -i H1,H2 |
TPBroker for C++のリソースマネジャ定義のxa_open_string_infoオペランドでオープン文字列を登録します。ここでは二つのHiRDBをTPBroker for C++に登録します。登録条件は次のとおりとします。
リソースマネジャ | 環境変数グループ識別子 | 環境変数設定ファイル名 |
---|---|---|
HiRDB1 | HDB1 | /usr/conf/HiRDB/HiRDB11.ini /usr/conf/HiRDB/HiRDB12.ini |
HiRDB2 | HDB2 | /usr/conf/HiRDB/HiRDB21.ini /usr/conf/HiRDB/HiRDB22.ini |
オープン文字列の登録例を次に示します。
tsdefvalue /OTS/RM/HiRDB_DB_SERVER_1/DMN/xa_open_string_info 1 -s "HDB1*/usr/conf/HiRDB/HiRDB11.ini" tsdefvalue /OTS/RM/HiRDB_DB_SERVER_1/xa_open_string_info 2 -s "HDB1+/usr/conf/HiRDB/HiRDB12.ini" tsdefvalue /OTS/RM/HiRDB_DB_SERVER_2/DMN/xa_open_string_info 1 -s "HDB2*/usr/conf/HiRDB/HiRDB21.ini" tsdefvalue /OTS/RM/HiRDB_DB_SERVER_2/xa_open_string_info 2 -s "HDB2+/usr/conf/HiRDB/HiRDB22.ini" |
TP1/EEのトランザクション関連定義のtrnstringオペランドでオープン文字列を登録します。ここでは二つのHiRDBをTP1/EEに登録します。登録条件は次のとおりとします。
リソースマネジャ | 環境変数グループ識別子 | 環境変数設定ファイル名 |
---|---|---|
HiRDB1 | HDB1 | /usr/conf/HiRDB/HiRDB11.ini /usr/conf/HiRDB/HiRDB12.ini |
HiRDB2 | HDB2 | /usr/conf/HiRDB/HiRDB21.ini /usr/conf/HiRDB/HiRDB22.ini |
オープン文字列の登録例を次に示します。
trnstring -n HiRDB_DB_SERVER -i H1 -o "HDB1*/usr/conf/HiRDB/HiRDB11.ini" \ -O "HDB1+/usr/conf/HiRDB/HiRDB12.ini" trnstring -n HiRDB_DB_SERVER -i H2 -o "HDB2*/usr/conf/HiRDB/HiRDB21.ini" \ -O "HDB2+/usr/conf/HiRDB/HiRDB22.ini" |
トランザクションマネジャがxa_closeでリソースマネジャをクローズするときに使用するクローズ文字列は指定不要です。
RM関連オブジェクト名には,次の表に示すライブラリ名を指定します。なお,共用ライブラリのサフィックスはプラットフォームによって異なります。Solaris及びLinuxの場合は.soに,AIXの場合は.aになります。アーカイブライブラリ名は全プラットフォーム共通です。
表8-5 RM関連オブジェクト名に指定するライブラリ名
ライブラリの種類 | ライブラリ名 | |
---|---|---|
共用ライブラリ | シングルスレッド用 | libzclty.sl(libzcltx.sl) |
シングルスレッド用 (複数接続機能対応) |
libzcltys.sl※1(libzcltxs.sl) | |
マルチスレッド用 (複数接続機能対応)※2 |
libzcltyk.sl(libzcltxk.sl) | |
アーカイブライブラリ | シングルスレッド用 | libcltya.a(libcltxa.a) |
トランザクションマネジャにHiRDBのトランザクション処理を制御させるためには,HiRDBのクライアント環境定義をトランザクションマネジャの定義に設定する必要があります。OLTP環境下でのクライアント環境定義の設定方法については,マニュアル「HiRDB Version 8 UAP開発ガイド」を参照してください。
トランザクションマネジャがOpenTP1の場合,クライアント環境定義を次に示すOpenTP1のシステム定義に指定する必要があります。
これらの定義については,マニュアル「OpenTP1 システム定義」を参照してください。
なお,複数のOpenTP1と接続する場合は,次に示すクライアント環境定義を必ず指定してください。
クライアント環境定義はTPBroker for C++のシステム定義に指定してください。
TUXEDOコンフィギュレーション・ファイル(UBBCONFIGファイル)のENVFILEパラメタで指定したファイルに,クライアント環境定義を指定してください。TUXEDOコンフィギュレーション・ファイルについては,TUXEDOのマニュアルを参照してください。
WebLogic Serverプロセスの環境変数にクライアント環境定義を指定してください。
トランザクションマネジャがTP1/EEの場合,クライアント環境定義を,次に示すTP1/EEを実行する環境のOpenTP1のシステム定義に指定する必要があります。
これらの定義については,マニュアル「OpenTP1 システム定義」及び「分散トランザクション処理機能 TP1/Server Base Enterprise Option 使用の手引」を参照してください。
なお,複数のTP1/EEと接続する場合は,次に示すクライアント環境定義を必ず指定してください。
HiRDBを登録するときに指定するJDBCドライバのパッケージ名称とDriverクラス名称を次に示します。
All Rights Reserved. Copyright (C) 2006, 2016, Hitachi, Ltd.