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

分布式数据库备份实践

在分布式备份中可以采取两种方式进行备份,一种是采用手动编写backup.yml文件进行备份,另外一种是吧备份过程交给备份工具自动执行。如果需要个性化进行备份,建议采用手动编写备份文件方式进行备份。
以下是针对两种备份方式的实践:
集群状态
image.png

备份方案一

通过手动调整分布式节点archiv_command参数,并编写backup.yml文件进行编写

ha_ctl set gtm gtm1 -p archive_command="'scp %p 10.xx.xx.199:/backup/gtm_wal/%f'" -c panwei -l http://10.xx.xx.199:2379
ha_ctl set datanode dn1_1 -p archive_command="'scp %p 10.xx.xx.199:/backup/dn1_wal/%f'" -c panwei -l http://10.xx.xx.199:2379
ha_ctl set datanode dn1_2 -p archive_command="'scp %p 10.xx.xx.199:/backup/dn1_wal/%f'" -c panwei -l http://10.xx.xx.199:2379
## CN节点可以不做归档设置,并且不需要进行备份
## 同时建议同一分片的不同副本,如:dn1_1、dn1_2、dn1_3等副本设置归档路径为同一主机同一路径下,即使数据库发生主备切换,仍然方便收集归档日志文件。

image.png

vi /software/backup.yml
gtm:backup_host: 10.xx.xx.199backup_dir: /software/gtmtbs_dir: /software/gtm_tbs
datanode:- dn1:backup_host: 10.xx.xx.199backup_dir: /software/dn1tbs_dir: /software/dn1_tbs

通过备份命令

## 进行全量备份
ha_ctl backup all -p /software -c panwei -U test -W 'xxxxxx' -l http://10.xx.xx.199:2379

image.png

## 进行增量备份
ha_ctl backup all -a '-b PTRACK' -p /software -c panwei -U test -W 'xxxxxx' -l http://10.xx.xx.199:2379

image.png

## 查看备份集
ha_ctl backup show -p /software -l http://10.xx.xx.199:2379

image.png

## 校验备份集
ha_ctl backup validate -p /software -l http://10.xx.xx.199:2379

image.png

备份方案二

通过填写备份文件模板进行备份。

vi /software/backup_new.yml
backup_host: 192.168.174.170 #or local
backup_dir: /software

备份命令

## 进行全量备份
ha_ctl backup all -p /software -c panwei -U test -W 'xxxxxx' -l http://10.xx.xx.199:2379

image.png
同时在通过填写备份文件模板自动备份时,我们可以发现,备份工具对我们数据库参数进行自动设置,对比备份前后的gtm以及dn节点的archive_command参数值,备份工具自动进行调整为备份路径,从而设置归档路径。
image.png

## 进行增量备份
ha_ctl backup all -a '-b PTRACK' -p /software -c panwei -U test -W 'xxxxxx' -l http://10.xx.xx.199:2379

image.png

## 查看备份集
ha_ctl backup show -p /software -l http://10.xx.xx.199:2379

image.png

## 校验备份集
ha_ctl backup validate -p /backup_new -l http://10.xx.xx.199:2379

image.png

http://www.lryc.cn/news/2391991.html

相关文章:

  • 如何发布npm包?
  • 鸿蒙---使用真机模拟器的时候,图片不加载问题
  • 实验设计与分析(第6版,Montgomery)第5章析因设计引导5.7节思考题5.6 R语言解题
  • .NET 8使用AOT发布ASP.NET Core应用
  • OpenCV计算机视觉实战(8)——图像滤波详解
  • Docker 前端镜像容器部署指南
  • OpenAI大模型不听人类指令事件的技术分析与安全影响
  • 图神经网络实战——图的可视化
  • 自动化安全脚本学习
  • github公开项目爬取
  • 用豆包写单元测试
  • 传输层协议TCP(上)
  • Windows下安装并使用kubectl查看K8S日志
  • Hive 分区详解:从基础概念到实战应用
  • Android studio进阶开发(六)--如何用真机通过okhttp连接服务器
  • 如何解决网站服务器的异常问题?
  • WeakAuras Lua Script [ICC BOSS 11 - Sindragosa]
  • 用户界面禁忌——基础原则
  • 电脑开机后出现bootmgr is conmpressed原因及解决方法
  • vite配置一个css插件
  • React+Taro 微信小程序做一个页面,背景图需贴手机屏幕最上边覆盖展示
  • Spring框架学习day4--Spring集成Mybatis(IOC)
  • 太阳系运行模拟程序-html动画
  • 【C++ Qt】容器类(GroupBox、TabWidget)内附思维导图 通俗易懂
  • SOC-ESP32S3部分:18-串口
  • CSS 样式表的四种应用方式及css注释的应用小结
  • 五、web安全--XSS漏洞(2)--XSS相关payload
  • AI架构师的新工具箱:ChatGPT、Copilot、AutoML、模型服务平台
  • 关于智能体接入后端,在Apifox能够传参数给智能体的测试
  • 有铜半孔工艺的制造难点与工艺优化