[英]How to use different Service name in the Oracle JDBC long TNSNAME style URL with multiple servers
當我嘗試使用JDBC長TNSNAME樣式URL連接數據庫服務器時遇到問題。 我們有兩個Oracle集群服務器。 這是我的TNSNAME樣式網址。
jdbc:oracle:thin:@(DESCRIPTION=
(LOAD_BALANCE=ON)(FAILOVER=ON)(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1250))
(ADDRESS=(PROTOCOL=TCP)(HOST=host2)(PORT=1250))
)
(CONNECT_DATA=
(SERVICE_NAME= DEV1)
)
)
我的問題是,當我們的DBA創建數據庫時,他為host1和host2使用了不同的服務名稱。 host1是DEV1,host2是DEV2_B,如果切換主機序列,它似乎無法工作。 喜歡
jdbc:oracle:thin:@(DESCRIPTION=
(LOAD_BALANCE=ON)(FAILOVER=ON)(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=host2)(PORT=1250)) /*host2 now come first, it would be cause connect failure.*/
(ADDRESS=(PROTOCOL=TCP)(HOST=host1)(PORT=1250))
)
(CONNECT_DATA=
(SERVICE_NAME= DEV1)
)
)
我認為在這種情況下,故障轉移和負載平衡是沒有用的。 我的問題是,如何在我的URL中分別設置service_name? (這兩個數據庫也使用不同的SID。DEVA和DEVB)請幫助,謝謝。
(DESCRIPTION_LIST=
(FAILOVER=true)
(LOAD_BALANCE=false)
(DESCRIPTION=
(ADDRESS= (PROTOCOL=TCP) (HOST=TEST_DB) (PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME=saibal)))
(DESCRIPTION=
(ADDRESS= (PROTOCOL=TCP) (HOST=MY_DB) (PORT=1521))
(CONNECT_DATA=
(SERVICE_NAME= test_saibal))
)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.