目录
- 1. 创建备份目录
- 2. 创建自动化备份脚本
- 3. 执行备份脚本测试
- 4. 设置每天凌晨两点自动执行
1. 创建备份目录
cd home
mkdir backup
2. 创建自动化备份脚本
vim backup.sh
- 编辑脚本内容
- 主机,用户名,密码,备份数据库及备份路径自行填写
#!/bin/bash
#获取当前时间
DATETIME=$(date +%Y_%m_%d_%H%M%S)
#可以输出变量调试
echo $DATETIME
echo "========开始备份========="
echo "========备份路径 $BACKUP/$DATETIME.tar.gz========="
#主机
HOST=xxx
#用户名
DB_USER=xxx
#密码
DB_PASSWOLD=xxx
#备份数据库名
DATABASE=xxx
#备份路径
BACKUP=/home/backup/mysql/$DATABASE
[ ! -d "$BACKUP/$DATETIME" ] && mkdir -p "$BACKUP/$DATETIME"
mysqldump $DATABASE -u $DB_USER -p$DB_PASSWOLD | gzip > $BACKUP/$DATETIME/$DATETIME.sql.gz
# 打包备份文件
cd $BACKUP
tar -zcvf $DATETIME.tar.gz $DATETIME
rm -rf $BACKUP/$DATETIME
# 删除30天以前的备份文件
find $BACKUP -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
echo "=========备份文件成功========="
3. 执行备份脚本测试
bash backup.sh
输出
4. 设置每天凌晨两点自动执行
- 输入命令 crontab -e 进入 crontab 编辑器。
- 然后按i进入编辑模式,添加如下内容(自行修改脚本路径)
0 2 * * * /bin/bash /path/to/your/backup.sh
- 输入完成后保存即可。