小编xzi*_*lla的帖子

将整个 PostgreSQL 集群复制到另一个(相同的)服务器

我希望将 PostgreSQL 10 集群从server1克隆到server2,它在相同的硬件上运行相同的 Postgres 版本。目的是负载平衡和 HA。要记住的事情:

  • 数据库非常大(TB 级),网络非常好。我想避免使用中间文件。
  • 克隆实时数据库会很酷,但如果需要,我也可以关闭集群。

我考虑过的选项:

  1. pg_dump | psql 当然,但这需要重新创建索引,并且对于相同系统之间的完整副本来说似乎非常缓慢且效率低下。
  2. 使用server2作为从属设备设置流式复制,等待它与server1同步,然后重新配置两者以再次禁用复制(我不需要它)。似乎一堆毫无意义的配置工作有错误的余地。
  3. 关闭集群、rsync所有 Postgres 文件夹和文件。有这么多数据存在数据损坏的风险,我需要确保我得到了所有东西(大概只有数据目录是不够的)。
  4. 我可以pg_basebackup直接通过管道以pg_receivewal某种方式完成这项工作吗?找不到我的用例的说明。

做到这一点的最佳方法是什么?好像是很常见的情况。

postgresql replication backup write-ahead-logging

2
推荐指数
2
解决办法
702
查看次数