1.创建备份文件目录并且创建备份脚本sh文件
mkdir /data/bak
cd /data/bak
vi taskdb.sh
2.编辑脚本taskdb.sh
#!/bin/bash
baseDir="/data/bak/";
cd "$baseDir";
echo "开始备份数据库";
#压缩
echo `mysqldump -P 3305 -uroot -pieom@123456 ieom_yunan | gzip > /data/bak/ieom_yunan_$(date +%Y%m%d_%H%M%S).sql.gz`;
echo "备份数据完成";
oldDate=`date --date='8 day ago' +%Y%m%d`;
echo $oldDate;
#删除当前日期-七天前的备份
echo `rm -f ieom_yunan_$oldDate*`;
echo "删除$oldDate的备份成功"
给taskdb.sh赋权
chmod 777 taskdb.sh
2.设置定时任务并且开机启动
输入命令:crontab -e,编辑该文件,设置每天完善22点30分备份
@reboot /data/bak/taskdb.sh
30 22 * * * /data/bak/taskdb.sh
本文档描述了如何创建一个Linux shell脚本用于定期备份MySQL数据库,并在备份后删除一周前的旧备份。首先,创建备份目录和备份脚本taskdb.sh。脚本中包含了使用mysqldump进行数据库压缩备份的命令,并设置了删除7天前备份的逻辑。接着,通过crontab设置每日22:30执行备份任务,并在系统启动时运行此脚本,确保数据安全性。

被折叠的 条评论
为什么被折叠?



