shell学习篇之定时维护mysql数据库备份

一:编写备份脚本

#!/bin/bash

#完成数据库的定时备份

#备份的路径

BACKUP=/data/backup/db

#当前时间作为文件名

DATETIME=$(date +%Y_%m_%d_%H%M%S)



#可以输出变量调试

#echo ${DATETIME}



echo "-----------备份开始------------"

echo "-----------备份文件的路径是:$BACKUP/$DATETIME.tar.gz"



#主机

HOST=localhost

#用户名

DB_USER=root

#密码

DB_PASSWD=root

#备份的库名称

DB_TABLES=testmysql

#创建备份需要的路径

#如果备份的路径/文件夹存在,则直接使用,否则创建备份目录

[ ! -d "$BACKUP/$DATETIME" ] && mkdir -p "$BACKUP/$DATETIME"

#执行mysql的备份数据库的指令

mysqldump -u${DB_USER} -p${DB_PASSWD} --host=$HOST $DB_TABLES | gzip > $BACKUP/$DATETIME/$DATETIME.sql.gz

#打包备份文件

cd $BACKUP

tar -zcvf $DATETIME.tar.gz $DATETIME

#删除临时目录

rm -rf $BACKUP/$DATETIME



#删除10天前的备份文件

find $BACKUP -mtime +10 -name "*.tar.gz" -exec rm -rf {} \;

echo "-------------备份成功----------------"

二:设置定时运行脚本

crontab -e --每天两点执行一次

* 2 * * * /opt/tmp/shell/mysql_db_backup.sh

猜你喜欢

转载自blog.csdn.net/qq_15076569/article/details/82120978