CloudBerry Backup數據庫的清理

Cloudberry Backup由於備份文件時,會在本地創建一個SQLite的數據庫,路徑:C:\ProgramData\CloudBerryLab\CloudBerry Backup\data,隨着時間累積,這個數據庫會變得越來越大,從而影響備份的效率,因爲每次都需要掃描對比文件夾中的文件與數據庫的記錄,如圖,此時的數據庫已經達到18GB

CloudBerry Backup數據庫的清理

諮詢客服沒有解決方法,唯一的是壓縮此文件,可以使用命令實現:
cd/d "C:\Program Files\CloudBerryLab\CloudBerry Backup"
cbb database -shrink

做成腳本自動運行,但是發現效用不大,因此自己摸索,既然是SQLite,那麼用相關的數據庫軟件打開,然後使用SQL命令刪除舊記錄是否可行?目前的備份策略是隻在本地保留最近一週的數據,對於過期的數據已經刪除,因此可以刪除數據庫中超過8天的記錄,這樣就不會導致CCB(CloudBerry Backup)備份對比的時候發現文件沒有備份而重新備份導致重複的情況。嘗試後發現此法可行。下載軟件DB Browser for SQLite: https://sqlitebrowser.org/

安裝後打開db文件

CloudBerry Backup數據庫的清理

然後找到各個相關的數據表開始清除,主要是cloud_files這個表的記錄

DELETE FROM cloud_files WHERE startime('%Y%m%d%H%M%S', date('now', '-10 day')) >= date_modified_utc;
或者
DELETE FROM cloud_files WHERE date_modified_utc <20200417000000

先清理記錄

CloudBerry Backup數據庫的清理

然後再清出空間
VACUUM
CloudBerry Backup數據庫的清理

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章