mysql数据库热备脚本_使用xtrbackup 热备MySQL数据库 以及恢复和自动删除脚本

直接上脚本

热备(全备)

#!/bin/bash

user='root'

passwd='123456'

my_config='/etc/my.cnf' #mysql configure

log=full-$(date +%Y%m%d-%H%M).log #log file format

str=full-$(date +%Y%m%d-%H%M).tar.gz #mysqlbackup file format

backup_dir='/var/www/html/manager/data/html/fullmysqlbackup/' #tar file directory

echo "Start to backup at $(date +%Y%m%d-%H%M)"

if [ ! -d "$backup_dir" ]; then

mkdir -p $backup_dir

fi

innobackupex --user=$user --password=$passwd --defaults-file=$my_config --databases="databases1 databases2" --stream=tar $backup_dir 2>$backup_dir/$log |gzip 1>$backup_dir/$str # backup two databases and compress bakcup

if [ $? -eq 0 ];then

echo "Backup is finish! at $(date +%Y%m%d-%H%M)"

else

echo "Backup is Fail! at $(date +%Y%m%d-%H%M)"

fi

#Author:V

恢复:(恢复要停掉数据库的哦)

service mysqld stop

mv /var/lib/mysql /var/lib/mysqlbackup

mkdir -p /var/lib/mysql

cd /home/backup

tar -izxvf full-20150820-0939.tar.gz -C /home/full

cd /home/full

innobackupex --user=root --password=123456 --apply-log /home/full

innobackupex --defaults-file=/etc/my.cnf --user=root --password=123456 --copy-back /home/full

chown -R mysql.mysql /var/lib/mysql

service mysqld start

#Changed some file path, please change your. Author:V

自动删除备份:

#!/bin/bash

#author:V

#Dispaly:auto delete mysql backup.

BACKDIR=/home/11/mysqlbackup/

DAYS=3

FILENAME="full*"

LOGNAME=/var/log/autodel.log

DATA=`date +%Y%m%d`

find $BACKDIR -name "$FILENAME" -type f -mtime +$DAYS -exec ls -lh {} ; >> $LOGNAME 2>&1

if [ $? -eq 0 ];then

echo "$DATA OK">>$LOGNAME

else

echo "$DATA FAIL">>$LOGNAME

exit 0

fi

#Changed some file path, please change your. Author :V

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值