jdbc对oracle RAC方式的支持

原创 2007年09月29日 12:01:00
 
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))
 )
 
配置方式与JDBC连接字符串大同小异
配置也表示只支持failover,不支持loadbalance.根据蓝色字符串可以表示.即按照顺序,使用该JDBC字符串获取的连接,将根据配置的主机的先后顺序,依次进行failover.
 
测试方式也应该分为两种,一种是测试JDBC连接字符串,一种是测试本地服务名.
测试JDBC连接字符串可以通过存储过程任务来执行,这也是我们最初的测试目标.
我们可以通过关闭数据库监听的方式,看是否能够自动地failover.,例如一个存储过程本来是
在37 Oracle上执行,现在关闭37 Oracle的监听,测试该存储过程仍否能够正常执行.
一种是测试本地连接字符串,这种应该没问题,因为是oracle本身的客户端来支持,可以通过
OCI抽取或Oracle装载来测试,测试方式与上类似
 
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

解决jdbc连接oracle rac报错一例: Got minus one from a read call

某个项目之前是oracle 11g单机环境,现在升级成了oracle 11g rac环境。某个应用程序需要通过调用JDBC连接ORACLE数据库,从ORACLE数据库中查询部分数据,而数据库升级为RA...

Oracle集群(RAC)及 jdbc 连接双机数据库

还是因为工作经验太浅,虽然工作中每天都要用到ORACLE,不过集群还是第一次接触(包括11G也是第一次用),10G和11G在使用方面没有什么太大区别,主要还是记录下这次集群的测试和使用JDBC链接OR...

连接oracle的rac方式

1、oracle连接oracle的rac的时候连接方式 RAC = (DESCRIPTION =     (ADDRESS = (PROTOCOL = TCP)(HOST = rac-c...

Oracle 10g RAC裸设备管理方式切换

由于先前这套测试环境的使用绑定方式是直接使用设备符号来映射的,这样存在一个问题,由于空间不足增加了硬盘,结果新增加的硬盘占用了原来的ocr的/dev/sdb,这样就会导致整个数据库无法启动和使用。 ...

jdbc连接oracle三种方式

  • 2013-04-17 15:12
  • 80KB
  • 下载

使用java JDBC方式操作oracle blob类型数据

/**      *      * @param query    表示sql语句      * @param idForQuery 标识主键    ...

Oracle开发jdbc thin与 oci 连接方式的字符集设置

jdbc thin: thin是一种瘦客户端的连接方式,即采用这种连接方式不需要安装oracle客户端,只要求classpath中包含jdbc驱动的jar包就行。thin就是纯粹用Java写的ORAC...

oracle的jdbc连接方式:oci和thin

oci和thin是Oracle提供的两套Java访问Oracle数据库方式。 thin是一种瘦客户端的连接方式,即采用这种连接方式不需要安装oracle客户端,只要求classpath中包含jdbc...

oracle的jdbc连接方式:oci和thin

oracle的jdbc连接方式:oci和thin     oci和thin是Oracle提供的两套Java访问Oracle数据库方式。     thin是一种瘦客户端的连接方式,即采用这种连接...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)