centos系统下mysql如何开启自动备份功能

鲁小班2024-06-261.43 W阅读0评论

最近部署客户机器,要求数据库每天自动备份,要求写在第二块硬盘上,因为我不知道centos怎么切换第二块硬盘,索性在第一块硬盘上,新建一个文件夹,写个shell脚本,挂个系统定时任务,让其到点自动执行,顺便做个分享,这个手法相对很喽,但实话实说,我也没有更好的办法。

1.创建备份shell脚本

#!/bin/bash
#设置备份路径
BAKDIR=/data/mysql/backup/
#设置备份文件名
BAKFILE=mysql-$(date +%Y%m%d%H%M%S).tar.gz
#设置MYSQL用户名和密码
MYSQL_USER=root
#这里会提示mysql密码泄露的问题,不知道咋解决,欢迎大家留言讨论,简单粗暴的先实现功能吧
MYSQL_PASSWORD=root   
#设置MYSQL主机地址
MYSQL_HOST=localhost
#设置MYSQL备份的数据库名称
MYSQL_DATABASE=test
#执行备份命令
mysqldump -h $MYSQL_HOST -u $MYSQL_USER -p$MYSQL_PASSWORD $MYSQL_DATABASE | gzip >$BAKDIR$BAKFILE
#备份完成后,在备份路径下查看是否生成备份文件

2.创建crontab任务,让其自动执行shell脚本,记得给文件夹和shell脚本可执行权限

将上述备份脚本保存并命名为“mysql_backup.sh”,然后使用“crontab -e”命令打开定时任务编辑器,添加以下内容

# 设置每天凌晨1点定时执行备份计划。

0 1 * * * sh /data/mysql/mysql_backup.sh

3.启动crontab服务,确保你的脚本按时执行

让crontab执行之前,自己先执行一下试试,看你的脚本好不好使,一个是执行权限,另一个是备份目录是否存在,是否能写入? 都没问题了,开启crontab任务

service crond start

至此,MySQL自动备份功能已经开启成功,每天凌晨1点就会自动备份指定的数据库。您可以根据业务需求修改备份时间和数据库名称等参数,以满足实际需求。


文章版权声明:除非注明,否则均为鲁小班博客原创文章,转载或复制请以超链接形式并注明出处。 如本博内容对您构成了,侵权行为请与我们联系,我们会尽快为您处理该内容! 请勿使用本站任何内容从事非法行为,本站内容仅供学习参考,如您非法运用,请立即停止该行为,有必要我们会提供相关信息配合有关部门调查取证!本站不承担任何责任!

发表评论

快捷回复: 表情:
AddoilApplauseBadlaughBombCoffeeFabulousFacepalmFecesFrownHeyhaInsidiousKeepFightingNoProbPigHeadShockedSinistersmileSlapSocialSweatTolaughWatermelonWittyWowYeahYellowdog
评论列表 (暂无评论,14336人围观)

还没有评论,来说两句吧...

目录[+]

取消
微信二维码
微信二维码
支付宝二维码