shell脚本一键备份mysql数据库

#!/bin/bash
#对数据库进行备份,每周日进行全量备份,其他时间都进行增量备份,7天为一个周期
[ -d /xtrabackup/test ] || mkdir -pv /xtrabackup/test
mysql_password="Qianfeng@123"
mysql_user="root"
#查看今天是星期几
today_week=$(date '+%u')
#查看前一天的日期
yesterday=$(date -d "yesterday" '+%F')
#全量备份
full_backup(){
	innobackupex --user=$mysql_user --password=$mysql_password  /xtrabackup/test
	if [ $? -eq 0 ]; then
		echo "备份成功"
	else
		echo "备份失败"
	fi
}
#增量备份
increment_backup(){
	inc_backup_dir=$(find /xtrabackup/test -name %{yesterday}*)
	innobackupex --user=$mysql_user --password=$mysql_password --incremental /xtrabackup/test --incremental-basedir=${yesterday}
	if [ $? -eq 0 ]; then
		echo "备份成功"
	else 
		echo "备份失败"
	fi
}
#判断当前为星期几再定进行什么备份方式
main_menu(){
	if [ $today_week -eq 7 ]; then
		full_backup
	else
		increment_backup
	fi
}
main_menu

猜你喜欢

转载自blog.csdn.net/XX_HK/article/details/134648986