OracleRACを利用する場合のJDBCドライバの設定


OracleRACを利用する場合のJDBCドライバの設定は通常の記述の仕方と若干異なってきます。

以下の構成を例に説明していきます。

Server_Name ORACLE_SID ORACLE_Service_Name
----------- ---------- -------------------
Server_A db_name_A db_name
Server_B db_name_B db_name


この時に、APサーバーのJDBCデータソースに設定するURLは、
以下のようになります。
※実際には1行で記述します。

jdbc:oracle:thin:@(
DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=Server_A)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=Server_B)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=db_name))
)

また、それぞれのJDBCデータソースで、下記のように、サーバー毎にサーバー情報の順番を変えるようにします。

AP_Server_1 :

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Server_A)...

AP_Server_2 :

jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Server_B)...

このような記述にする理由は前に書いてあるサーバーに接続しにいくので、記述を同じにしてしまうと、片方のDBサーバーに接続が偏ってしまうためらしいです。