由于项目中使用了oracle v-ip做了oracle数据库集群,现在需要把项目中程序进行升级。
原来的程序中直接使用的是JDBC然后配置的kettle.properties配置文件,如下图:
根据项目需要,查看了相关资料oracle官网说明如下:
大体意思就是:
·设置为native(JDBC)链接方式
·将hostname跟port设置为空(port或设置为-1)
·然后将database name设置为以下三种方式中的一种
(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = host1-vip)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = host2-vip)(PORT = 1521))(LOAD_BALANCE = yes)(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = db-service)(FAILOVER_MODE =(TYPE = SELECT)(METHOD = BASIC)(RETRIES = 180)(DELAY = 5))))
or
(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx)(PORT=1521))(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=sid)))
or
(DESCRIPTION=(FAILOVER=ON)(ADDRESS_LIST=(LOAD_BALANCE=ON)(ADDRESS=(PROTOCOL=TCP)(HOST=xxxxx)(PORT=1521)))(CONNECT_DATA=(SERVICE_NAME=sid)))
看了资料,现在开始修改程序配置,刚开始,想直接修改kettle.properties配置文件,将hostname port database name修改,然后程序不用做修改,也就是如下的配置:
这样是改动最小的,但是,经过验证这种方式行不通,程序报错。。。
后来做了修改,如下:
配置文件中需要只修改database name,但是需要修改程序中的数据库连接。
验证结果:
注:如果修改配置后连接数据库失败,查看下kettle版本。
估计只有kettle4.x及以上版本才支持rac模式,我生产原来用的是kettle3.0,升级程序及配置文件后连接失败,升级kettle3.0到kettle4.2之后连接成功。
was配置oracle RAC集群的数据源
在WebSphere中配置配置Oracle RAC集群的数据源,假设Oracle RAC双击分别为 HOST1 与 HOST2 , 端口为1521 ,服务名为 orcldbservice,则配置的UR ...
PLSQL中配置Oracle方法
在服务器上,用PL/SQL连接Oracle数据库时,出现了一个问题,提示: Initialization error Could not load "F:\oracle\bin\oci.dl ...
Reporting Service中配置oracle 数据连接
一.安装配置报表服务器 数据源 1.安装oracle客户端32位“Oracle - OraClient11g_home1_32bit” 2.配置监听及tnsnames.ora 3.配置ODBC 添加一 ...
Tomcat7中配置Oracle 11g数据库DBCP连接池
将 ojdbc6.jar tomcat-jdbc-7.0.37.jar 拷贝到工程的WEB-INF\lib 下面 一.在Tomcat的配置文件Tomca ...
关于在iBatis中配置Oracle以及MySQL 自增字段