CentOS7 PostgreSQL 主从配置( 二)

时间:2023-03-09 00:42:43
CentOS7 PostgreSQL 主从配置( 二)

同步流复制配置
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'

测试 (略)