行业资讯

  • 首页
  • 新闻中心
  • 行业资讯

宇众网络给您提供服务器运维技巧分享,用backup为数据库做定时备份。


2018年06月06日

写了套网站,除了日志需要定时分割外,《在Linux系统中如何用logrotate实现系统日志自动分割》,数据库还需要定时备份,如果你用的是云服务器自带的备份功能,会更简单些,但也需要自行购买数据库服务器,对于像我这种还在初期的系统来说,能减少服务器的开支就一定要减少,毕竟现在还不挣钱。

 

安装
用的是ruby on rails,所以用gem来安装gem install backup
注意,这个版本有V3和V4版本区别,两个不太一样,小编用的是3.4.0。生成备份模型backup generate:model --trigger my_backup
其中my_backup换成你备份的名字就可以,可以随便改
这时,你会在生成一个文件,在这个路径下~/Backup/models/my_backup.rb,这个路径也可以自定义修改配置文件
 

由于我用的是mysql,直接套用这个模板就可以了,另外加了一个compress_with Gzip,可以进行压缩。
 
这句是备份在什么地方,备份在本地,还可以选择邮件发送,ftp,以及一些云存储。执行备份backup perform --trigger my_backup

手动执行备份,就可以看到效果了,会生成以时间为名字的文件夹,进去后是压缩后的备份文件
 

自动执行
上面是手动的,如果想让系统自动执行,可以用whenever,安装gem 'whenever', :require => false
添加自己的周期性任务,在config/schedule.rb文件中添加
这样,每晚一点开始执行备份程序。
执行周期性任务,更新schedule.rb中的任务到cronjob中crontab -e
 

whenever -iw
如果做了更改,可以用whenever --update-crontab这条命令更新。
 


客服