0

我有几个 Sqlite 数据库,每天都会更新。所以我需要每天做备份,以防万一发生崩溃,我可以恢复。但是,每天备份整个数据库的成本很高,所以我正在考虑进行增量备份(仅在两个不同日期之间备份这些信息)。

目前我的数据库更新过程是在 Perl 中完成的,所以我想知道:有谁知道如何使用脚本在 Perl/Matlab/Java 中执行增量数据库备份/恢复?

谢谢!

此致,乔。

4

1 回答 1

0
  1. 将每行更改时的时间戳存储在表中(称为change_timestamp列)。

  2. 不要删除行 - 而是将它们标记为“D”已删除状态。这样您就不必费力地弄清楚自上次备份以来删除了哪些行。

  3. 有一个“备份时间”表

  4. 运行备份时:

    • 将当前运行时间保存到“备份时间”表中

    • 从“备份时间”表中检索最后 2 行(如果 <2 行,则进行完整备份)

    • change_timestamp备份两个上次备份时间戳之间的主表行。

您可以明智地使用审计表来执行#1/#2,但这有点困难。

于 2012-05-29T16:32:01.217 回答