使用MinIO Client客户端实现MySQL数据库跨机备份

安装Minio客户端

下载Linux版客户端文件

复制代码
wget https://dl.min.io/client/mc/release/linux-amd64/mc -P /usr/local/bin/
chmod +x /usr/local/bin/mc

添加目标对象

复制代码
# 给Minio服务【用户名:yourusername,密码:youruserpassword】设置一个别名minio
/home/minio/client/mc alias set minio_c_x http://22.22.22.220:9000 yourusername youruserpassword

#mc mb 命令会在22.22.22.220上创建一个名为bk-resources的桶
mc mb minio/bk-resources

MySQL本地和跨机备份(db_bk.sh)

复制代码
#!/bin/bash
DUMP_TIME=`date +'%Y%m%d_%H%M%S'`

# MySQL本机备份
mysqldump --single-transaction -uroot -pxxx -h22.22.22.220 -P3306 database_xxx > /home/backup/mysql/$DUMP_TIME.db

# MySQL跨机备份
mc cp /home/backup/mysql/$DUMP_TIME.db minio/bk-resources

MySQL备份定时清理(db_bk_clean.sh)

复制代码
#!/bin/bash
# 定时清理5天前的本地数据库备份
find /home/backup/mysql -mtime +5 -name "*.db" -exec rm -rf {} \;

# 定时清理5天前的跨机数据库备份
mc rm --recursive --force --older-than=5d minio/bk-resources

设置周期性执行脚本的任务(crontab -e)

复制代码
0 1 * * * sh /home/backup/db_bk.sh #备份MySQL:每天凌晨1点执行一次
0 1 * * * sh /home/backup/db_bk_clean.sh #删除MySQL备份:每天凌晨1点执行一次
相关推荐
GreatSQL2 小时前
gt-checksum v4.0.0 新功能解读系列文章(4):SSL 加密连接——数据校验传输安全再升级
mysql
zzzzzz3101 天前
9K Star 炸裂开源!这个 C 语言写的代码知识图谱,把 Linux 内核索引压缩到了 3 分钟
linux·服务器·sql
XIAOHEZIcode1 天前
Linux系统鼠标偏移常见原因以及修复方案
linux·运维·游戏
A小辣椒3 天前
TShark:Wireshark CLI 功能
linux
云技纵横3 天前
唯一索引 INSERT 死锁实战:5 秒复现交叉插入的 S 锁循环等待
sql·mysql
沉默王二3 天前
面试官:RAG 不用向量数据库,用 MySQL 硬扛?我:100 万向量不是很轻松?
mysql·面试·ai编程
A小辣椒3 天前
TShark:基础知识
linux
AlfredZhao3 天前
OCI 明明分配了 200G 系统盘,为什么 df 只看到 30G?
linux·oci
小猿姐4 天前
MySQL Top 10 热点问题 AI 运维实战:从内核诊断到云原生运维
mysql·云原生·aiops
AlfredZhao4 天前
vi 删除指定范围的行,不用再反复按 dd
linux·vi