定期备份MySQL数据库(Linux环境下)

本文介绍了如何编写一个备份MySQL数据库的bash脚本,包括设置凭证、备份文件操作、压缩、删除旧备份以及如何在Linux中通过crontab实现定时执行。
摘要由CSDN通过智能技术生成

1. 编写备份脚本文件

复制下述内容到txt文件中,然后保存(注意:若在windows下编辑的,需要将换行符转换为unix换行符)。最后将文件重名为 MySqlBackUp_Script.sh即可并上传到服务器。

#!/bin/bash
echo '===============Start BackUp MySQL==============='
# 设置数据库访问凭证
User=""   		#用户名
Pwd=""	#密码
DB=""		#待备份的数据库名称
# 备份文件存放路径
BackUp_Path="/home/mysqlbackup/data"
# 备份文件名
TIMESTAMP=$(date +"%F")
BackUp_File="${BackUp_Path}/${DB}-${TIMESTAMP}.sql"
# 执行数据库备份
mysqldump -u ${User} -p${Pwd} ${DB} > ${BackUp_File}
# 压缩备份文件
gzip ${BackUp_File}
# 删除超过7天的旧备份文件
find $BackUp_Path -name "${BackUp_File}*.sql.gz" -type f -mtime +7 -exec rm -f {} \;
echo '===============Finish BackUp MySQL==============='

2. 赋予sh脚本可执行权限

chmod +x MySqlBackUp_Script.sh

3. Linux中添加定时执行任务

前置条件:先检查是否安装了crond,如果没有,先安装。

1.命令:crontab -e
2.然后填写cron表达式,及执行的脚本文件
0 0 * * * /home/mysqlbackup/MySqlBackUp_Script.sh
上述表达式表示每天0点执行MySqlBackUp_Script备份脚本文件。

上述两步完成之后便达到了定时备份目标。

检查crond状态命令:systemctl status crond

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Zhwww.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值