news 2026/5/1 8:55:49

HoRain云--openGauss高可用主备搭建全攻略

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
HoRain云--openGauss高可用主备搭建全攻略

🎬 HoRain 云小助手:个人主页

⛺️生活的理想,就是为了理想的生活!


⛳️ 推荐

前些天发现了一个超棒的服务器购买网站,性价比超高,大内存超划算!忍不住分享一下给大家。点击跳转到网站。

目录

⛳️ 推荐

openGauss高可用之主备分开搭建教程

一、环境准备

1.1 服务器要求

1.2 软件准备

1.3 系统配置(主备机都要执行)

二、安装OpenGauss

2.1 主节点安装

2.2 备节点安装

三、主节点配置

3.1 编辑postgresql.conf

3.2 编辑pg_hba.conf

3.3 重启主节点数据库

3.4 创建复制槽

四、备节点配置

4.1 初始化备节点数据库

4.2 编辑postgresql.conf

4.3 创建recovery.conf文件

五、数据同步与启动

5.1 执行基础备份

5.2 启动备节点数据库

六、验证主备同步

6.1 检查主备状态

6.2 测试数据同步

七、高可用架构优势

八、注意事项


openGauss高可用之主备分开搭建教程

一、环境准备

1.1 服务器要求

1.2 软件准备

1.3 系统配置(主备机都要执行)

# 设置字符集 vi /etc/profile export LANG=en_US.UTF-8 source /etc/profile # 修改Python版本(如需要) cd /usr/bin mv python python.bak ln -s python3 /usr/bin/python # 关闭防火墙 systemctl disable firewalld.service systemctl stop firewalld.service # 关闭SELinux vi /etc/selinux/config SELINUX=disabled # 关闭swap swapoff -a # 关闭RemoveIPC vi /etc/systemd/logind.conf # 修改"RemoveIPC"值为"no"

二、安装OpenGauss

2.1 主节点安装

# 创建安装目录 mkdir -p /opt/software/openGauss/ # 下载安装包(以x86架构为例) wget https://opengauss.obs.cn-south-1.myhuaweicloud.com/5.0.0/x86_openEuler/openGauss-5.0.0-openEuler-64bit-all.tar.gz # 解压安装包 tar -zxvf openGauss-5.0.0-openEuler-64bit-all.tar.gz tar zxvf openGauss-5.0.0-openEuler-64bit-om.tar.gz # 修改目录权限 chmod 755 -R /opt/software/openGauss/ # 执行安装 cd /opt/software/openGauss/script/ ./install.sh -w YourPassword -p 5432

2.2 备节点安装

备节点安装步骤与主节点类似,但先不要启动数据库服务

三、主节点配置

3.1 编辑postgresql.conf

sudo vi $PGDATA/postgresql.conf

修改以下参数:

listen_addresses = '*' # 允许所有IP连接 wal_level = replica # 设置WAL日志级别为replica max_wal_senders = 10 # 最大WAL发送进程数 wal_keep_segments = 32 # 保留的WAL段数量 synchronous_standby_names = 'standby1' # 同步备节点名称

3.2 编辑pg_hba.conf

sudo vi $PGDATA/pg_hba.conf

添加备节点的访问权限(假设备节点IP为192.168.1.2):

host replication all 192.168.1.2/32 md5

3.3 重启主节点数据库

gs_ctl restart -D $PGDATA

3.4 创建复制槽

# 登录数据库 psql -U omm -d postgres # 创建物理复制槽 SELECT * FROM pg_create_physical_replication_slot('standby1_slot');

四、备节点配置

4.1 初始化备节点数据库

gs_initdb -D $PGDATA

4.2 编辑postgresql.conf

sudo vi $PGDATA/postgresql.conf

修改以下参数:

wal_level = replica hot_standby = on # 允许备节点提供只读查询 max_standby_streaming_delay = 30s wal_receiver_status_interval = 10s

4.3 创建recovery.conf文件

sudo vi $PGDATA/recovery.conf

添加以下内容(假设主节点IP为192.168.1.1):

standby_mode = 'on' primary_conninfo = 'host=192.168.1.1 port=5432 user=replication_user password=replication_password' recovery_target_timeline = 'latest'

五、数据同步与启动

5.1 执行基础备份

在主节点执行:

gs_basebackup -D /backup_path -Ft -p 5432 -U omm -X stream -R

将备份数据传输到备节点:

scp -r /backup_path/* standby_user@192.168.1.2:/path/to/pgdata/

5.2 启动备节点数据库

gs_ctl start -D $PGDATA

备服务器将自动连接到主服务器并开始同步数据。

六、验证主备同步

6.1 检查主备状态

在主节点上:

SELECT * FROM pg_stat_replication;

在备节点上:

SELECT * FROM pg_stat_wal_receiver;

6.2 测试数据同步

在主节点上执行一些数据库操作:

CREATE TABLE test_sync(id INT, name VARCHAR(50)); INSERT INTO test_sync VALUES(1, 'test');

然后在备节点上查询:

SELECT * FROM test_sync;

如果能查询到相同的数据,说明主备同步成功。

七、高可用架构优势

根据知识库信息,openGauss的高可用架构具有以下特点:

  1. 传统主备架构

  2. DCF自仲裁架构(基于Paxos协议):

八、注意事项

  1. 网络要求:主备数据库实例之间网络时延要求≤100毫秒
  2. 磁盘规格:如果磁盘混合部署,应采用低配部分的规格
  3. 容灾用户:搭建容灾前需要在主集群创建容灾用户,密码不可修改
  4. 升级维护:容灾状态下仅支持灰度升级,需先升级主集群,再升级备集群
  5. 安全性:建议使集群内的网络平面与跨集群网络平面分离,提高安全性

通过以上步骤,您已成功搭建了openGauss主备高可用环境,主服务器提供主要的读写功能,备服务器同步数据并保持与主服务器的一致性,实现高可用性和故障恢复能力。

❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄

💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍

🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/1 8:35:24

当灰度发布遇见强化学习:地理围栏测试的范式升级

一、痛点直击:传统测试的三大困局 长尾路径覆盖不足:人工脚本难以模拟用户地理位置的动态跳跃(如GPS漂移、跨区域瞬移),导致边界条件漏测率高达34% 策略调优成本高昂:围栏半径、响应延迟等参数需数千次AB测…

作者头像 李华
网站建设 2026/5/1 7:20:30

程序员PPT焦虑终结者:百考通AI如何用智能重塑演示文稿创作

在技术分享、项目汇报、论文答辩乃至各类工作会议中,PPT已成为我们传递思想、展示成果的核心载体。然而,一份优秀的PPT背后,往往是无数个深夜的辗转反侧:纠结于逻辑框架,挣扎于排版设计,迷失在海量模板中。…

作者头像 李华
网站建设 2026/5/1 5:03:24

别再让格式和期刊要求卡住你的论文:让百考通AI助力科研加速

在科研的漫长征途上,最令人疲惫的或许并非探索未知时的迷茫,而是将宝贵研究成果转化为一篇符合期刊要求的论文时,所面对的那些“琐碎的障碍”。选题的价值如何凸显?目标期刊的偏好是什么?繁琐的格式规范如何一次性搞定…

作者头像 李华
网站建设 2026/5/1 5:03:44

JS 里最“邪门”的两种语句:标签语句和 with,你敢用吗?

有一年,我在改一段“祖传代码”。那种代码你一眼看过去就知道: 注释是 2013 年写的 变量名叫 a1、a2、temp3 缩进全靠感觉 最关键的是——你不敢删一行 我正准备跑路的时候,突然看到这样一段代码: 我当场愣住。break 后面居然跟了个名字? 我心里一万个问号: break 不是只…

作者头像 李华
网站建设 2026/5/1 2:37:04

mybatis-plus 基于 Mapper接口的 select

文章目录基于BaseMapper的crud总结前置准备(必看)各方法使用示例(在 UserService 中编写)1. selectById:根据 ID 查询单个实体2. selectOne:根据条件查询单个记录3. selectBatchIds:批量根据 ID…

作者头像 李华