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数据库的清理_第1张图片

然后找到各个相关的数据表开始清除,主要是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数据库的清理_第2张图片

然后再清出空间
VACUUM
CloudBerry Backup数据库的清理_第3张图片