使用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点执行一次
相关推荐
徐子元竟然被占了!!1 小时前
Linux-systemctl
linux·数据库·oracle
梁萌4 小时前
MySQL数据库分库分表介绍
数据库·mysql·shardingsphere·分库分表
_w_z_j_4 小时前
Linux----mmap
linux
程序员zgh5 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
Bigan(安)5 小时前
【奶茶Beta专项】【LVGL9.4源码分析】09-core-obj_class对象类系统
linux·c语言·mcu·arm·unix
紫郢剑侠6 小时前
飞秋@Windows +iptux@Linux,打造内网跨平台IM环境
linux·运维·服务器·im·qq
保持低旋律节奏6 小时前
linux——调试
linux·运维·服务器
牛奶咖啡136 小时前
Linux系统故障排查思路实践教程(下)
linux·运维·服务器·su命令切换用户问题解决·文件打开过多问题解决·linux网络故障问题解决·linux故障排查思路
coder4_6 小时前
Linux 数据同步全攻略:NFS 共享、inotify+rsync 与 sersync 实战指南
linux·rsync·文件共享·nfs·数据同步·inotify·实时备份
Cat God 0076 小时前
SQL使用及注意事项
数据库·sql·mysql