gpt4 book ai didi

postgresql - 哪种 PostgreSQL 复制解决方案适用于我的特定场景

转载 作者:行者123 更新时间:2023-11-29 11:41:01 25 4
gpt4 key购买 nike

我需要按如下方式复制 PostgreSQL 数据库服务器:

  1. 两台服务器彼此相邻 - 一台为主,另一台为备用。如果主服务器发生故障,备用服务器将接管。从主到从的复制需要故障安全,因此是同步的。备用数据库不会用于任何查询,除非它已成为主数据库。因此,不需要高可用性/负载平衡。

  2. 在远程位置还有另一个备份服务器。上面提到的主服务器的数据会异步批量复制到这台远程服务器上。在此复制中,时间根本不是一个因素 - 几个小时就可以了。该服务器将仅用于备份。

我已经从 PostgreSQL 文档以及 Google 研究了当前可用的复制解决方案,但无法决定我需要哪种同步-异步解决方案组合。

我想到的最接近的方案是在场景 1 中使用 pgpool-II,在场景 2 中使用 Mammoth。但是,由于 pgpool 是基于语句的,包含 rand() 和 now() 的查询会发生什么情况?

请注意,我宁愿使用免费和开源的复制工具。

此外,只是一个附带问题 - 根据上面的场景 1,当 master 发生故障时,standby 将接管。之后是主从对调,还是主服务器恢复后从服务器回到备用状态?

如有任何建议,我们将不胜感激。谢谢。

最佳答案

我建议在场景 1 中使用 DRBD,在场景 2 中使用 9.0 内置复制或 Slony。

在PostgreSQL 9.1(尚未发布)之前,没有其他可用的同步复制解决方案,为此广泛建立了DRBD。与 Pacemaker 或 Heartbeat 一起,它们带有 PostgreSQL 监控和切换所需的所有脚本,您将拥有一个非常强大且相当易于管理的解决方案。 (事实上​​ ,我会考虑在 9.1 发布后继续使用 DRBD;它更容易并且有更长的跟踪记录。)

对于跨站异步,可以试试PostgreSQL 9.0自带的replication,或许可以配合repmgr进行监控管理。或者,您可以尝试(现在有点)老式的 Slony,但我猜它会更复杂,无法满足您的需求。

关于postgresql - 哪种 PostgreSQL 复制解决方案适用于我的特定场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6572692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com