数据库备份脚本

1 篇文章 0 订阅
1 篇文章 0 订阅

脚本备注说明:自己写的脚本,直接拷贝即可,注意修改下自己的数据库账号,密码,此备份文件在基础路径下面,每天备份都会以当日的时间日期为名称命名创建路径存放备份的文件,此备份是全库热备,放到数据库所在服务器里面即可,注意授权。

#!/bin/bash
#基础路径
BASE_PATH=/bak/xbk
#备份日期
BACKUP_DATE=`date +%Y%m%d`
#备份路径
BACKUP_PATH=$BASE_PATH/$BACKUP_DATE
#以日期作为数据库的备份命名
name_dir=$(date +%F"-%H")
#日志文件
LOG_FILE=$BASE_PATH/backup.log
#数据库用户
USER='root'
#数据库密码
PASSWDSTR='root'
#备份数据库服务器说明
IPSTR='db01'
#进入备份基础路径
cd $BASE_PATH
#判断路径如果不存在就创建基础路径
if [ $? -ne 0 ];then
        mkdir -p $BASE_PATH
fi
#进入备份路径
cd $BACKUP_PATH
#判断备份路径如果不存在就创建备份路径
if [ $? -ne 0 ];then
    mkdir -p $BACKUP_PATH
fi
#进入备份路径
cd $BACKUP_PATH
#进行备份
xtrabackup --backup --binlog-info=on --host=localhost  --user=$USER --password=$PASSWDSTR  --lock-wait-threshold=40  --lock-wait-timeout=180 --compress --compress-threads=24 --galera-info --stream=xbstream --extra-lsndir=$BACKUP_PATH  --target-dir=$BACKUP_PATH  1>$BACKUP_PATH/full.xbstream 2>$BACKUP_PATH/full-$BACKUP_DATE.log
#如果今日备份存在就输出日志信息,并且进入基础备份路径删除5天前的备份记录文件
if [ -d $BASE_PATH/`date +%Y%m%d -d "-1 day"` ]; then
echo `date +%H:%M:%S`': archiving last day backup '$BACKUP_PATH'/'$BACKUP_DATE'.' >> $LOG_FILE
#进入基础路径
cd $BASE_PATH
#删除5天前的备份记录
rm -rf `date +%Y%m%d -d "-5 days"`*
fi

爱你,爱我,爱他,爱众生,爱之不息,爱吾之所爱,生于爱死于爱

2022年8月7日16:16:38 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值