您可以使用rsync来复制Berkeley DB文件中的块更改吗?

时间:2011-09-28 20:32:43

标签: rsync berkeley-db

我有一个非常大的Berkeley DB文件(~1GB),我想将(每周)发生的小变化复制到备用位置而不必将整个文件重写到目标位置。

rsync是否通过它的块级算法正确处理Berkeley DBs

是否有人可以选择只将更改写入作为复制目标的Berkeley DBs文件?

谢谢!

1 个答案:

答案 0 :(得分:3)

Rsync在块级别完美地处理文件。数据库的问题可以通过多种方式发挥作用。

  1. 缓存
  2. 文件锁定
  3. 同步/交易日志
  4. 如果您可以确保在rsync期间没有应用程序打开berkeley数据库,则rsync应该可以正常工作,并且比复制整个文件提供了明显的优势。但是,根据bdb的配置和版本,还有事务日志。您可能希望研究用于备份和热备份的相同机制。它们还具有“快照”功能,可以更好地促进工作解决方案。

    您应该仔细阅读:http://www.cs.sunysb.edu/documentation/BerkeleyDB/ref/transapp/archival.html

    我还建议你考虑使用复制作为BDB祝福的替代解决方案https://idlebox.net/2010/apidocs/db-5.1.19.zip/programmer_reference/rep.html

    他们现在称之为高可用性 - > http://www.oracle.com/technetwork/database/berkeleydb/overview/high-availability-099050.html