【问题标题】:Postgresql 10 replication mode errorPostgresql 10 复制模式错误
【发布时间】:2018-03-06 16:10:35
【问题描述】:

我正在尝试使用流复制为 postgres 10 和 docker 设置基本的主从配置

由于官方 docker 映像提供了一个 docker-entrypoint-initdb.d 文件夹来放置初始化脚本,我认为开始将我的准备代码放在这里是一个不错的主意。

我想要做的是在启动从机处于待机模式之前自动恢复数据库的方式,所以我运行

rm -rf /var/lib/postgresql/data/* && pg_basebackup 'host=postgres-master port=5432 user=foo password=foo' -D /var/lib/postgresql/data/

这成功了。

然后服务器按照docker初始化脚本关闭并重新启动,弹出一条消息说

主备数据库系统标识符不同

现在我已经在网上坐了一段时间了,我得到的唯一两个解释是我的 recovery.conf 文件配置错误,看起来像这样

standby_mode = 'on'
primary_conninfo = 'host=postgres-master port=5432 user=foo password=foo'
trigger_file = '/tmp/postgresql.trigger'

连接字符串与我用于基本备份的连接字符串相同。

第二种解决方案是备份命令可能被搞砸了,但备份后我添加到数据文件夹中的唯一内容是recovery.conf 文件。

有人知道我在哪里搞砸了吗?

我应该去repmgr并收工吗?

提前致谢

【问题讨论】:

    标签: postgresql docker kubernetes replication database-replication


    【解决方案1】:

    为了回答我自己的问题,问题在于如何调用 dockerfile 入口点脚本。相反,他们最终会根据我未正确设置的变量将实例启动为主或从属。

    【讨论】:

      猜你喜欢
      • 2020-07-25
      • 1970-01-01
      • 2017-12-30
      • 2020-04-13
      • 1970-01-01
      • 2013-08-15
      • 1970-01-01
      • 1970-01-01
      • 2020-02-03
      相关资源
      最近更新 更多