流复制和 archive_mode

作者:瀚高PG实验室 (Highgo PG Lab)-天蝎座
将 archive_mode 设置成 off 时,依然能搭建成功流复制环境,而网上大多数资料都是将该参数设置成 on。

的确,在配置PostgreSQL流复制时,我们通常开启 archive_mode,但并不一定会配置archive_command shell脚本归档 WAL,因为 PostgreSQL 的归档非常大,而且保留归档WAL需要很大的存储空间,当然有条件的情况下建议开启并且设置保留策略。

接下来测试下,版本 PostgreSQL 9.5.7,关于流复制的搭建不再过多介绍,另外不同的是 archive_mode 参数设置成 off,并且注释 archive_command 参数,分以下两种情况测试:

测试一:
以开启 archive_mode 方式搭建流复制环境,搭建完成后更改主库,备库的 achive_mode
参数为 off,并重启服务; 测试结果:流复制正常。
测试二:
重新搭建流复制环境,并且搭建时关闭主库,备库的 archive_mode 参数(off)。
测试结果:流复制正常。

  结论:
   根据以上测试,似乎说明在搭建流复制环境时,并不必须设置 archive_mode 参数为 on ,很多资料在介绍搭建流复制环境时设置这个参数为 on ,可能是出于开启 WAL归档更安全的原因,因为在主库宕机并且较长时间不能恢复时,从库依然可以读取归档目录的 WAL,从而保证不丢数据; 另一方面,如果主库使用了复制槽,也可以不用开启 archive_mode,因为主库保留了足够的 WAL,从而大大降低了因从库所需要的 WAL 被主库覆盖而需要从归档去取 WAL 的情况。所以从这方面说,archive_mode 参数的设置与搭建流复制并没有直接关系。     

提示:
对于比较繁忙的库,在搭建流复制从库时,建议使用复制槽。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值