docker中mysql数据定时备份_定时备份Docker中的MySQL到阿里云的OSS

1. 安装OSS工具

linux64 root用户为例

下载

cd /usr/local/bin

wget http://gosspublic.alicdn.com/ossutil/1.6.17/ossutil64

配置

cp ossutil64 ossutil

chmod 755 ossutil64

chmod 755 ossutil

生成配置文件

ossutil config

第一步输入配置文件, 直接按回车即为默 认/root/.ossutilconfig

第二步输入语言: CH

第三步输入endpoint:http://oss-cn-shenzhen.aliyuncs.com

第四步输入accessKeyID

第五步输入accessKeySecret

第六步输入stsToken:不用输, 回车即可

2. 创建备份脚本

vi /root/auto-backup.sh

#!/bin/bash

#日期

dd=`date +%Y-%m-%d-%H-%M-%S`

# /data/mysqlbackup/db-backup-$dd.sql为备份到本地位置及命名

# 文件夹需要提前创建好

docker exec mysql mysqldump -uroot -p****** --all-databases> /data/mysqlbackup/db-backup-$dd.sql

# --config-file为oss配置文件位置

# /data/mysqlbackup/db-backup-$dd.sql为备份到本地位置及命名

# oss://bucket名称/mysql/db-backup-$dd.sql为存到oss的位置

/usr/local/bin/ossutil --config-file=/root/.ossutilconfig cp /data/mysqlbackup/db-backup-$dd.sql oss://bucket名称/mysql/db-backup-$dd.sql

# 删除本地文件

rm -f /data/mysqlbackup/db-backup-$dd.sql

echo "db-backup-$dd.sql backup success"

2.1. 更改脚本权限

chmod 755 /root/auto-backup.sh

3. 创建定时任务

crontab -e

# 每天备份一次, 输出重定向到/var/log/crontab/mysql.log

# /var/log/crontab/文件夹需要提前创建

0 0 * * * /root/auto-backup.sh > /var/log/crontab/mysql.log 2>&1 &

.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值