qshell七牛上传备份删除文件脚本支持docker数据备份


1安装qshell

       首先在服务器上要安装qshell工具,选择合适系统的版本进行下载

命令行工具(qshell)_实用工具_对象存储 - 七牛开发者中心 (qiniu.com)

上传/解压到 服务器上将它移动到/usr/bin目录下

$ mv qshell /usr/bin/
$ chmod +x /usr/bin/qshell

执行 qshell 时,如果输出了一大堆帮助信息,说明已安装成功

2配置账号

七牛云申请账号 Access Key (AK) 和 Secret Key(SK).

然后在服务器终端执行

$ qshell account <ak> <sk> <name>

执行完毕后,再运行以下命令,就可以查看所有已配置的用户信息:

$ qshell user ls

3备份脚本

1, linux 直装数据库备份到本地

#!/bin/bash
"/www/server/mysql/bin" -u"root" -p"password" "数据库名" 2> /dev/null | gzip > "/www/datrbasename.sql.gz"

2,docker数据库备份到本地

#!/bin/bash
docker exec -i "docker容器name" mysqldump -u"root" -p"password" "数据库名"  2> /dev/null | gzip > "/www/databasename.sql.gz"

docker容器name: 在终端命令输入 docker ps 即可以查到

3,备份的文件上传至七牛

#!/bin/bash
qshell rput 七牛空间名称 "databasename.sql.gz" "/www/datrbasename.sql.gz" true

4删除备份文件

1,删除本地n天以前的数据

#!/bin/bash
find "/www" -name "*.sql.gz" -type f -mtime +3 -exec rm {} \;

2,删除七牛n天以前的数据

#!/bin/bash
qshell listbucket2 七牛空间名称 --end 2023-09-09 00-00 00 -o database.list.txt
qshell batchdelete  --force 七牛空间名称 -i database.list.txt
rm -rf database.list.txt

更详细的文章 统一 上传删除备份脚本,请查看本站

mysql docker数据库定时自动备份删除+上传七牛云(qhweixin.com)