postgresql 以读写模式打开备用Postgres数据库以进行测试

nfzehxib  于 2023-06-05  发布在  PostgreSQL
关注(0)|答案(1)|浏览(295)

我目前使用的是Postgres 12.6 Enterprisedb版本。我有一个灾难恢复数据库,它以只读模式与生产数据库同步。现在,我想暂时中断同步,并在特定的持续时间内以读写模式打开灾难恢复数据库。然后,我计划将其同步回生产数据库。PostgreSQL中是否有任何机制允许我暂时暂停或停止写前日志记录(WAL)进程?另外,我也很好奇PostgreSQL是否有类似于Oracle文件闪回功能的概念。
基本上打破了在读写模式下临时打开的同步,并再次回到与prod同步

8ehkhllq

8ehkhllq1#

如果您使用的是12.6,则表明您不太关心数据的健康状况。今天更新到12.15
不需要暂停或停止复制;你必须“提升”备用数据库,使其成为一个独立的数据库,在那里你可以读和写。一种方法是调用pg_promote()函数。
将升级后的备用文件恢复到原始状态的简单方法是擦除数据目录并使用新的pg_basebackup()启动。然而,有一个实用程序可以大大加快这一速度:pg_rewind。它将撤消自备用升级以来发生的所有修改。
要使pg_rewind正常工作,有一些先决条件:

  • 您需要服务器分离后在双方生成的所有WAL(您可以使用wal_keep_segments来实现该目的)
  • 必须使用initdb --data-checksums创建群集,才能具有数据校验和,或者wal_log_hints必须设置为on

相关问题