每天凌晨 2:10 备份 数据库shell脚本

需求分析

  1. 每天凌晨 2:10 备份 数据库 story 到 /temp/backup/db
  2. 备份开始和备份结束能够给出相应的提示信息
  3. 备份后的文件要求以备份时间为文件名,并打包成 .tar.gz 的形式,比如:2021-01-19_110201.tar.gz
  4. 在备份的同时,检查是否有10天前备份的数据库文件,如果有就将其删除。

#!/bin/bash

BACKUP=/temp/backup/db
DATETIME=$(date +%Y_%m_%d_%H%M%S)

#echo $DATETIME

echo "====================开始备份================"
echo "====================备份路径:$BACKUP/$DATETIME.tar.gz================"

HOST=localhost
DB_USER=root
DB_PWD=root
DATABASE=story

#如果备份文件夹存在。就使用。不存在就创建
[ ! -d "$BACKUP/$DATETIME"  ] && mkdir -p "$BACKUP/$DATETIME"

#执行MySQL的备份命令
mysqldump -u${DB_USER} -p${DB_PWD} --host=${HOST} $DATABASE  | gzip > $BACKUP/$DATETIME/$DATETIME.sql.gz

#打包备份文件
cd $BACKUP
tar -zcvf $DATETIME.tar.gz $DATETIME
#删除临时目录
rm -rf $BACKUP/$DATETIME

#删除10天前的备份文件
find $BACKUP -mtime +10 -name "*.tar.gz" -exec rm -rf {} \;
echo "===============备份文件成功===================="

crontab -e(定时任务)    -l 查看任务;   -r 删除任务;

10 2 * * * * /temp/mysql_db_backup.sh

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值