我不是 DBA;我是基于企业数据库的应用程序的主要开发人员。
我目前正在指定一些新机器来升级我们现有的企业数据库。目前,我们在 DR 站点运行带有数据库的 Postgres 8.4,该数据库通过前雇员执行的一些自定义 rsync 工作定期接收更新。
我们试图解决的主要问题之一是两个全局办事处之间的延迟。我们在纽约和伦敦都有员工。目前,伦敦员工正遭受我们 VPN 管道的命运。我真的无法更改该基础架构。
我想做的是转移到 Postgres 9 并设置流式复制。奴隶将在伦敦办公室,这将减轻用户的阅读问题。我预见到的问题是写入从机(不确定 PG 如何处理这个问题,我的理解是从机处于只读模式)。理想情况下,写入将由数据库本身发送到纽约的主服务器(伦敦的写入很少见,但有必要)。此外,我可以设置失败转移以使其充当热插拔备份(替换 DR)。同样,所有内容都包含在 Postgres 配置中,没有额外的代码。
这是我理想化的解决方案。我有多远?这是可能吗?
我对这个主题的广度有点不知所措,而 Google 并没有真正帮助我。我将不胜感激一些经验丰富的 DBA 提供的任何建议,包括轶事、相关文档或示例。
目前我们使用 SQLAlchemy 作为数据库的主要接口(interface)(如果相关的话)。这确实意味着我们不受 Postgres 的束缚。
谢谢大家
最佳答案
pgpool-II可以为您处理:
检查 this example .
关于postgresql - 数据库镜像/Postgres 流复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6207603/