支持oracle TAF功能的java连接字符串

标签 java oracle failover

我们目前使用 Spring JDBC 和 DBCP 的连接池实现来连接到 TAF 支持的 ORACLE 11g2 服务器。

使用的连接字符串是

jdbc:oracle:thin:@(DESCRIPTION =(ADDRESS_LIST 
                     =(LOAD_BALANCE=ON)(FAILOVER=ON)(ADDRESS = (PROTOCOL = TCP)(HOST = **IP1**)(PORT 
                     = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = IP2)(PORT = 1521)))(CONNECT_DATA 
                     =(SERVER = DEDICATED)(SERVICE_NAME = **service_name**)(FAILOVER_MODE=(TYPE=select)(METHOD=basic))))

查询 v$session 来验证故障转移类型、故障转移方法时。它向任何人都展示了两者。 enter image description here

如何将failover_type和failover_method分别设置为SELECT和BASIC。 enter image description here

连接字符串中是否存在无效设置,请提出建议。 提前致谢。

最佳答案

11.2 oracle jdbc 文档说 “透明应用程序故障转移 (TAF) 是 Java 数据库连接 (JDBC) Oracle 调用接口(interface) (OCI) 驱动程序的一项功能” 您的连接字符串是: jdbc:oracle:瘦: 因此,为了启用 TAF,您应该使用 jdbc OCI 驱动程序而不是 Thin 驱动程序。我从未使用过 jdbc OCI 驱动程序,但我想您必须安装标准的 native oracle 客户端或即时客户端。

关于支持oracle TAF功能的java连接字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8194304/

相关文章:

oracle - 从RAISE_APPLICATION_ERROR中排除其他错误信息

.net - 使用 .Net 连接器配置 MySql 集群故障转移

Java : Serial port enumeration and the for-loop

java - 获取 GITHUB 存储库下的所有项目

java - 使用 JdbcTemplate 时转义单引号

node.js - Nodejs 故障转移

node.js - RabbitMQ 和 Node.js 如何处理故障转移场景?

java - 在 java.util.function.Predicate 中执行 IO 操作

java - Android 位图有时返回 null

sql - 选择行或默认行