postgresql - 数据库镜像/Postgres 流复制

标签 postgresql streaming replication database-backups

我不是 DBA;我是基于企业数据库的应用程序的主要开发人员。

我目前正在指定一些新机器来升级我们现有的企业数据库。目前,我们在 DR 站点运行带有数据库的 Postgres 8.4,该数据库通过前雇员执行的一些自定义 rsync 工作定期接收更新。

我们试图解决的主要问题之一是两个全局办事处之间的延迟。我们在纽约和伦敦都有员工。目前,伦敦员工正遭受我们 VPN 管道的命运。我真的无法更改该基础架构。

我想做的是转移到 Postgres 9 并设置流式复制。奴隶将在伦敦办公室,这将减轻用户的阅读问题。我预见到的问题是写入从机(不确定 PG 如何处理这个问题,我的理解是从机处于只读模式)。理想情况下,写入将由数据库本身发送到纽约的主服务器(伦敦的写入很少见,但有必要)。此外,我可以设置失败转移以使其充当热插拔备份(替换 DR)。同样,所有内容都包含在 Postgres 配置中,没有额外的代码。

这是我理想化的解决方案。我有多远?这是可能吗?

我对这个主题的广度有点不知所措,而 Google 并没有真正帮助我。我将不胜感激一些经验丰富的 DBA 提供的任何建议,包括轶事、相关文档或示例。

目前我们使用 SQLAlchemy 作为数据库的主要接口(interface)(如果相关的话)。这确实意味着我们不受 Postgres 的束缚。

谢谢大家

最佳答案

pgpool-II可以为您处理: enter image description here

检查 this example .

关于postgresql - 数据库镜像/Postgres 流复制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6207603/

相关文章:

ios - 如何从 iOS 设备(而不是它自己的相机)流式传输 (RTMP) 视频

使用 Slony-I 替代 Linux 设置到 Shell 脚本的数据库复制

sql-server - 为什么合并复制在设置表的 LOCK_ESCALATION 时会失败?

mysql - MySQL服务器主到主复制时出错

sql - 连接两个表

ruby-on-rails - 生成一个随机字符串以保存为 id,但在每次页面刷新时继续更改?

sql - 选择一列上的最大运行总计小于给定值的行

javascript - 无流连接到 Kurento Room

postgresql - 错误: column "int4" specified more than once

java - 流式作业与循环批处理作业使用 Kafka 队列中的数据