postgresql主备同步

数据库复制:
master节点:
创建用户:
create user replica with replication login password '123456';
alter user replica with password '123456';
修改pg_hba.conf文件:
host replication replica 0.0.0.0/0 md5
修改配置:
wal_level = replica        #
max_wal_senders= 5         #设置最多可以有几个流复制连接,一般有几个从库就有几个连接
wal_keep_segments= 128     #流复制保留最多的log数目
wal_sender_timeout= 60s    #主库与备库之间数据传输的超时时间
max_connections = 2000     #最大连接数
hot_standby = on           #这个从库不仅仅是数据归档,也用于数据查询
max_standby_streaming_delay = 30s     #数据流备份的最大延迟时间
wal_receiver_status_interval = 10s    #多久向主库报告一次从库的状态。
hot_standby_feedback = on  #如果有错误的复制,是否向主库反馈
wal_log_hints = on         #
备库节点配置:
修改standby.signal文件
standby_mode = 'on'
修改postgreqls.conf文件:
primary_conninfo = 'host=192.168.10.1 port=5432 user=postgres password=123456'
recovery_target_timeline = latest  
max_connections = 120           #大于等于主库
hot_standby = on
max_standby_streaming_delay = 30s
wal_receiver_status_interval = 10s
hot_standby_feedback = on
max_wal_sender = 15
logging_collector = on
log_directory = 'pg_log'
log_filename = 'postgresql=%Y-%m-%d_%H%M%S.log'
修改postgresql.auto.conf文件
restore_command = 'cp /arch/%f %p'
primary_conninfo = 'user=postgres password=123456 host=192.168.10.1 port=5432 sslmode=disable sslcompression=0
                    gssencmode=disable krbsrvname=postgres target_session_attrs=any'
监控同步状态:
主库查询:
select pid,state,client_addr,sync_priority,sync_state from pg_stat_replication;
备库查询:
select * from pg_stat_wal_receiver;
 


版权声明:本文为S1156578253原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。