PostgreSQL13基于流复制搭建后备服务器的方法


Posted in PostgreSQL onJanuary 18, 2022

pg的高可用、负载均衡和复制特性矩阵如下

PostgreSQL13基于流复制搭建后备服务器的方法

后备服务器作为主服务器的数据备份,可以保障数据不丢,而且在主服务器发生故障后可以提升为主服务器继续提供服务。

实际操作

1、参数配置

首先配置主机的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 #新增

2、使用pg_basebackup创建备机数据库

pg_basebackup -D ../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

启用冗长模式,可以理解为输出备份过程数据。

3、启动备机数据库服务器

echo "port=54322" >> /usr/local/pgsql/data1/postgresql.conf
pg_ctl -D /usr/local/pgsql/data1 start

4、检查

登录主机查看流复制关系

psql -Upostgres -dpostgres -p54321
select * from pg_stat_replication;

主机插入数据

./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基于流复制搭建后备服务器的文章就介绍到这了,更多相关PostgreSQL13搭建后备服务器内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PostgreSQL 相关文章推荐
Centos环境下Postgresql 安装配置及环境变量配置技巧
May 18 PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
PostgreSQL解析URL的方法
Aug 02 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
基于PostgreSQL/openGauss 的分布式数据库解决方案
Dec 06 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 07 PostgreSQL
postgreSQL数据库基础知识介绍
Apr 12 PostgreSQL
postgresql中如何执行sql文件
May 08 PostgreSQL
基于PostgreSQL/openGauss 的分布式数据库解决方案
PostgreSQL自动更新时间戳实例代码
Nov 27 #PostgreSQL
关于PostgreSQL JSONB的匹配和交集问题
Sep 14 #PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 #PostgreSQL
PostgreSQL解析URL的方法
Aug 02 #PostgreSQL
postgresql使用filter进行多维度聚合的解决方法
Jul 16 #PostgreSQL
浅谈PostgreSQL表分区的三种方式
You might like
php在线生成ico文件的代码
2007/10/09 PHP
PHP 命令行工具 shell_exec, exec, passthru, system详细使用介绍
2011/09/11 PHP
帝国cms常用标签汇总
2015/07/06 PHP
PHP性能优化大全(php.ini)
2016/05/20 PHP
PHP redis实现超迷你全文检索
2017/03/04 PHP
PHP PDOStatement::fetchColumn讲解
2019/01/31 PHP
yii 框架实现按天,月,年,自定义时间段统计数据的方法分析
2020/04/04 PHP
用Jquery实现多级下拉框无刷新的联动
2010/12/22 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
获取select元素被选中的文本内容的js代码
2014/01/29 Javascript
JavaScript中的return语句简单介绍
2015/12/07 Javascript
JS代码实现table数据分页效果
2016/05/26 Javascript
JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法
2016/12/07 Javascript
JS实现淡入淡出图片效果的方法分析
2016/12/20 Javascript
jQuery实现点击关注和取消功能
2017/07/03 jQuery
nodejs 如何手动实现服务器
2018/08/20 NodeJs
vue中eslintrc.js配置最详细介绍
2018/12/21 Javascript
js实现类似iphone的网页滑屏解锁功能示例【附源码下载】
2019/06/10 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
对python3标准库httpclient的使用详解
2018/12/18 Python
对Python3.x版本print函数左右对齐详解
2018/12/22 Python
Python静态类型检查新工具之pyright 使用指南
2019/04/26 Python
使用Python在Windows下获取USB PID&VID的方法
2019/07/02 Python
python 默认参数相关知识详解
2019/09/18 Python
python和pywin32实现窗口查找、遍历和点击的示例代码
2020/04/01 Python
python线程优先级队列知识点总结
2021/02/28 Python
CSS3 实现倒计时效果
2020/11/25 HTML / CSS
岗位说明书怎么写
2014/07/30 职场文书
社区领导班子四风问题原因分析及整改措施
2014/09/28 职场文书
2014年党的群众路线整改措施思想汇报
2014/10/12 职场文书
捐助倡议书
2015/01/19 职场文书
2015年保险公司工作总结
2015/04/24 职场文书
公司晚会主持词
2019/04/17 职场文书
MongoDB使用profile分析慢查询的步骤
2021/04/30 MongoDB
Python办公自动化PPT批量转换操作
2021/09/15 Python