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

k8s上运行的mysql、mariadb数据库的备份记录

文章目录

  • 前言
  • 一、获取需要备份的数据库的信息
  • 二、备份步骤
    • 1.准备工作
    • 2.手动备份
    • 3.定时任务自动备份
  • 总结


前言

记录一下在k8s运行的数据库的备份步骤。
我的思路是新建一个数据库的容器作为工具容器,通过工具容器执行mysqldump命令进行备份,最后通过定时任务来执行命令。没有涉及保留时间的问题


一、获取需要备份的数据库的信息

kubectl get svc -A 
mariadb                    mariadb                                   ClusterIP   10.233.20.235   <none>        3306/TCP                                         71d
mariadb                    mariadb-nodeport                          NodePort    10.233.31.133   <none>        3306:30901/TCP 

二、备份步骤

1.准备工作

# 准备备份目录
mkdir -p /data/backup/mysql/
# 获取镜像
docker pull dockerpull.cn/bitnami/mariadb:10.5.11-debian-10-r0
# 运行备份用数据库容器
docker run --name  mariadb-bak-tool -d  -e TZ=Asia/Shanghai -e MARIADB_ROOT_PASSWORD=passwd@123456      dockerpull.cn/bitnami/mariadb:10.5.11-debian-10-r0

2.手动备份

# 利用pod的容器网络的IP连接
/usr/bin/docker exec -it mariadb-bak-tool mysqldump -uroot -ppasswd@123456 --host=10.233.20.235 --port=3306 --all-databases > /data/backup/mysql/all_databases_backup_$(date +"%Y%m%d-%H:%M").sql# 使用nodeport连接
/usr/bin/docker exec -it mariadb-bak-tool mysqldump -uroot -ppasswd@123456 --host=XXX.XX.XX.XX --port=30901 --all-databases > /data/backup/mysql/all_databases_backup_$(date +"%Y%m%d-%H:%M").sql

3.定时任务自动备份

10 6 * * * /usr/bin/docker exec mariadb-bak-tool mysqldump -uroot -ppasswd@123456 --host=XXX.XX.XX.XX --port=30901 --all-databases > /data/backup/mysql/all_databases_backup_$(date +"\%Y\%m\%d-\%H:\%M").sql 2>&1

注意:

  • cron环境中不支持交互式终端,需要去掉-it参数
  • crontab中百分号需要转义

总结

记录一下,后续在项目中用。

相关文章:

  • IT选型指南:电信行业需要怎样的服务器?
  • uniapp分包配置,uniapp设置subPackages
  • SpringIOC中Bean生命周期
  • TeleAI发布TeleChat2.5及T1正式版,双双开源上线魔乐社区!
  • 如何应对客户对项目进度的过度干预
  • 低代码——表单生成器Form Generator详解(二)——从JSON配置项到动态渲染表单渲染
  • 若依框架 账户管理 用户分配界面解读
  • SpringBoot使用MQTT协议简述
  • 十、【核心功能篇】项目与模块管理:前端页面开发与后端 API 联调实战
  • 华为OD机试真题——阿里巴巴找黄金宝箱(II)(2025A卷:100分)Java/python/JavaScript/C/C++/GO最佳实现
  • leetcode450.删除二叉搜索树中的节点:迭代法巧用中间节点应对多场景删除
  • Oracle的NVL函数
  • MCP协议开发规范
  • 第八章 Wireshark工具的安装与使用
  • 数据治理是什么意思?数据治理平台有哪些?
  • JDBC 核心执行流程详解
  • Python对接GPT-4o API接口:聊天与文件上传功能详解
  • [预训练]Encoder-only架构的预训练任务核心机制
  • 【大模型/MCP】MCP简介
  • 【论文精读】2024 CVPR--Upscale-A-Video现实世界视频超分辨率(RealWorld VSR)
  • 网站开发 php python/接外贸订单的渠道平台哪个好
  • 秦皇岛汽车网站制作/免费建站工具
  • 企业免费网站优化方案/人工智能培训一般多少钱
  • 做企业网站的第一步需要啥/最佳的资源搜索引擎
  • 网站建设与管理必修/推广公众号
  • 厦门小型网站建设/鞍山网络推广