mysql数据库备份脚本分享

#!/bin/bash
#Shell Command For Backup MySQL Database Everyday Automatically By Crontab
#time 2018-12-03
#name wangxuejin
USER=root
PASSWORD=aa11223344
DATABASE1=mysql
BACKUP_DIR=/wxj/ #备份数据库文件的路径
LOGFILE=/wxj/data_backup.log    #备份数据库脚本的日志文件
DATE=`date +%Y%m%d-%H%M -d -3minute`     #获取当前系统时间-3分钟
DUMPFILE1=$DATE-mysql.sql                #需要备份的数据库名称
ARCHIVE1=$DUMPFILE1-tar.gz                #备份的数据库压缩后的名称

if [ ! -d $BACKUP_DIR ];                 #判断备份路径是否存在,若不存在则创建该路径
then
mkdir -p "$BACKUP_DIR"
fi

echo -e "\n" >> $LOGFILE
echo "------------------------------------" >> $LOGFILE
echo "BACKUP DATE:$DATE">> $LOGFILE
echo "------------------------------------" >> $LOGFILE

cd $BACKUP_DIR                           #跳到备份路径下
/var/mysql/bin/mysqldump -u$USER -p$PASSWORD $DATABASE1 > 
$DUMPFILE1    #使用mysqldump备份数据库
if [[ $? == 0 ]]; then
tar czvf $ARCHIVE1 $DUMPFILE1 >> $LOGFILE 
2>&1                               
#判断是否备份成功,若备份成功,则压缩备份数据库,否则将错误日志写入日志文件中去。
echo "$ARCHIVE1 BACKUP SUCCESSFUL!" >> $LOGFILE
rm -f $DUMPFILE1
else
echo “$ARCHIVE1 Backup Fail!” >> $LOGFILE
fi
/var/mysql/bin/mysqldump -u$USER -p$PASSWORD $DATABASE2 > $DUMPFILE2
if [[ $? == 0 ]]; then
tar czvf $ARCHIVE2 $DUMPFILE2 >> $LOGFILE 2>&1
echo "$ARCHIVE2 BACKUP SUCCESSFUL!" >> $LOGFILE
rm -f $DUMPFILE2
else
echo “$ARCHIVE2 Backup Fail!” >> $LOGFILE
fi

发表评论

登录... 后才能评论