shell脚本-数据库备份

#!/bin/bash
BACK_DIR=/home/backup
DATE=$(date +%F)
MYSQL_USER=root
MYSQL_PASSWORD=123
RECIVE_USER=88888888@qq.com
SUBJECT="数据库备份状态通知"

[ -d $BACK_DIR ] || mkdir -p $BACK_DIR

START_TIME=$(echo "$(date +%F_%T)")
mysqldump -u$MYSQL_USER -p$MYSQL_PASSWORD -B wg > $BACK_DIR/wg-$DATE.sql
if [ $? -ne 0 ];then
   echo "备份失败!账号密码不正确" 
   exit 
fi

tar zcPf $BACK_DIR/wg-$DATE.tar.gz  $BACK_DIR/wg-$DATE.sql  && rm -f $BACK_DIR/wg-$DATE.sql


if [ -f $BACK_DIR/wg-$DATE.tar.gz ];then
   echo "wg数据库备份成功!"
   END_TIME=$(echo "$(date +%F_%T)")

   expires_file=$(find $BACK_DIR -type f -mtime +2)
   rm -f $expires_file && echo -e "删除过期文件:\n $expires_file"
   echo "正在发送邮件..."
   /usr/local/sbin/mail.py $RECIVE_USER $SUBJECT "$(echo -e "开始的时间:$START_TIME\n结束时间:$END_TIME\n备份的数据库:wg\n状态:成功\n清理的过期文件:\n$expires_file" )"
   [ $? -eq 0 ] && echo "邮件发送成功" || echo "邮件发送失败"
else
   echo "wg数据库备份失败!"
   END_TIME=$(echo "$(date +%F_%T)")

   expires_file=$(find $BACK_DIR -type f -mtime +2)
   rm -f $expires_file && echo -e "删除过期文件:\n $expires_file"
   echo "正在发送邮件..."
   /usr/local/sbin/mail.py $RECIVE_USER $SUBJECT "$(echo -e "开始的时间:$START_TIME\n结束时间:$END_TIME\n备份的数据库:wg\n状态:失败\n清理的过期文件:\n$expires_file" )"
   [ $? -eq 0 ] && echo "邮件发送成功" || echo "邮件发送失败"
fi

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值