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

KingBase 备份操作手册

目录标题

  • KingBase 备份操作手册
    • 目录
    • 1. 环境信息
    • 2. 备份架构概述
      • 备份工具说明
    • 3. Kubernetes 层面操作
      • 3.1 环境准备
      • 3.2 创建备份任务
        • 全量备份
        • 增量备份
        • 日志备份/归档
        • 清理备份
      • 3.3 取消备份任务
        • 取消所有备份任务
        • 取消指定备份任务
      • 3.4 查看备份状态
    • 4. 数据库层面命令
      • 4.1 进入数据库 Pod
      • 4.2 全量备份
      • 4.3 增量备份
      • 4.4 差异备份
      • 4.5 WAL 日志归档
      • 4.6 备份清理(过期备份)
    • 5. 当前备份策略
      • 5.1 定时任务配置
      • 5.2 配置文件内容
    • 6. 备份文件位置
      • 6.1 本地备份目录
      • 6.2 容器内挂载目录
      • 6.3 备份信息文件
    • 7. 常用管理命令
      • 7.1 查看备份信息
      • 7.2 检查备份配置
      • 7.3 查看备份日志
      • 7.4 备份集操作
    • 8. 故障排查
      • 8.1 备份状态检查
      • 8.2 日志查看
      • 8.3 常见问题
    • 附录
      • A. sys_rman 命令参考
      • B. 备份类型对比
      • C. 快速命令参考

KingBase 备份操作手册

目录

  • 1. 环境信息
  • 2. 备份架构概述
  • 3. Kubernetes 层面操作
  • 4. 数据库层面命令
  • 5. 当前备份策略
  • 6. 备份文件位置
  • 7. 常用管理命令
  • 8. 故障排查

1. 环境信息

项目
实例名称kingbase-ffd105d6
命名空间qfusion-admin
主节点 Podkingbase-ffd105d6-replica0-0
备节点 Podkingbase-ffd105d6-replica1-0
备份资源kingbase-ffd105d6-backup
备份工具sys_rman (pgBackRest 2.27)
数据库版本KingBase ES V8 (基于 PostgreSQL 12)

2. 备份架构概述

┌─────────────────────────────────────────────────────────────────┐ │ Kubernetes 集群 │ │ ┌────────────────────────────────────────────────────────────┐ │ │ │ qfusion-admin Namespace │ │ │ │ │ │ │ │ ┌─────────────────────┐ ┌─────────────────────────┐ │ │ │ │ │ Backup CR │ │ KingBase Pods │ │ │ │ │ │ kingbase-ffd105d6 │───▶│ replica0-0 (Primary) │ │ │ │ │ │ -backup │ │ replica1-0 (Standby) │ │ │ │ │ └─────────────────────┘ └─────────────────────────┘ │ │ │ │ │ │ │ │ │ ▼ │ │ │ │ ┌─────────────────┐ │ │ │ │ │ sys_rman │ │ │ │ │ │ (pgBackRest) │ │ │ │ │ └─────────────────┘ │ │ │ └────────────────────────────────────────────────────────────┘ │ │ │ │ ┌────────────────────────────────────────────────────────────┐ │ │ │ Storage: S3 (S3地址@备份桶:9090) │ │ │ └────────────────────────────────────────────────────────────┘ │ └─────────────────────────────────────────────────────────────────┘

备份工具说明

  • 工具名称: sys_rman (KingBase 版 pgBackRest)
  • 版本: 2.27
  • 二进制路径:/install/kingbase/bin/sys_rman
  • 配置文件:/mnt/configs/sys_rman.conf
  • 日志路径:/opt/Kingbase/ES/V8/kingbase/log/kingbase-backup.log

3. Kubernetes 层面操作

3.1 环境准备

# 设置集群配置exportKUBECONFIG=/bpx/.xx-admin.conf# 或使用别名source/bpx/.bpx

3.2 创建备份任务

全量备份
kubectl annotate backup kingbase-ffd105d6-backup job/full=manual -n qfusion-admin
增量备份
kubectl annotate backup kingbase-ffd105d6-backup job/inc=manual -n qfusion-admin
日志备份/归档
kubectl annotate backup kingbase-ffd105d6-backup job/log=manual -n qfusion-admin
清理备份
kubectl annotate backup kingbase-ffd105d6-backup job/clean=manual -n qfusion-admin

3.3 取消备份任务

取消所有备份任务
kubectl annotate backup kingbase-ffd105d6-backup job/cancel=ALL -n qfusion-admin
取消指定备份任务
kubectl annotate backup kingbase-ffd105d6-backup job/cancel=<backup_id>-n qfusion-admin

3.4 查看备份状态

# 查看备份资源状态kubectl get backup kingbase-ffd105d6-backup -n qfusion-admin# 查看备份任务历史kubectl get job -n qfusion-admin|grepkingbase-ffd105d6# 查看备份 Pod 状态kubectl get pods -n qfusion-admin|grepkingbase.*backup# 查看 backup 详细信息kubectl describe backup kingbase-ffd105d6-backup -n qfusion-admin

4. 数据库层面命令

4.1 进入数据库 Pod

kubectlexec-it kingbase-ffd105d6-replica0-0 -n qfusion-admin -- /bin/bash

4.2 全量备份

/install/kingbase/bin/sys_rman backup\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase\--type=full\--compress-level=6\--process-max=2\--start-fast

参数说明:

参数说明
--config配置文件路径/mnt/configs/sys_rman.conf
--stanza备份集名称kingbase
--type备份类型full(全备) /incr(增量) /diff(差异)
--compress-level压缩级别6(0-9)
--process-max最大并行进程数2
--start-fast快速启动备份启用后立即开始备份

4.3 增量备份

/install/kingbase/bin/sys_rman backup\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase\--type=incr\--compress-level=6\--process-max=2\--start-fast

4.4 差异备份

/install/kingbase/bin/sys_rman backup\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase\--type=diff\--compress-level=6\--process-max=2\--start-fast

4.5 WAL 日志归档

/install/kingbase/bin/sys_rman archive-push\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase

4.6 备份清理(过期备份)

/install/kingbase/bin/sys_rman expire\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase

5. 当前备份策略

5.1 定时任务配置

备份类型Cron 表达式执行时间保留策略
全量备份56 4 * * 0每周日 04:56保留 2 份
增量备份56 4 * * 1,2,3,4,5,6周一至周六 04:56依赖全备
日志备份2 * * * *每小时 02 分启用
备份清理39 23,7,15 * * *每天 23:39、07:39、15:39自动清理

5.2 配置文件内容

[kingbase] kb1-path=/opt/Kingbase/ES/V8/kingbase/data kb1-port=54321 kb1-user=esrep kb2-path=/opt/Kingbase/ES/V8/kingbase/data kb2-port=54321 kb2-user=esrep kb2-host=245.0.0.217 kb2-host-user=kingbase [global] repo1-path=/backrestrepo/kingbase-ffd105d6-backups repo1-retention-full=2 log-path=/opt/Kingbase/ES/V8/kingbase/log log-level-file=info log-level-console=info log-subprocess=y process-max=2 compress-type=gz compress-level=6 start-fast=y link-all=y band-width=0 non-archived-space=1024 archive-timeout=1800

6. 备份文件位置

6.1 本地备份目录

/backrestrepo/kingbase-ffd105d6-backups/ ├── backup/ │ └── kingbase/ │ ├── 20260203-144518F/ # 全备备份集 │ ├── 20260203-160642F/ # 全备备份集 │ └── backup.info # 备份元信息 └── archive/ └── kingbase/ └── 12-1/ └── 0000000100000000/ # WAL 归档文件

6.2 容器内挂载目录

/opt/mnt/kingbase-ffd105d6-backups/# 备份存储目录

6.3 备份信息文件

# 查看备份信息cat/opt/mnt/kingbase-ffd105d6-backups/backup/kingbase/backup.info

7. 常用管理命令

7.1 查看备份信息

# 查看所有备份集信息/install/kingbase/bin/sys_rman info\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase# 查看备份列表/install/kingbase/bin/sys_rman repo-ls\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase\--repo=1

7.2 检查备份配置

/install/kingbase/bin/sys_rman check\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase

7.3 查看备份日志

# 查看最新备份日志tail-f /opt/Kingbase/ES/V8/kingbase/log/kingbase-backup.log# 查看备份历史cat/opt/Kingbase/ES/V8/kingbase/log/kingbase-backup.log|grep"backup command begin"

7.4 备份集操作

# 查看备份集详情/install/kingbase/bin/sys_rman info\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase\--set=20260203-144518F# 合并备份集/install/kingbase/bin/sys_rman merge\--config=/mnt/configs/sys_rman.conf\--stanza=kingbase

8. 故障排查

8.1 备份状态检查

# Kubernetes 层面检查kubectl get backup kingbase-ffd105d6-backup -n qfusion-admin -o yaml# 查看 running 和 queueing 任务kubectl get backup kingbase-ffd105d6-backup -n qfusion-admin\-ojsonpath='{.status.conditions[?(@.type=="RUNNING_JOBS")].status}'kubectl get backup kingbase-ffd105d6-backup -n qfusion-admin\-ojsonpath='{.status.conditions[?(@.type=="QUEUEING_JOBS")].status}'

8.2 日志查看

# 查看 backup-set-controller 日志kubectl logs -n qfusion -lapp=backup-set-worker --tail=100# 查看数据库备份日志kubectlexec-it kingbase-ffd105d6-replica0-0 -n qfusion-admin --\tail-100 /opt/Kingbase/ES/V8/kingbase/log/kingbase-backup.log

8.3 常见问题

问题可能原因解决方法
备份任务不执行Cron 表达式错误检查 backup CR 中的 schedule 配置
备份失败存储空间不足检查 PV 容量,执行清理
WAL 归档失败archive_mode 未启用检查数据库参数配置
备份超时网络问题或数据量过大增加 archive-timeout 参数

附录

A. sys_rman 命令参考

命令说明
backup执行备份
restore恢复数据库
info查看备份信息
check检查备份配置
expire清理过期备份
archive-push推送 WAL 到归档
archive-get从归档获取 WAL
stanza-create创建备份集
stanza-delete删除备份集
repo-ls列出仓库文件

B. 备份类型对比

类型说明备份时间恢复时间存储空间
Full完整备份所有数据文件最长最快最大
Diff自上次全备后的变更中等中等中等
Incr自上次备份后的变更最短最慢最小

C. 快速命令参考

# 快速全备kubectl annotate backup kingbase-ffd105d6-backup job/full=manual -n qfusion-admin# 快速增备kubectl annotate backup kingbase-ffd105d6-backup job/inc=manual -n qfusion-admin# 快速归档kubectl annotate backup kingbase-ffd105d6-backup job/log=manual -n qfusion-admin# 快速清理kubectl annotate backup kingbase-ffd105d6-backup job/clean=manual -n qfusion-admin# 取消所有任务kubectl annotate backup kingbase-ffd105d6-backup job/cancel=ALL -n qfusion-admin

文档版本: 1.0
更新日期: 2026-02-03
维护者: QFusion Team



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

相关文章:

  • 收藏级|大模型学习不踩坑!小白程序员必看的“3阶9步”极简入门框架
  • 《升鲜宝供应链管理系统 功能详情说明(完整版)》
  • 从架构设计到实战策略:如何让公有云多可用区部署“永不宕机”?
  • 收藏必备!大模型智能体8大核心概念全解析,程序员入门必看指南
  • 加入大厂,却落入了边缘业务:这是职业选择的必然代价吗?
  • 从入门到年薪百万:AI大模型学习路线与技能图谱(必收藏)
  • 【强烈推荐】大模型Agent实战指南:能“自己想、自己干、自己复盘“的才是好Agent,5大主流框架对比与应用
  • 上海靠谱电子产品开发,实邦电子经验丰富吗?
  • 厦门大学等突破AI自学限制:让计算机为自己量身定制学习计划
  • AI提示设计中,如何让用户“有成就感”?提示工程架构师的4个技巧
  • 程序员的价值与社会贡献
  • Linux系统架构理解
  • “入坑网安后悔一时,不入坑后悔一辈子!” 数字世界的守护者们,共勉!
  • 让大模型能自己想出安全方案——KAIST团队的突破性研究
  • 探索AI提示工程国际化与本地化,提示工程架构师的独特视角
  • openclaw(大龙虾)+飞书保姆级windows安装教程
  • 全面评测2026年免费降低AI率工具,那款工具降AI率最有效?
  • 农作物病虫害检测识别系统|基于YOLOv11+Pytorch + Flask + > SpringBoot|支持玉米、水稻、番茄、草莓病害检测(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定
  • 【Python高级编程】近似串匹配
  • AI应用架构师的神操作:企业级LLM定制化方案深度剖析
  • 数字员工助推熊猫智汇提升AI销售工具效能与业务转型
  • AI赋能下编程职业的新角色与职责深入探讨
  • AgentScope 深度解读:多智能体开发框架的工程化实践
  • 【建议收藏】一文读懂大语言模型(LLM)的内部工作机制:分词、嵌入与注意力详解
  • 《量子计算与AI跨界融合:AI应用架构师的核心竞争力打造攻略》
  • 基于金枪鱼群优化算法优化人工神经网络预测附Matlab代码
  • 数据中台建设中的数据集成技术
  • 建议这几个行业的跨境人,碰一碰日本市场
  • YOLO26涨点改进 | 全网独家、卷积创新改进篇 | TGRS 2025 | 引入CLGM上下文层级引导特征提取模块,为红外小目标检测提供更可靠的细节与语义融合能力,助力YOLO26有效涨点
  • 粒子群算法+灰狼算法+遗传算法+改进粒子群算法生产线排产调度附Matlab代码