Docker mysql定时备份

 

定时备份docker部署的mysql数据

 

1.新建脚本,添加脚本内容

vi   MysqL_backup_test_backup.sh 

复制代码

#!/bin/bash
# 设置MysqL登录用户名和密码(根据实际情况填写)
MysqL_user="root"
MysqL_password="root"
MysqL_host="localhost"
MysqL_port="3306"
MysqL_charset="utf8mb4"
 
# 备份文件存放地址(根据实际情况填写)
backup_location=/usr/local
 
# 是否删除过期数据
expire_backup_delete="ON"
expire_days=7
backup_time=`date +%Y%m%d%H%M`
backup_dir=$backup_location
welcome_msg="Welcome to use MysqL backup tools!"

# 备份指定数据库中数据(此处假设数据库MysqL_backup_test)

 docker exec -it MysqL MysqLdump -h$MysqL_host -P$MysqL_port -u$MysqL_user -p$MysqL_password -B test1 > $backup_dir/MysqL_backup_test-$backup_time.sql

 
# 删除过期数据
if [ "$expire_backup_delete" == "ON" -a  "$backup_location" != "" ];then
        `find $backup_location/ -type f -mtime +$expire_days | xargs rm -rf`
        echo "Expired backup data delete complete!"
fi

复制代码

2.新建定时任务

#新建定时任务命令
crontab -e
#查看定时任务命令
crontab -l
#删除所有定时任务命令
crontab -r
43 11,23 * * * cd /root/MysqL/conf;sh MysqL_backup_test_backup.sh >> log.txt 2>>log.txt
转载于 https://www.cnblogs.com/418836844qqcom/p/12123998.html

相关文章

Docker是什么Docker是 Docker.Inc 公司开源的一个基于 LXC技...
本文为原创,原始地址为:http://www.cnblogs.com/fengzheng...
镜像操作列出镜像:$ sudo docker imagesREPOSITORY TAG IMA...
本文原创,原文地址为:http://www.cnblogs.com/fengzheng/p...
在 Docker 中,如果你修改了一个容器的内容并希望将这些更改...
在Docker中,--privileged 参数给予容器内的进程几乎相同的权...