本文是一篇學習筆記,學習如何通過java jdbc /ojdbc 連接配接oracle的幾種方式。
一 使用方法
方法一:使用service_name 連接配接oracle
jdbc:oracle:thin:@//:/
例如: jdbc:oracle:thin:@//10.10.10.1:1521/TDB
注意這裡的格式,@後面有//, 這是與使用SID的主要差別。
對于叢集來說,每個節點的SID 是不一樣的,但是SERVICE_NAME 确可以包含所有節點。
方法二: 使用SID 連接配接oracle
jdbc:oracle:thin:@::
Example: jdbc:oracle:thin:@10.10.10.1:1521:testdb1
注意 該方法已經不做推薦,oracle 官方推薦使用service_name
方法三:使用tnsname 連接配接oracle
jdbc:oracle:thin:@
Example: jdbc:oracle:thin:@TESTDB
二 源代碼
附錄:
[qilong.yangql@rac1 oracle]$ more tnsnames.ora
testdb=
(DESCRIPTION =
(FAILOVER = ON)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.1)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.2)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.3)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.4)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.5)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.6)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = tdb)
)
注意 本文裡面 service_name tdb 和tnsname (testdb) 故意設定的不一樣.
三 參考:
http://razorsql.com/docs/help_oracle.html