postgresql11 主从流复制集群

PostgreSQL-流复制集群搭建 postgresql异步和同步流复制集群搭建部署。 阅读详情

192.168.10.251 M
192.168.20.252 S
#两台服务器都提前安装好数据库

#主节点
#创建归档路径
mkdir /data/pgsql/pg_archive
#添加两列连接配置
echo "host     all             all          192.168.10.251/32          trust   >> /data/pgsql/data/pg_hba.conf
echo "host   replication      replica       192.168.10.251/32          md5  >>/data/pgsql/data/pg_hba.conf

#测试环境删除了其他配置文件
cat  >>  /data/pgsql/data/postgresql.conf  << EOF
# -----------------------------
# PostgreSQL configuration file
# -----------------------------
listen_addresses = '*'                  # what IP address(es) to listen on;
#port = 5432                            # (change requires restart)
max_connections = 100                   # (change requires restart)
shared_buffers = 128MB                  # min 128kB
dynamic_shared_memory_type = posix      # the default is the first option
max_wal_size = 1GB
min_wal_size = 80MB
log_timezone = 'Asia/Shanghai'
datestyle = 'iso, mdy'
timezone = 'Asia/Shanghai'
lc_messages = 'en_US.UTF-8'                     # locale for system error message
                                        # strings
lc_monetary = 'en_US.UTF-8'                     # locale for monetary formatting
lc_numeric = 'en_US.UTF-8'                      # locale for number formatting
lc_time = 'en_US.UTF-8'                         # locale for time formatting

# default configuration for text search
default_text_search_config = 'pg_catalog.english'
archive_mode = on  # 允许归档
archive_command = 'cp %p /data/pgsql/pg_archive/%f'  # 用该命令来归档logfile segment
wal_level = hot_standby
max_wal_senders = 32 # 这个设置了可以最多有几个流复制连接,差不多有几个从,就设置几个wal_keep_segments = 256 # 设置流复制保留的最多的xlog数目
wal_sender_timeout = 60s  #设置流复制主机发送数据的超时时间
EOF

#启动
cd /u02/app/pgsql/bin/
./pg_ctl stop -D /data/pgsql/data
./pg_ctl -D /data/pgsql/data -l /data/pgsql/log/pgsql.log start

#创建主从复制账户
/u02/app/pgsql/bin/psql -U postgres -d postgres -h 127.0.0.1 -W
CREATE ROLE replica login replication encrypted password 'replica';

#从节点
su - postgres
rm -rf /data/pgsql/data/*   #先将data目录下的数据都清空
/u02/app/pgsql/bin/pg_basebackup -h 192.168.10.251 -U replica -D /data/pgsql/data -X stream -P  # 从主拷贝数据到从节点

mkdir /data/pgsql/pg_archive
cp /data/pgsql/recovery.conf.sample /data/pgsql/data/recovery.conf
#添加同步配置
echo "standby_mode = on    # 说明该节点是从服务器" >>/data/pgsql/data/recovery.conf
echo "primary_conninfo = 'host=192.168.10.251 port=5432 user=replica password=replica'  #主服务器的信息以及连接的用户" >>/data/pgsql/data/recovery.conf
echo "recovery_target_timeline = 'latest'" >>/data/pgsql/data/recovery.conf

#从数据库配置
cat >> /data/pgsql/data/postgresql.conf <<EOF
# -----------------------------
# PostgreSQL configuration file
# -----------------------------
listen_addresses = '*'            # what IP address(es) to listen on;
#port = 5432                # (change requires restart)
max_connections = 100            # (change requires restart)
shared_buffers = 128MB            # min 128kB
dynamic_shared_memory_type = posix    # the default is the first option
max_wal_size = 1GB
min_wal_size = 80MB
log_timezone = 'Asia/Shanghai'
datestyle = 'iso, mdy'
timezone = 'Asia/Shanghai'
lc_messages = 'en_US.UTF-8'            # locale for system error message
                    # strings
lc_monetary = 'en_US.UTF-8'            # locale for monetary formatting
lc_numeric = 'en_US.UTF-8'            # locale for number formatting
lc_time = 'en_US.UTF-8'                # locale for time formatting

# default configuration for text search
default_text_search_config = 'pg_catalog.english'
archive_mode = on  # 允许归档
archive_command = 'cp %p /data/pgsql/pg_archive/%f'  # 用该命令来归档logfile segment
wal_level = hot_standby 
max_wal_senders = 32 # 这个设置了可以最多有几个流复制连接,差不多有几个从,就设置几个wal_keep_segments = 256 # 设置流复制保留的最多的xlog数目
wal_sender_timeout = 60s  #设置流复制主机发送数据的超时时间
hot_standby = on #说明这台机器不仅仅是用于数据归档,也用于数据查询
max_standby_streaming_delay = 30s # 数据流备份的最大延迟时间
wal_receiver_status_interval = 10s # 多久向主报告一次从的状态,当然从每次数据复制都会向主报告状态,这里只是设置最长的间隔时间
hot_standby_feedback = on # 如果有错误的数据复制,是否向主进行反馈
EOF
#启动从节点
/u02/app/pgsql/bin/pg_ctl -D /data/pgsql/data -l /data/pgsql/log/pgsql.log start

#主节点
#查看wal sender 进程
ps aux | grep postgres 
#登陆查看数据集群
postgres=# select client_addr,sync_state from pg_stat_replication;
  client_addr   | sync_state 
----------------+------------
 192.168.10.254 | async
(1 row)
#查全部看复制状态
postgres=#select * from pg_stat_replication;


#从节点
#查看wal sender 进程
ps aux | grep postgres 

PostgreSQL 11主从复制+Keepalived高可用实战:从零搭建到避坑指南 本文详细介绍了从零搭建PostgreSQL 11高可用集群的完整实战流程。通过配置流复制实现数据同步,结合Keepalived管理虚拟IP实现自动故障转移,构建了稳定可靠的高可用方案。文章还深入探讨了在此架构上实现应用层读写分离的具体策略与代码示例,并分享了部署与运维过程中的关键避坑点。 阅读详情

相关推荐

Ubuntu 12.04 + PostgreSQL 9.1 主从流复制实战指南

PostgreSQL 主从复制是保障数据库高可用的基础技术,其核心原理在于 WAL 日志的实时传输与重放。原生流复制(Streaming Replication)自 9.0 版本起即已成熟,无需外部工具,故障面小、路径清晰,具备极高的确定性与可维护性。在老旧但稳定的生产环境中——如长期服役的 Ubuntu 12.04 LTS 系统——该方案尤为关键:它规避了 glibc 兼容性风险、避免引入 Patroni 等复杂组件,并完美适配 hot_standby 实现只读分担。本文聚焦 PostgreSQL 9.1

weixin_34199335的博客 352

postgresql 11 最佳实践 运行参数

os: centos 7.6 db: postgresql 11 最佳实践参数如下,部分参数需要根据实际情况调整 shared_buffers archive_command cluster_name #------------------------------------------------------------------------------ # CONNECTIONS AND AUTHENTICATION #-----------------------------------------

一名数据库爱好者的专栏 508

Postgresql9 PPAS9流复制配置

PostgreSQL流复制集群搭建

深入理解PostgreSQL 3011

PostgreSQL HOT STANDBY using Stream replication

案例解析二、PostgreSQL HOT STANDBY by stream replication 测试:一、准备硬件1. 主节点硬件配置DISK : 146GB*6MEM : 14GBCPU : 2.83GHz*82. standby节点硬件配置DISK : 146GB*4MEM : 8GBCPU : 2.0GHz*8二、准备环境1. 系统Red H...

weixin_34327223的博客 204

PostgreSQL主从部署实战:从环境准备到集群验证

本文详细介绍了PostgreSQL主从部署的完整流程,从环境准备、基础安装到集群验证和日常维护。通过实战案例分享,帮助读者掌握主从复制技术,确保数据库高可用性,提升系统稳定性。文章特别强调了repmgr工具的使用和常见问题处理,为PostgreSQL主从部署提供了实用指南。

weixin_33725239的博客 524

PostgreSQL:详解如何搭建流复制集群

PostgreSQL流复制集群搭建指南摘要 本文详细介绍了PostgreSQL流复制集群的部署流程。流复制通过主节点实时传输WAL日志到备节点实现数据同步,支持高可用和读写分离。部署步骤包括:1)准备相同版本的主备节点环境;2)配置主节点的postgresql.conf和pg_hba.conf;3)创建专用复制用户;4)使用pg_basebackup初始化备库;5)验证复制状态。文章还涵盖复制槽、同步复制等高级配置,以及故障切换方法。该方案可实现数据实时同步,备库提供只读查询服务,是构建高可用Postgre

数据知道的博客 2573

PostgreSQL搭建Standby复制

文章目录 计划搭建一主一从的pg数据库集群 ###环境配置 主机名 IP地址 角色 数据目录 master 192.168.56.15 主库 /data master1 192.168.56.16 standby /data ###主库上的配置 配置pg_hba.conf host replication postgres 192.168.5...

高云平的博客 709

PostgreSQL 12流复制实施手册

PostgreSQL 12流复制实施手册,从安装数据库到配置两台数据库,操作系统用的是centos7.5

【应用】PostgreSQL 流复制配置

整理总结了直接部署与基于 docker 容器部署 PostgreSQL 的流复制的配置

情绪瓜皮皮丶的学习之路 2932

springboot使用mycat做的postgres集群测试

springboot 使用mycat做的postgres集群测试,这是配置我mycat的代码测试。

PostgreSQL流复制原理

PostgreSQL11.2 中文文档 chm版; PostgreSQL是世界上最强大的开源数据库, 堪比商业版的Oracle,

postgressql数据库集群搭建

postgresql11安装 1、创建postgres用户,并授予root权限 master和slave都需要操作: 1.1创建用户 groupadd postgres useradd -g postgres postgres 1.2授权 root权限 chmod 755 /etc/sudoers vi /etc/sudoers ## Allow root to run a...

dragonsmile的博客 3461

告别手动画图!用SUMO的netedit快速搭建高速公路交织区路网(附完整XML文件)

本文详细介绍了如何使用SUMO的netedit工具高效构建高速公路交织区路网,避免手动绘图的低效与错误。通过实战案例和XML文件示例,帮助交通工程专业学生快速掌握复杂道路结构建模技巧,特别解析了spreadType参数设置和速度单位换算等关键操作。

weixin_29085865的博客 261

XWiki Platform部署攻略:从单机到集群的无缝扩展

XWiki Platform是一款功能强大的企业级wiki平台,支持团队协作、知识管理和内容创作。本文将详细介绍如何从单机部署到集群扩展,帮助你构建稳定高效的XWiki服务。 ## 一、环境准备与依赖配置 🛠️ ### 1.1 系统要求 - **操作系统**:Linux/Unix、Windows或macOS - **Java环境**:JDK 11或更高版本 - **数据库**:MySQL 8

gitblog_00467的博客 1110

通俗傻瓜式理清光栅化渲染和光线追踪渲染的原理

用通俗语言傻瓜式的讲清楚光栅渲染和光线追踪渲染的原理,方便没有相关理论基础的朋友理解入门。

qq_37366618的博客 2万+

嵌入式存储实战:FAL+SFUD+flashDB三件套在STM32上的完整移植指南(附避坑技巧)

本文提供了一套在STM32上完整移植FAL、SFUD与flashDB嵌入式存储框架的实战指南。详细解析了从SPI驱动配置、SFUD设备识别、FAL抽象层分区到flashDB键值数据库初始化的全流程,并分享了关键的避坑技巧与性能优化建议,帮助开发者构建稳定可靠的嵌入式存储系统。

rnn9storyteller的博客 1017

PostgreSQL流复制(主从复制)详细教程

摘要: 本文详细介绍了PostgreSQL流复制技术,包括其工作原理和具体实现步骤。流复制通过WAL日志实时同步主从库数据,支持异步和同步两种模式。实现部分以PostgreSQL 13为例,在CentOS 7环境下完成主从架构搭建,包含主库参数配置、复制用户创建、从库数据同步等关键步骤,并通过验证命令确认复制状态和数据一致性。该方案有效提升了数据库的高可用性,为故障切换提供基础保障。

裴东青的博客 968

YOLOv8的特征蒸馏代码应用讲解(CWD/MGD/mimic/在线蒸馏/逻辑蒸馏)

基于YOLOv8的逻辑蒸馏、特征蒸馏、在线蒸馏等方法代码介绍。

qq_41920323的博客 2584

CentOS 7.6下PostgreSQL11.5流复制搭建以及keepalived切换

架构设计: 服务器A: 192.168.173.145 postgresql primary keepalived primary 服务器B: 192.168.173.122 postgresql standby keepalived slave VIP:192.168.173.188 注意,如果没特殊注明,两台机器均需部署 1. 安装postgresql11.5 配置内核参数和资源限...

魂醉的一亩二分地 1758

Oracle11g下载与安装(windows)

一、Oracle11g下载 二、安装准备 三、执行安装步骤 四、测试连接 附:Oracle11g服务说明

欢迎订阅我的“JAVA全栈开发笔记(全)”专栏,价格优惠,仅需19.9元。 2万+

基于深度学习的灰度图像气泡群识别与优化

灰度图像气泡群深度学习识别优化研究 本研究针对MATLAB实现的深度学习气泡群识别系统在从1445个点到4992个点扩展时出现的精度不稳定问题,提出了一套完整的解决方案。文章首先分析了问题根源,包括数据复杂度增加、类别不平衡、网络容量不足等因素,然后系统性地提出了数据预处理增强、网络架构优化、训练策略调整和后处理算法改进等优化措施。通过改进的U-Net架构、自适应直方图均衡化等技术创新,有效提升了模型在大规模气泡群图像上的识别精度和稳定性,为化工、生物医学等领域的灰度图像分析提供了可靠的技术支持。

max500600的博客 412

PostgreSQL 主从集群一键部署工具

目是一个,用于快速部署 PostgreSQL 数据库的单机实例或一主多从流复制集群。:开发测试环境、生产环境快速搭建 PG 集群,尤其适合需要批量部署多套集群的运维场景。

KnZ0A9Byx的博客 214

BART non-Cartesian 重建:并行成像 压缩感知

本文主要使用并行成像和压缩感知方法实现non-Cartesian MRI 数据的重建。

张哥频道:电生理信号和磁共振成像 1182

基于Pgpool搭建PostgreSQL11的集群

基于Pgpool-II4.1.0搭建PostgreSQL11集群Pgpool介绍环境准备搭建配置PostgreSQL数据库配置服务器配置pgpool安装pgpool配置脚本修改测试启动停止负载均衡测试自动故障转移测试 该篇文章主要是介绍基于pgpool4.1以及PostgreSQL的流复制实现PostgreSQL的读写分离以及高可用,配置参考Pgpool-II官方文档。使用版本为Pgpool4....

小刘的博客 3068

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

PostgreSQL 流复制主从切换:完整操作手册

本文详细介绍了PostgreSQL主从切换的完整操作流程,包含8个关键步骤:检查备库状态、隔离旧主库、提升备库、验证切换、修改应用配置、配置新主库复制、重建原主库为备库以及开启同步复制。文章强调切换前的准备工作(备份数据、检查环境)和切换后的验证步骤,提供了常见问题解决方案和回滚方案,并特别警告了数据双写风险。操作涉及核心命令如pg_ctl promote、pg_basebackup等,并详细说明了各配置参数的作用。最后预告了后续关于复制监控和告警的内容。

cs231700的博客 513

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

上一篇: CentOS 7 postgresql-11.4 编译安装
下一篇: redis-3.2.10安装
取壳羊
博客等级 码龄15年 5粉丝 128原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值