我的python脚本要求在主数据库上停止复制一段时间,以执行所有PostgreSQL操作,如截断表、向表添加新值以及更新表,我以前用这个查询这样做
SELECT pg_wal_replay_pause();
并使用此恢复
SELECT pg_wal_replay_resume();
目的是当我在主数据库上完成这些更改后,立即在从属数据库上复制所有查询和更改(因为它是为我的前端服务的)
但自从我转到AWS RDS后,我似乎无法停止复制。作为此查询
选择pg_wal_read_pause();
退货
ERROR: permission denied for function pg_wal_replay_pause SQL state: 42501
这可能吗?如果不是的话,请建议我另一种方法。
我想那时您将无法暂停复制。
另一种解决方案是在一个事务中执行所有更改。然后,无论复制是否停止,它们都将在同一实例的备用服务器上可见。