Linux伺服器運維技巧分享,用backup為資料庫做定時備份

寫了套網站,除了日誌需要定時分割並備份外,資料庫還需要定時備份,如果你用的是雲伺服器自帶的備份功能,會更簡單些,但也需要自行購買資料庫伺服器,對於像我這種還在初期的系統來說,能減少伺服器的開支就一定要減少,畢竟現在還不掙錢。分享一下我自己用的資料庫自動定時備份方案

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

安裝

用的是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,這個路徑也可以自定義

修改配置檔案

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

由於我用的是mysql,直接套用這個模板就可以了,另外加了一個compress_with Gzip,可以進行壓縮。

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

這句是備份在什麼地方,備份在本地,還可以選擇郵件傳送,ftp,以及一些雲端儲存。

執行備份

backup perform --trigger my_backup

手動執行備份,就可以看到效果了,會生成以時間為名字的資料夾,進去後是壓縮後的備份檔案

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

自動執行

上面是手動的,如果想讓系統自動執行,可以用whenever,安裝gem ‘whenever’, :require => false

新增自己的週期性任務,在config/schedule。rb檔案中新增

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

這樣,每晚一點開始執行備份程式。

執行週期性任務,更新schedule。rb中的任務到cronjob中

crontab -e

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

whenever -iw

Linux伺服器運維技巧分享,用backup為資料庫做定時備份

如果做了更改,可以用

whenever --update-crontab

這條命令更新

Linux伺服器運維技巧分享,用backup為資料庫做定時備份