JDBC连接Oracle RAC
生活随笔
收集整理的這篇文章主要介紹了
JDBC连接Oracle RAC
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1)JDBC連接的配置方式
,既然數據庫本身已經支持了RAC,那么只要在JDBC連接字符串中將RAC的配置加上去即可, 根據資料和目前的業務需求,我們的針對HOST=10.87.25.37這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
??
? ?URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.37)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.38)(PORT=1521))
? ?(HOST=10.87.25.39)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
??
? ?這個連接配置表示只支持failover,不支持loadbalance.根據藍色字符串可以表示.即按照順序,使用該JDBC字符串獲取的連接,將根據配置的主機的先后順序,依次進行failover
? ?即如果在10.87.25.37數據庫實例不能被訪問,那么就轉到10.87.25.38執行,如果10.87.25.38也數據庫實例不能被訪問,那么就轉到10.87.25.39執行
同理
對于HOST=10.87.25.38這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.38)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.39)(PORT=1521))
? ?(HOST=10.87.25.37)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
對于HOST=10.87.25.39這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.39)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.37)(PORT=1521))
? ?(HOST=10.87.25.38)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
即只是各個Host的順序不同
2)本地服務名連接的配置方式
對于HOST=10.87.25.37這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? ?(LOAD_BALANCE = off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME = bidwb))
?)
?
對于HOST=10.87.25.38這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? ?(LOAD_BALANCE =off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME = bidwb))
?)
?
對于HOST=10.87.25.39這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? (LOAD_BALANCE = off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME =bidwb))
?)
,既然數據庫本身已經支持了RAC,那么只要在JDBC連接字符串中將RAC的配置加上去即可, 根據資料和目前的業務需求,我們的針對HOST=10.87.25.37這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
??
? ?URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.37)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.38)(PORT=1521))
? ?(HOST=10.87.25.39)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
??
? ?這個連接配置表示只支持failover,不支持loadbalance.根據藍色字符串可以表示.即按照順序,使用該JDBC字符串獲取的連接,將根據配置的主機的先后順序,依次進行failover
? ?即如果在10.87.25.37數據庫實例不能被訪問,那么就轉到10.87.25.38執行,如果10.87.25.38也數據庫實例不能被訪問,那么就轉到10.87.25.39執行
同理
對于HOST=10.87.25.38這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.38)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.39)(PORT=1521))
? ?(HOST=10.87.25.37)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
對于HOST=10.87.25.39這臺主機的數據庫實例的JDBC連接字符串應該這樣配置
URL="jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.39)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)
? ?(HOST=10.87.25.37)(PORT=1521))
? ?(HOST=10.87.25.38)(PORT=1521))
(FAILOVER=on)(LOAD_BALANCE=off))
? ?(CONNECT_DATA= (SERVICE_NAME=bidwb)))"
即只是各個Host的順序不同
2)本地服務名連接的配置方式
對于HOST=10.87.25.37這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? ?(LOAD_BALANCE = off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME = bidwb))
?)
?
對于HOST=10.87.25.38這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? ?(LOAD_BALANCE =off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME = bidwb))
?)
?
對于HOST=10.87.25.39這臺主機的數據庫實例的本地服務名應該這樣配置
?37bidwb =
?(DESCRIPTION =?
? ? (ADDRESS_LIST=?
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.39)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.37)(PORT = 1521))
? ? ?(ADDRESS= (PROTOCOL = TCP)(HOST = 10.87.25.38)(PORT = 1521))
? ? ?(FAILOVER = on)
? ? (LOAD_BALANCE = off)
? ? ) ??
? ? (CONNECT_DATA= (SERVICE_NAME =bidwb))
?)
總結
以上是生活随笔為你收集整理的JDBC连接Oracle RAC的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle RAC 客户端连接负载均衡
- 下一篇: 独立主机如何,不要被人忽悠了