当您启用 RavenDB 的'Period Backups' bundle时,RavenDB 会执行以下操作:
- 备份整个数据库。
- 在每个时间间隔(或“n”分钟),RavenDB 对自上次时间间隔以来发生的所有更改进行增量备份(或增量备份)。
我对这种配置很满意,但有一点需要注意。
每周,我都想“清除账本”并强制 RavenDB 备份整个数据库,并从这个新起点继续进行增量备份。
我怎样才能以自动化的方式做到这一点?
当您启用 RavenDB 的'Period Backups' bundle时,RavenDB 会执行以下操作:
我对这种配置很满意,但有一点需要注意。
每周,我都想“清除账本”并强制 RavenDB 备份整个数据库,并从这个新起点继续进行增量备份。
我怎样才能以自动化的方式做到这一点?
- 增量 - 可选。指定后,备份过程将在完成到先前备份所在的文件夹时是增量的。如果 dest 是一个空文件夹,或者它不存在,将创建一个完整备份。要使增量备份正常工作,必须将配置选项 Raven/Esent/CircularLog 设置为 false。
所以我的问题的解决方案是:
我不相信这是一个受支持的场景。
RavenDB 的定期备份包旨在与增量更新一起使用,并且 AFAIK 没有什么可以强制进行完整更新或让包相信它是从一个全新的开始。
如果要进行完整备份,则需要使用 Raven.Backup.exe,它可以进行增量备份或完整备份。您可以触发它以编程方式、通过 REST 和通过命令行实用程序运行,并且它可以与 IIS 一起使用。