文章摘要
这篇文章介绍了如何在PostgreSQL 13环境下基于流复制搭建主从服务器。主要内容包括:
1. **参数配置**:在`postgresql.conf`中设置了关键参数,如`wal_level=hot_standby`、`max_wal_senders=10`和`max_replication_slots=10`,并在`pg_hba.conf`中添加了主从复制相关配置。
2. **备份创建**:使用`pg_basebackup`命令创建主从备份,详细解释了命令参数,包括:
- `-D`指定备份目录
- `-Fp`生成平面文件
- `-Xstream`实现流复制预写
- `-R`启用自动恢复配置
- `-P`启用进度报告
- `-v`启用冗长模式
3. **启动备机服务器**:通过`pg_ctl`启动主从服务,验证备份过程,并在备用端口连接测试。
4. **验证配置**:通过`psql`命令连接到备用端口,检查复制状态和数据一致性。
文章还提供了完整的脚本和相关资源,供读者进一步实践。通过这篇文章,读者可以掌握PostgreSQL 13环境下的流复制主从搭建技术。
目录实际操作1、参数配置2、使用pg_basebackup创建备机数据库3、启动备机数据库服务器4、检查
pg的高可用、负载均衡和复制特性矩阵如下

后备服务器作为主服务器的数据备份,可以保障数据不丢,而且在主服务器发生故障后可以提升为主服务器继续提供服务。
首先配置主机的postgresql.conf
vim /usr/local/pgsql/data/postgresql.conf
listen_addresses=’*’
wal_level=hot_standby
max_wal_senders=10
max_replication_slots=10
hot_standby=on # 主要用来备库配置,主库配置无影响
wal_keep_size=1GB #pg13后配置,之前是wal_keep_segments
wal_log_hints=on #pg_rewind必须参数
full_page_writes=on
然后配置主机的pg_hba.conf
vim /usr/local/pgsql/data/pg_hba.conf
host replication all 0.0.0.0/0 trust #新增
pg_basebackup -D https://www.jb51.net/data1 -U postgres -Fp -X stream -R -P -v -p54321 -h 127.0.0.1
解释一下常用参数
pg_basebackup被用于获得一个正在运行的PostgreSQL数据库集簇的基础备份。
-D directory
将输出写到哪个目录。如果必要,pg_basebackup将创建该目录及任何父目录。
-Fp
把输出写成平面文件,使用和当前数据目录和表空间相同的布局。
-Xstream
在备份被创建时通过流复制传送预写式日志。这将开启一个到服务器的第二连接并且在运行备份时并行开始流传输预写式日志。
-R
–write-recovery-conf
在输出目录中(或者当使用 tar 格式时在基础归档文件中)建立 standby.signal 并附加连接设置到postgresql.auto.conf 来简化设置一个后备服务器。postgresql.auto.conf文件将记录连接设置(如果有)以及pg_basebackup所使用的复制槽,这样流复制后面就会使用相同的设置。
-P
–progress
启用进度报告。
-v
–verbose
启用冗长模式,可以理解为输出备份过程数据。
echo “port=54322” >> /usr/local/pgsql/data1/postgresql.conf
pg_ctl -D /usr/local/pgsql/data1 start
登录主机查看流复制关系
psql -Upostgres -dpostgres -p54321
select * from pg_stat_replication;
主机插入数据
https://www.jb51.net/article/psql -Upostgres -dpostgres -p54321
create table t1 (id int ,name varchar);
insert into t1 values (1,’cli’);
备机查询数据,数据同步成功
psql -Upostgres -dpostgres -p54322
select * from t1;

至此,一个简单的后备服务器就搭建好了。
但行好事,莫问前程
到此这篇关于PostgreSQL13基于流复制搭建后备服务器的文章就介绍到这了,更多相关PostgreSQL13搭建后备服务器内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
您可能感兴趣的文章:教你如何在Centos8-stream安装PostgreSQL13开源数据库postgreSQL13在麒麟v10sp1源码安装过程详解CentOS PostgreSQL 12 主从复制(主从切换)操作postgresql数据库安装部署搭建主从节点的详细过程(业务库)Postgresql 检查数据库主从复制进度的操作Postgresql主从异步流复制方案的深入探究postgresql13主从搭建Ubuntu