同步流复制配置
PostgreSql的流复制是异步的,缺点是Standby上的数据落后于主库上的数据,如果使用Hot Standby做读写分离,就会存在数据一致性的问题。PostgreSql9.1版本后提供了同步流复制的架构。同步复制的要求在数据写入Standby数据库后,事务commit才返回。
存在问题:当Standby数据出现问题时,会导致主库被hang住。
解决方法:启动两个或两个以上的Standby数据库。

配置方法,在主从配置基础上

主库synchronous_standby_names 参数指定多个Standby的名称,各个名称通过逗号分割,而Standby连接到主库由application_name 参数指定

主库

postgresql.conf
synchronous_standby_names = 'standby01,standby02'

从库

cat recovery.conf 
standby_mode = 'on'
primary_conninfo = 'application_name=standby02 user=postgres host=10.2.0.14 port=5432 sslmode=disable sslcompression=1'

测试 (略)

相关文章:

  • 2021-10-07
  • 2021-07-14
  • 2022-01-10
  • 2018-03-20
  • 2022-12-23
  • 2021-06-27
  • 2022-12-23
猜你喜欢
  • 2021-12-26
  • 2021-09-14
  • 2021-12-26
  • 2021-09-18
  • 2022-12-23
  • 2021-12-26
相关资源
相似解决方案