centos系统下mysql如何开启自动备份功能
最近部署客户机器,要求数据库每天自动备份,要求写在第二块硬盘上,因为我不知道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点就会自动备份指定的数据库。您可以根据业务需求修改备份时间和数据库名称等参数,以满足实际需求。
文章版权声明:除非注明,否则均为鲁小班博客原创文章,转载或复制请以超链接形式并注明出处。
如本博内容对您构成了,侵权行为请与我们联系,我们会尽快为您处理该内容!
请勿使用本站任何内容从事非法行为,本站内容仅供学习参考,如您非法运用,请立即停止该行为,有必要我们会提供相关信息配合有关部门调查取证!本站不承担任何责任!
还没有评论,来说两句吧...