Welcome 微信登录

首页 / 数据库 / MySQL / JDBC 连接 Oracle 11gR2 集群环境

使用Oracle 11gR2新组件 scan 方式连接(假设scan_vip为192.168.100.217)
String url = "jdbc:oracle:thin:@192.168.100.217:1521/prod"
也可以使用 11gr2以前vip方式连接
String url = "jdbc:oracle:thin:@(DESCRIPTION ="
              + "(ADDRESS_LIST ="
              + "(ADDRESS=(PROTOCOL=TCP)(HOST=el1)(PORT=1521))"
              + "(ADDRESS=(PROTOCOL=TCP)(HOST=el2)(PORT=1521))"
              + "(LOAD_BALANCE = yes)"
              + ")" + "(CONNECT_DATA=" + "(SERVER=DEDICATED)"
              + "(SERVICE_NAME=prod )" + ")" + ")";注:jdbc thin使用 11gr2以前 vip方式连接, host中不可以直接使用 ip,否则会出现NL Exception was generated 错误。需要使用别名。并且在 hosts文件中定义。例如本例中两台机器的 vip为 192.168.100.123和 192.168.100.124并且,别名为 el1, el2。那么在 hosts文件中需要有下面两行
192.168.100.123 el1
192.168.100.124 el2host文件位置:
Linux|Unix:/etc/hosts
Windows:$系统盘WINDOWSsystem32driversetchosts下面是一个完整的实例:
  1. package jdbc.dex.com; 
  2.  
  3. import java.sql.Connection; 
  4. import java.sql.DriverManager; 
  5. import java.sql.ResultSet; 
  6. import java.sql.SQLException; 
  7. import java.sql.Statement; 
  8.  
  9. import org.junit.Test; 
  10.  
  11. public class JDBC1 { 
  12.      
  13.     public static void main(String[] args){ 
  14.         String urlVip = "jdbc:oracle:thin:@(DESCRIPTION ="   
  15.                 + "(ADDRESS_LIST ="   
  16.                 + "(ADDRESS=(PROTOCOL=TCP)(HOST=el1)(PORT=1521))"   
  17.                 + "(ADDRESS=(PROTOCOL=TCP)(HOST=el2)(PORT=1521))"   
  18.                 + "(LOAD_BALANCE = yes)" 
  19.                 + ")" + "(CONNECT_DATA=" + "(SERVER=DEDICATED)"   
  20.                 + "(SERVICE_NAME=prod )" + ")" + ")";   
  21.          
  22.         String urlScan1="jdbc:oracle:thin:@(DESCRIPTION ="+ 
  23.                     "(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.100.217)(PORT = 1521))"+ 
  24.                     "(CONNECT_DATA ="+ 
  25.                       "(SERVER = DEDICATED)"+ 
  26.                       "(SERVICE_NAME = prod)"+ 
  27.                     ")"+ 
  28.                   ")"; 
  29.          
  30.         String urlScan2="jdbc:oracle:thin:@192.168.100.217:1521/prod" ; 
  31.         String driver="oracle.jdbc.driver.OracleDriver" ; 
  32.         Connection con ; 
  33.         Statement st ; 
  34.         ResultSet rs ; 
  35.         try { 
  36.             Class.forName(driver) ; 
  37.             con = DriverManager.getConnection(urlVip,"dexter","xiaojun"); 
  38.             st=con.createStatement() ; 
  39.             rs=st.executeQuery("select 2 from dual ") ; 
  40.             while(rs.next()) { 
  41.                 System.out.println(rs.getString(1)); 
  42.             } 
  43.         } catch (ClassNotFoundException e) { 
  44.             // TODO Auto-generated catch block  
  45.             e.printStackTrace(); 
  46.         } catch (SQLException e) { 
  47.             // TODO Auto-generated catch block  
  48.             e.printStackTrace(); 
  49.         } 
  50.          
  51.     } 
Oracle 中关于超过253列内部数据的存储Services in Oracle Database 10g相关资讯      Oracle 11g  Oracle 11gR2 
  • CentOS 7上安装Oracle 11gR2 全程  (07月25日)
  • RHEL 6.5 安装Oracle 11gR2  (06月11日)
  • Oracle 11gR2中的自动并行度  (04月18日)
  • CentOS 无图形化安装Oracle 11gr2  (07月07日)
  • CentOS7安装Oracle 11gR2 图文详解  (04月23日)
  • CentOS6.5下设置Oracle 11gR2 开机  (12/19/2015 11:10:33)
本文评论 查看全部评论 (0)
表情: 姓名: 字数