debian mysql 定时自动备份的脚本

本文介绍了一个用于MySQL数据库备份的Shell脚本,该脚本能够每天自动生成备份并压缩,同时清理15天之前的旧备份。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

#!/bin/sh
LOG=/var/log/mysql-backup.log
# mysql db info
USER_ROOT=XXXXXX
USER_PWD=XXXXXXX
# mysql data stored dir
TODAY=`date +%F`
STOREDIR=/mnt/tf-card/mysql-back/$TODAY
mkdir $STOREDIR
echo "*** PATH:$STOREDIR mysql-backup ***" >> $LOG
# delete overtime backup files
rm -rf /mnt/tf-card/mysql-back/$(date +%F --date='15 days ago')
# backup mysql data file
mysqldump -u$USER_ROOT --password=$USER_PWD --databases my_yd_net --lock-all-tables --flush-logs |gzip>$STOREDIR/my_yd_net.sql.gz


------------------

创建脚本:nano /etc/cron.daily/mysql-backup

增加执行权限:chmod +x /etc/cron.daily/mysql-backup

创建备份文件根目录:mkdir /mnt/tf-card/mysql-back/


解释:此脚本每天会生成一个备份目录,/mnt/tf-card/mysql-back/yyyy-mm-dd/xxxx.sql.gz,并持保留15天内的数据,并对导出的sql文件用gzip压缩

查看执行时间:cat /etc/crontab


目录可自行修改,mysql的连接帐号USER_ROOT与USER_PWD自行修改;

“# backup mysql data file”这个部分的语句下面可以添加多条 mysqldump 备份语句,一次备份多个库。

对于超过15天的数据处理:每天会尝试删除一次第15天前的一个文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值