From eaf66e080b871ea27c3ed6e28600d6a5a88df894 Mon Sep 17 00:00:00 2001 From: djshen Date: Tue, 19 Sep 2023 09:26:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=20'bash/=E5=A4=87=E4=BB=BDmy?= =?UTF-8?q?sql=E6=95=B0=E6=8D=AE=E5=BA=93-docker/sql-backup-docker.sh'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sql-backup-docker.sh | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 bash/备份mysql数据库-docker/sql-backup-docker.sh diff --git a/bash/备份mysql数据库-docker/sql-backup-docker.sh b/bash/备份mysql数据库-docker/sql-backup-docker.sh new file mode 100644 index 0000000..5e0b526 --- /dev/null +++ b/bash/备份mysql数据库-docker/sql-backup-docker.sh @@ -0,0 +1,27 @@ +#------数据库文件备份脚本start +#获取系统当前时间 +time=$(date "+%Y-%m-%d_%H:%M:%S") +#备份配置(根据需求设置) +storagepath="" #存储路径 +zipfilename="数据库备份_"$time".zip" #压缩包命名 +sqlname="数据库备份_"$time".sql" #sql语句命名 +user="" #数据库账号 +password="" #数据库密码 +zippassword="" #压缩密码 +deleteBakDay=30 #删除多少天(+前/-后)的数据 +#备份sql压缩包存储路径 +path=${storagepath}/${zipfilename} +#备份sql存储路径 +sqlpath=${storagepath}/${sqlname} +#docker请用下面的命令 +docker exec mysql mysqldump -u${user} -p${password} --databases 备份数据库1 备份数据库2 > $sqlpath +#压缩加密指定sql到指定文件目录下 +/usr/bin/zip -P ${zippassword} -j $path $sqlpath >/dev/null 2>&1 +#发送邮件(尚未找到合适的方法) + +#sleep 5s +# 查找并删除N天之前的备份文件 +find $storagepath -name "数据库备份_*.zip" -type f -mtime +${deleteBakDay} -exec rm -rf {} \; > /dev/null 2>&1 +# 删除sql +rm -rf $sqlpath +#------数据库文件备份脚本end \ No newline at end of file