【问题标题】:Handle DB Fail-over on postgres在 postgres 中处理数据库故障转移
【发布时间】:2021-01-15 18:42:28
【问题描述】:

谁能帮忙解决以下问题?

  • Postgres 数据库中是否有类似于 Oracle TAF(透明应用程序故障转移)功能的解决方案
  • 在 Java 代码中如何在行业级别处理数据库故障转移?除了使用计时器重试查询之外,还有其他解决方案吗?

【问题讨论】:

  • 不,Postgres 中没有类似于 TAF 的东西
  • 那么您知道在使用 PG HA 设置的 java 程序中处理持久数据的搁浅方法是什么吗?

标签: java database postgresql failover


【解决方案1】:

TAF 部分是谎言 - data modifying statements won't fail over。不,PostgreSQL 中没有这样的东西。

我认为不需要计时器。使应用程序对故障转移具有弹性的方法是检查您收到的错误的 SQLSTATE,如果它表明连接丢失,则重复该事务。保持计数,这样如果错误持续存在,您就不会最终无休止地循环。

【讨论】:

  • Quote from the manual "透明应用程序故障转移 (TAF) 是 Java 数据库连接 (JDBC) Oracle 调用接口 (OCI) 驱动程序的一项功能。它使应用程序能够自动重新连接到数据库, 如果建立连接的数据库实例失败。在这种情况下,活动事务回滚"
猜你喜欢
  • 1970-01-01
  • 2010-11-06
  • 1970-01-01
  • 1970-01-01
  • 2016-05-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-17
相关资源
最近更新 更多