在repmgr cluster show命令显示下面的错误。为什么它显示WAL重放暂停在node2和node3作为警告。这里node2和node3是我的备用节点。这里我附加postgresql.auto.conf为node1和node2。在PITR使用Barman后,我发现这个问题。为什么会发生这种情况,如何解决它?
g6ll5ycj1#
从v12开始,默认的recovery_target_action为“pause”。这使您可以在只读模式下浏览系统,以确保在完全打开数据库之前处于最佳时间点。由于您没有覆盖它(例如,通过使用barman的--target-action),所以您得到的是“pause”。您可以通过编辑conf文件来添加recovery_target_action,或者只连接到每个conf文件并调用pg_wal_replay_resume()来修复这个问题(无需重做整个恢复)。
--target-action
ru9i0ody2#
我与同样的问题斗争了差不多3-4天,最后发现postgresql.auto.conf是一个待机的问题。Please remove or comment lines in postgresql.auto.conf #restore_command = 'cp barman_wal/%f %p' #recovery_end_command = 'rm -fr barman_wal' #recovery_target_time = '2022-11-06 10:00:00'我重新启动了我的备用克隆后,使用repmgr和一切开始工作。希望这有帮助
Please remove or comment lines in postgresql.auto.conf #restore_command = 'cp barman_wal/%f %p' #recovery_end_command = 'rm -fr barman_wal' #recovery_target_time = '2022-11-06 10:00:00'
sbdsn5lh3#
PostgreSQL无法复制应用于SQL的DDL部分的事务,当在复制的源数据库上执行此类命令时,流式复制将立即停止。调查该方法以查找在源数据库上执行了哪个DDL命令(CREATE、ALTER、DROP...)...
3条答案
按热度按时间g6ll5ycj1#
从v12开始,默认的recovery_target_action为“pause”。这使您可以在只读模式下浏览系统,以确保在完全打开数据库之前处于最佳时间点。
由于您没有覆盖它(例如,通过使用barman的
--target-action
),所以您得到的是“pause”。您可以通过编辑conf文件来添加recovery_target_action,或者只连接到每个conf文件并调用pg_wal_replay_resume()来修复这个问题(无需重做整个恢复)。
ru9i0ody2#
我与同样的问题斗争了差不多3-4天,最后发现postgresql.auto.conf是一个待机的问题。
Please remove or comment lines in postgresql.auto.conf #restore_command = 'cp barman_wal/%f %p' #recovery_end_command = 'rm -fr barman_wal' #recovery_target_time = '2022-11-06 10:00:00'
我重新启动了我的备用克隆后,使用repmgr和一切开始工作。希望这有帮助
sbdsn5lh3#
PostgreSQL无法复制应用于SQL的DDL部分的事务,当在复制的源数据库上执行此类命令时,流式复制将立即停止。
调查该方法以查找在源数据库上执行了哪个DDL命令(CREATE、ALTER、DROP...)...