# vi /root/backup_mysql.sh #脚本在下方
# chmod 744 /root/backup_mysql.sh
# crontab -e
# 0 */1 * * * /root/backup_mysql.sh
#!/bin/bash
USER="root"
PASSWORD="mysql"
DATABASE="test"
HOSTNAME="192.168.1.50"
OPTIONS="-h$HOSTNAME -u$USER -p$PASSWORD $DATABASE"
# 备份路径
BACKUP_PATH=/home/mysql_backup/
# 备份记录路径
BACKUP_INFO=/home/mysql_backup/backup_info.log
# 备份文件名
FILE_NAME=$DATABASE"_"`date '+%Y%m%d_%H%M%S'`.sql
# 备份路径不存在则创建
if [ ! -d $BACKUP_PATH ] ; then
mkdir -p "$BACKUP_PATH"
fi
# 开始备份
echo " " >> $BACKUP_INFO
echo "-----------------------------------------" >> $BACKUP_INFO
echo "BACKUP DATE:" $(date +"%y-%m-%d %H:%M:%S") >> $BACKUP_INFO
echo "-----------------------------------------" >> $BACKUP_INFO
cd $BACKUP_PATH
mysqldump $OPTIONS > $FILE_NAME
if [[ $? == 0 ]]; then
tar czvf $FILE_NAME.tgz $FILE_NAME >> $BACKUP_INFO 2>&1
echo "$FILE_NAME.tgz Backup Successful!" >> $BACKUP_INFO
rm -f $FILE_NAME
else
echo "Database Backup Failed!" >> $BACKUP_INFO
fi
echo "BACKUP END :" $(date +"%y-%m-%d %H:%M:%S") >> $BACKUP_INFO
echo " " >> $BACKUP_INFO
echo "Backup Process Done!"