18.3.3 データベースの設定
ここでは,DABroker Libraryを使用してデータベースに接続する場合に必要な設定について説明します。
DABroker Libraryを使用する場合に接続できるデータベースと,必要な設定についての参照先を次に示します。
使用できるデータベース |
必要な設定についての参照先 |
---|---|
HiRDB |
|
Oracle |
|
XDM/RD E2 |
- 〈この項の構成〉
(1) HiRDBの設定
DABroker Libraryを使用してHiRDBに接続する場合の設定について説明します。なお,データベースとしてHiRDBを使用する場合は,HiRDBをインストールして初期設定を済ませておいてください。詳細については,マニュアル「HiRDB システム導入・設計ガイド」を参照してください。
ここでは,DABroker Libraryを使用して,HiRDBでJ2EEリソースを扱う場合に必要な次の設定について説明します。
-
環境変数の設定
-
環境変数のグループ登録
-
タイムアウトの設定
なお,同一の環境変数を環境変数グループと環境変数の両方に設定した場合は,環境変数グループで設定した環境変数が優先されます。
(a) 環境変数の設定
次の環境変数を設定する必要があります。環境変数の詳細については,マニュアル「HiRDB UAP開発ガイド」を参照してください。
- PATH(Windowsの場合)
-
HiRDBのクライアントライブラリとして,次の値を指定します。通常,HiRDBのインストーラによってシステム環境変数に設定されます。
<HiRDBのホームディレクトリ>\client\lib
- LIBPATH(AIXの場合)
-
HiRDBのクライアントライブラリとして,次の値を指定します。
<HiRDBのホームディレクトリ>/client/lib
- LD_LIBRARY_PATH(Linuxの場合)
-
HiRDBのクライアントライブラリとして,次の値を指定します。
<HiRDBのホームディレクトリ>/client/lib
- PDXAMODE※1
-
「1」を指定します。
- PDTXACANUM※1
-
(HiRDBにアクセスするJ2EEコンポーネントの同時実行数+1)×(J2EEコンポーネントでアクセスする可能性があるHiRDB数)を指定します。
- PDHOST※2
-
データベースのホスト名またはIPアドレスを指定します。
- PDUSER※2
-
データベースのユーザ名およびデータベースのパスワードを指定します。
- PDNAMEPORT※2
-
データベースのポート番号を指定します。
- PDSWAITTIME※2
-
リクエスト間隔タイムアウトを指定します。
- PDCWAITTIME※2
-
レスポンスタイムアウトを指定します。
- PDSWATCHTIME※2
-
「0」を指定します。コネクションプーリング機能を使用する場合は,「0」を指定してください。
- 注※1
-
グローバルトランザクションを使用する場合に設定します。この環境変数は,HiRDBのクライアント環境変数グループには登録できません。
- 注※2
-
これらの環境変数は,HiRDBのクライアント環境変数グループとして登録することもできます。登録方法については,「18.3.3(1)(b) 環境変数のグループ登録」で説明します。
(b) 環境変数のグループ登録
環境変数のグループは,次の方法で登録します。
-
Windowsの場合
HiRDBのクライアント環境変数登録ツールで「システムグループ」を選択して,環境変数のグループを登録します。この場合,DB Connectorのプロパティ定義では,ここで登録したグループ名を指定してください。
-
UNIXの場合
HiRDBのクライアント環境変数グループの設定ファイルに登録します。この場合,DB Connectorのプロパティ定義では,ここで登録した環境変数グループの設定ファイルのパスを指定してください。
なお,環境変数のグループ登録の詳細については,マニュアル「HiRDB UAP開発ガイド」を参照してください。
(c) タイムアウトの設定
HiRDBのタイムアウトは,次に示すHiRDBのクライアント環境変数に設定します。
-
PDSWAITTIME
-
PDCWAITTIME
-
PDCONNECTWAITTIME
-
PDNBLOCKWAITTIME
HiRDBのクライアント環境変数の設定については,「18.3.3(1)(a) 環境変数の設定」を参照してください。
タイムアウトの設定については,マニュアル「アプリケーションサーバ システム設計ガイド」の「8.6.6 データベースでのタイムアウトを設定する」,マニュアル「HiRDB システム定義」,およびマニュアル「HiRDB UAP開発ガイド」を参照してください。
(2) Oracleの設定
DABroker Libraryを使用してOracleに接続する場合の設定について説明します。なお,データベースとしてOracleを使用する場合は,Oracleをインストールして初期設定を済ませておいてください。詳細については,Oracleのマニュアルを参照してください。
- 注意事項
-
Oracle9i以降はOracle8iの機能範囲内でサポートしています。Oracle9i以降でサポートされた新たな固有の機能は使用できません。
ここでは,DABroker Libraryを使用して,OracleでJ2EEリソースを扱う場合に必要な次の設定について説明します。
-
環境変数の設定
-
トランザクションリカバリを行うための権限の設定
-
タイムアウトの設定
(a) 環境変数の設定
次の環境変数を設定する必要があります。
- PATH(Windowsの場合)
-
Oracleのクライアントライブラリとして,次の値を指定します。通常,Oracleのインストーラによってシステム環境変数に設定されます。
<Oracleのホームディレクトリ>\bin
- LIBPATH(AIXの場合)
-
Oracleのクライアントライブラリとして,次の値を指定します。
<Oracleのホームディレクトリ>/lib32
- LD_LIBRARY_PATH(Linuxの場合)
-
Oracleのクライアントライブラリとして,次の値を指定します。
<Oracleのホームディレクトリ>/lib32
- NLS_LANG(UNIXの場合)
-
Oracleのクライアントで使用する言語を設定します。
- 設定値の例
japanese_japan.ja16sjis Japanese_Japan.UTF8
(b) トランザクションリカバリを行うための権限の設定
Oracleへの接続でグローバルトランザクションを使用する場合には,Oracleの接続ユーザにトランザクションリカバリを行うための権限を付与する必要があります。
- 付与する権限
-
-
SYS.DBA_PENDING_TRANSACTIONSのSELECT権限
-
FORCE ANY TRANSACTION権限
-
- 権限の付与の方法
-
次のどちらかの方法で権限を付与します。
-
Oracle Enterprise Managerコンソールを使用する
-
sqlplusを使用する
-
次に,Oracle 9.2.0で権限を付与する場合の例を示します。なお,権限を付与する方法の詳細については,Oracleのマニュアルを参照してください。
-
Oracle Enterprise Managerコンソールを使用する場合の例
Oracle Enterprise Managerコンソールを使用して権限を付与する場合の手順を次に示します。
-
sysユーザでデータベースに接続します。
-
[セキュリティ]−[ユーザー]−[<権限を付与するユーザ名>]−[オブジェクト権限]を開きます。
-
[SYS]−[ビュー]−[DBA_PENDING_TRANSACTIONS]を選択して,SELECT権限を付与します。
-
-
sqlplusを使用する場合の例
sqlplusを使用して権限を付与する場合の手順を次に示します。
-
sysユーザでデータベースに接続します。
-
次のSQL文を発行します。
grant select on DBA_PENDING_TRANSACTIONS to <権限を付与するユーザ名>;
commit;
-
(c) タイムアウトの設定
必要に応じて,Oracleのタイムアウトを設定してください。タイムアウトは,Oracleのサーバ定義のDISTRIBUTED_LOCK_TIMEOUTパラメタに設定します。
なお,このほか,XAOpenStringのSesTmパラメタの設定がタイムアウトに影響します。このパラメタは,チューニングできません。
詳細については,マニュアル「アプリケーションサーバ システム設計ガイド」の「8.6 タイムアウトを設定する」またはマニュアル「アプリケーションサーバ システム設計ガイド」の「9.3 タイムアウトを設定する」,およびOracleのマニュアルを参照してください。
(d) 動的パフォーマンスビューの参照権の設定
Oracleに接続するユーザは,動的パフォーマンスビューの参照権を持っている必要があります。次のどちらかの方法でOracleに接続するユーザに動的パフォーマンスビューの参照権を設定してください。
-
「GRANT SELECT_CATALOG_ROLE TO <ユーザ名>;」を実行する。
-
「GRANT SELECT ON V_$INSTANCE TO <ユーザ名>;」,「GRANT SELECT ON V_$PROCESS TO <ユーザ名>;」,および「GRANT SELECT ON V_$SESSION TO <ユーザ名>;」を実行する。
(e) OS認証を使用する場合の設定(Windowsの場合)
DABroker Libraryのサービスは,Windowsのローカルシステムアカウントを使用しています。そのため,OS認証をするユーザがWindowsのローカルシステムアカウントでない場合は,DABroker Libraryのサービスアカウントを使用するOS認証に変更してください。なお,OS認証を使用できるのは,Javaを使用してデータベースアクセスする場合だけです。
(3) XDM/RD E2の設定
DABroker Libraryを使用してXDM/RD E2に接続する場合の設定は,HiRDB Type4 JDBC Driverを使用して接続する場合の設定と同じです。HiRDB Type4 JDBC Driverを使用してXDM/RD E2に接続する場合の設定については,マニュアル「アプリケーションサーバ システム構築・運用ガイド」の「付録K XDM/RD E2の設定」を参照してください。