【问题标题】:Java Web application getting Cannot create PoolableConnectionFactory DB2 SQL Error: SQLCODE=-1776 for HADR configured on DB2Java Web 应用程序无法创建 PoolableConnectionFactory DB2 SQL 错误:SQLCODE=-1776 for HADR 在 DB2 上配置
【发布时间】:2013-08-23 20:32:51
【问题描述】:

我已经开发了一个 Web 应用程序,其中我使用 JNDI 连接池在 Apache tomcat 服务器的 server.xml 中配置了两个 <Resource> 并具有适当的参数。在 server.xml 中的两个资源标签中,第一个标签包含主服务器的详细信息,另一个标签包含备用服务器的详细信息。我的想法是,如果我在一段时间内没有从主服务器获得连接,我会将数据源切换到备用服务器并从 servlet 运行查询。但是当我运行代码时,它给了我错误Cannot create PoolableConnectionFactory (DB2 SQL Error: SQLCODE=-1776, SQLSTATE= , SQLERRMC=1, DRIVER=3.57.82)

我在谷歌上搜索了很多,但找不到任何具体的答案,但有一件事很常见,即 DB2 服务器的 HADR(Hisgh Availability Disaster Recovery)配置。 请帮帮我。

【问题讨论】:

    标签: servlets db2 jndi


    【解决方案1】:

    一般来说,您无法连接到备用数据库,除非它在接管后承担主要角色。

    设置 DB2 HADR 集群的正确方法是在集群管理软件中配置一个虚拟 IP 地址,该地址在接管后分配给新的主数据库;而更改对客户端应用程序保持完全透明。

    您需要与您的 DBA 交谈以了解如何配置应用程序。

    【讨论】:

    • 但是从应用程序的角度来看,我们有任何编程逻辑来解决它吗?
    【解决方案2】:

    在 HADR 配置中,每次数据库从主数据库切换到备用数据库以及从备用数据库切换到主数据库时,服务器都会向连接到 DB2 服务器的每个客户端发送 ClientReroute 异常,所以我以编程方式捕获它并再次尝试事务它成功了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-20
      • 1970-01-01
      • 2017-04-01
      相关资源
      最近更新 更多