作者:whisper
链接:http://proprogrammar.com:443/article/250
声明:请尊重原作者的劳动,如需转载请注明出处
自己弄了个个人博客,挺用心的在做,为了防止内容丢失,每个月都会手动备份一下数据库和附件图片,这样在出现意外(如误删了网站文件,数据库被劫持)时可以恢复,但觉得实在是有些麻烦,所以就抽空学习了一下linux自动备份数据库的知识,结合简单的删除和移动文件命令,利用crontab实现了简单的对数据库和附件图片的备份操作。
下面就具体说说我是如何实现数据库和文件的自动备份的。
首先我是参考了这篇文章:
本人用的是ubuntu系统,crontab可以实现定时执行任务的功能,所以操作重点就是编写自动备份的shell文件和在crontab的配置文件中编写自动备份的命令。
shell文件如下
解释一下就是备份数据库到指定路径下的指定sql文件,删除旧备份文件,生成新备份文件,本人shell不熟,命令也不熟,本来想数据库文件只保存最后若干天的,但不知道怎么做,如果shell和java一样熟悉就好了。
编写好了配置文件后我修改了一下文件的执行权限,执行以下命令
sudo chmod ugo+x blog_backup.sh
就是说任何人都可以执行这个文件。
接下来就是到crontab配置文件中设置定时执行这个文件就行了。
执行以下命令,打开crontab的配置文件
sudo vi /etc/crontab
添加以下的内容
意思是每天的一点钟执行上面的shell文件,进行备份操作
保存文件后要重启crontab,执行以下命令
sudo service cron restart
开始可以设置每2分钟执行一次脚本,看一下效果,可以开启一下crontab的日志
看一下备份脚本有没有被执行,如果被执行,有没有正确产生备份的附件文件和数据库文件,经过几次调试,程序终于可以正确生成备份文件了。生成的备份文件如下:
大功告成,基本上的流程就是这个样子,因为对linux系统不熟悉,中间还有很多低级问题就不说了。还有一个问题我这个备份还是在本机上进行的备份,而不是另一台机器上进行的备份,所以备份的实际意义并不大。
亲爱的读者:有时间可以点赞评论一下
全部评论