PostgreSQL主从同步

1 PG数据库主从流复制
1.1 物理流复制原理
备库不断的从主库同步相应的数据,并在备库apply每个WAL record,这里的流复制每次传输单位是WAL日志的record。备库通过同步主库发送的没有界限的一串数据流保持为最新的状态。
1.2 物理流复制特点
1. 延迟极低,不怕大事务
2. 支持断点续传
3. 支持多副本
4. 配置简单
5. 备库与主库物理完全一致,并支持只读
2 PG数据库一主一从异步流复制过程
1. 事务commit后,日志在主库写入wal日志,异步流复制无需等待从库反馈的接收结果。
2. 主库通过日志传输进程将日志块传给从库,从库接收进程收到日志开始回放,最终保证主从数据的一致性。

3 从库同步主库全量数据
3.1 pg_basebackup方式从库同步主库全量数据
主从状态异常

停服务postgresql.service

清理PG从库数据目录$PGDATA
[postgres@localhost ~]$ cd $PGDATA
[postgres@localhost pg_data]$ ls

[postgres@localhost pg_data]$ rm -rf *
pg_basebackup同步主库全量数据
/var/postgresql/soft/pg12.8/bin/pg_basebackup -w -d 'application_name=pgautofailover_standby_2 host=192.168.56.118 port=5432 user=pgautofailover_replicator sslmode=prefer' --pgdata /data/kdcc/postgres/pg_data -U pgautofailover_replicator --verbose --progress --max-rate 100M --wal-
PostgreSQL主从同步
声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。如若本站内容侵犯了原著者的合法权益,可联系本站删除。



