当前位置: 首页 > news >正文

openGauss 6.0 主备集群备份与恢复实战指南:基于 gs_probackup

1. 概述

本文档详细介绍了在 openGauss 6.0 环境下,如何利用gs_probackup工具进行数据库的全量备份、增量备份以及在模拟故障后的集群数据恢复操作。

2. 前提条件

在开始备份操作前,请确保满足以下环境要求:

  • 数据库状态:能够正常连接 openGauss 数据库 。
  • 增量备份配置:若需使用 PTRACK 增量备份,必须在 postgresql.conf 中设置 enable_cbm_tracking = on 。
  • 日志保留设置:为防止传输过程中 xlog 被清理,建议适当调高 postgresql.conf 中的 wal_keep_segments 参数值 。

3. 备份环境初始化

主备集群环境:

序号

主机名

IP地址

操作系统版本

网卡

数据库版本

1

gauss61

192.192.103.61

Centos7.9

ens192

openGauss6.0.2

2

gauss62

192.192.103.62

Centos7.9

ens192

openGauss6.0.2

3.1 查看版本信息

确认工具版本与数据库版本匹配。

[omm@gauss61 backup]$ gs_probackup version # 输出示例:gs_probackup (openGauss 6.0.2 build 6285c0ef)

3.2 创建并初始化备份目录

创建物理存储路径并进行初始化。

# 创建物理目录

[omm@gauss61]$ mkdir -p /opengauss/pbackup

# 初始化备份路径(目录必须为空)

[omm@gauss61]$ gs_probackup init -B /opengauss/pbackup/

初始化后,目录下将生成 backups 和 wal 两个核心子目录 。

3.3 初始化备份实例

将特定的数据目录关联到备份实例中,并生成配置文件 pg_probackup.conf 。

[omm@gauss61 backup]$ gs_probackup add-instance -B /opengauss/pbackup/ -D /opengauss/install/data/dn1 --instance instance_local

4. 实施备份操作

4.1 执行全量备份 (FULL)

全量备份是增量备份的基础。

[omm@gauss61 backup]$ gs_probackup backup -B /opengauss/pbackup/ --instance instance_local -d postgres -b FULL

注:系统会自动校验数据块校验和(checksums),并估算所需磁盘空间 。

4.2 执行增量备份 (PTRACK)

基于 PTRACK 模式进行增量备份,仅记录自上次备份以来发生变化的数据块 。

[omm@gauss61 backup]$ gs_probackup backup -B /opengauss/pbackup/ --instance instance_local -d postgres -b PTRACK

4.3 查看备份列表

通过 show 命令验证备份状态,确保 Status 为 OK 。

[omm@gauss61 backup]$ gs_probackup show -B /opengauss/pbackup/

5. 灾难恢复演练

5.1 模拟故障

  1. 停止集群:gs_om -t stop 。
  2. 模拟损坏:重命名(删除)主备节点的数据目录 dn1 。

5.2 恢复主节点数据

使用RESTORE命令将数据恢复至模拟损坏前的状态。

[omm@gauss61 ~]$ gs_probackup restore -B /opengauss/pbackup/ --instance instance_local -D /opengauss/install/data/dn1

系统会自动验证备份链的完整性并执行恢复 。

5.3 启动集群与备节点修复

1.启动集群:执行 gs_om -t start 。

2.查看状态:若发现备节点处于 Down 或 Disk damaged 状态,需手动重建 。

  1. 修复配置
    • 从主节点拷贝 postgresql.conf 到备节点 。
    • 修改备节点的 local_bind_address 和 replconninfo1(将 IP 指向对应的本地和对端地址) 。
  2. 执行备节点重建

[omm@gauss62 ~]$ gs_ctl build -D /opengauss/install/data/dn1 -b full

6. 验证恢复结果

待集群状态恢复为 Normal 后 ,登录数据库查看主备同步状态:

openGauss=# select * from pg_stat_replication;

当 state 显示为 Streaming 且 sync_state 符合预期(如 Async/Sync)时,表示数据库恢复成功 。

http://www.jsqmd.com/news/375234/

相关文章:

  • 实用指南:【会员专享数据】2000-2022年全国逐年增强型植被指数(EVI)栅格数据
  • 洛谷 P7295 [USACO21JAN] Paint by Letters P 题解
  • 中科曙光拟募资80亿加码AI算力 信创产业步入“系统攻坚”新阶段
  • 为什么我劝你别急着买系统,先试试积木坞零代码
  • WC2026 游记
  • 【节点】[Ambient节点]原理解析与实际应用
  • 智能产品推荐AI系统的行业应用,AI应用架构师的案例分享
  • 掌握AI原生应用领域语义搜索,提升竞争力
  • 同步发电机三相短路暂态过程的计算方法与MATLAB/Simulink仿真
  • CSS3 多媒体查询实例【1】 - 教程
  • 提示工程质量管理终极指南:从新手到专家的必经之路
  • 算法题-11
  • 探索Agentic AI上下文工程安全的技术创新,提示工程架构师的探索与实践
  • 算法题-12
  • Markdown学习笔记2.2分级标题
  • 2026.2.12
  • 基于 OpenCV 的模板匹配技巧实例
  • 题解:P14614 [2019 KAIST RUN Fall] Bigger Sokoban 40k
  • 鸿蒙架构师修炼之道-如何成为团队的架构师
  • 全链路Token智控,「秒云Tokens管家」解锁AI工程优化新范式
  • MIAOYUN | 每周AI新鲜事儿 260212
  • 用 Go 实现一个可长期运行的 GitHub Webhook 服务实践
  • wpf自适应布局
  • 理性愉悦:分块套 NTT
  • 手搓一个Clawdbot
  • Markdown语法学习笔记2.1对字体设置斜体、粗体、删除线
  • 软件架构能力和任务分解编排能力是Ai大浪潮下的核心技能
  • 比尼德斯实业有限公司是干嘛的?文登教育
  • 在python 3.14 容器中安装和使用chdb包
  • Markdown语法学习笔记1快捷键