Mysql增量备份脚本
#!/bin/bash
# Mysql 增量备份脚本
# Make at:2017.6.22
# Writer:AKA
# 可以对Mysql数据库进行增量备份
# website:www.akiraka.net
#数据库账号
USER="root"
#数据库密码
PASSWD="password"
#Mysql数据文件夹路径
MY_BIN_DIR=/data/mysql
#备份消息日志文件夹
MY_LOG_DIR=/usr/local/mysql/logs
#数据备份文件夹
MY_BAK_DIR=/data/mysqlbackup
#mysqladmin位置
MY_CMD=/usr/local/mysql/bin/mysqladmin
#时间格式为2017-06-22-12:13:14
DATE=`date +%Y-%m-%d-%H:%M:%S`
#判断Mysql 日志文件夹是否存在,不存在创建一个
test -d ${MY_LOG_DIR} || mkdir ${MY_LOG_DIR}
#判断Mysql 备份文件夹是否存在,不存在创建一个
test -d ${MY_BAK_DIR} || mkdir ${MY_BAK_DIR}
##这个是用于产生新的mysql-bin.00000*文件
$MY_CMD -u$USER -p$PASSWD flush-logs
if [[ $? = 0 ]];then
#查询Mysql数据文件夹路径中有没有mysql-bin.数字的文件
MY_BINLOG=`find $MY_BIN_DIR -type f -cmin -1 -name "mysql-bin.[0-9]*"`
echo -e "\033[36m 数据库增量备份成功 $DATE \033[0m"
echo -e "\033[35m 增量备份二进制文件为: $MY_BINLOG \033[0m"
echo -e "$DATE 数据库增量备份成功 二进制文件是:$MY_BINLOG " >> $LOGS/logs
else
echo -e "\033[31m 数据增量备份失败 $DATE \033[0m"
echo "$DATE 数据库增量备份失败 请尽快做出相应的处理" >> $LOGS/logs
fi
# 增量备份生成的二进制文件只能从$BINARY复制到$TARGET_DIR目录下,不能mv 也不能删除原文件,不然下次增量备份生成的二进制文件就从mysql-bin.000001开始了。
COPY=`find $MY_BIN_DIR -type f -name "mysql-bin.[0-9]*"`
yes | cp -rf $COPY $MY_BAK_DIR 1>/dev/null 2>&1 && echo -e "\033[31m 此次增量备份的二进制文件为$MY_BINLOG \033[0m"
版权声明:
作者:Akiraka
链接:https://www.akiraka.net/linux/156.html
来源:Akiraka
文章版权归作者所有,未经允许请勿转载。
THE END
0
二维码
海报
Mysql增量备份脚本
#!/bin/bash
# Mysql 增量备份脚本
# Make at:2017.6.22
# Writer:AKA
# 可以对Mysql数据库进行增量备份
# website:www.akiraka.net
#数据库账号
USER="……
文章目录
关闭