本文主要介绍了CentOS/RHEL系统如何每天自动备份MySQL数据库。这篇文章很详细,有一定的参考价值。感兴趣的朋友一定要看!
1.首先,在服务器下创建以下三个文件夹://bak、/bak/bakmysqold、/bak/bakmysqold。
[root @ server 21 ~]# mkdir-p/bak/bakmysql {,old}
在文件夹/bak/bakmysql中创建一个shell脚本:
[root @ server 21 ~]# touch/bak/bakmysql/backup . sh
授权文件:
[root @ server 21 ~]# chmod 755/bak/bakmysql/backup . sh
2.编辑外壳脚本:
[root @ server 21 ~]# vim/bak/bakmysql/backup . sh
#!/bin/bash
cd /bak/bakmysql
回声'你在bakmysql目录中'
mv bakmysql */bak/bakmysqold
echo '旧数据库被移动到bakmysqlold文件夹'
Now=$(日期“%Y-%m-%d”)
File=bakmysql-$Now.sql
MySQL dump-uroot-p ' password ' db _ BBS $ File
回应“您的数据库备份成功完成”
seven days=$(date-d-7 day ' % Y-% m-% d ')
if[-f/bak/bakmysqold/bakmysql-$ Seven days . SQL];然后
RM-RF/bak/bakmysql old/bakmysql-$ Sevendays . SQL
回应'您已经删除了7天前备份文件'
其他
回应' 7天前备份文件不存在'
船方不负担装货费用
3.Shell脚本mysql dump-uroot-p'password'db_bb请将s$ file语句中的红色字体更改为您自己的MySQL数据库用户、密码和数据库名称。首先,脚本将文件名以/bak/bakmysqold文件夹中的bakmysqold开头的备份文件移动到/bak/bakmysqold文件夹,然后生成最新的备份文件。最后确定/bak/bakmysqold文件夹中七天前的文件是否存在,如果存在就删除,最后结束。这样,可以自动备份过去七天的数据库脚本。
4.将shell脚本:设置为每天自动执行。
[root @ server 21 ~]# vim/etc/crontab在末尾增加了这样一行(具体含义请参考/etc/crontab中的注释)
0 0 * * * root/bak/bakmysql/backup . sh
重新启动crontab:
[root @ server 21 ~]#/sbin/service crond重新启动
如果crontab未设置为开机自启动,可按如下方式设置:
[root @ server 21 ~]# chkconfig35级crond开启
以上就是《CentOS/RHEL系统如何每天自动备份MySQL数据库》一文的全部内容,感谢阅读!希望分享的内容对大家有所帮助。更多相关知识,请关注行业资讯频道!
内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/94370.html