【发布时间】:2014-08-13 14:04:13
【问题描述】:
我不完全是 DBA,因此我希望得到易于理解的回复。我必须为我们的数据库提供复制,而 pgpool 似乎更方便,因为如果一个 postgresql 实例失败,客户端不需要更改任何内容以继续工作,对吗?因此,在这种情况下,使用 pgpool 更有意义,但配置部分(对我而言)似乎更加复杂和混乱。例如,我需要在两个 postgresql 服务器上设置 WAL 吗?或者只有在我想设置 postgresql 复制时才需要这样做?我越是试图得到这些问题的答案,它就变得越不清晰。也许我忘了怎么用谷歌搜索...
【问题讨论】:
-
我更喜欢内置复制而不是 pgPool 的复制。管理复制的一个非常好的工具是repmgr.org 通常人们使用虚拟 IP 来指向“集群”,但您也可以使用 pgPool 作为复制服务器的代理
-
如果您没有经验,请坚持使用 WAL 归档故障转移的内置流复制。
repmgr对此有所帮助。如果您想让它对客户端透明,请使用像 PgBouncer 这样的代理(使用在故障转移时更改目标服务器的脚本)或类似 HAProxy 的东西。不要尝试全自动故障转移,使用手动触发的脚本故障转移 - 并定期测试。
标签: postgresql database-replication pgpool