我有一个 CouchDB,我想将其复制到另一台服务器,以便进行备份转储而不给生产服务器带来负担。生产 CouchDB 有不同数量的数据库,我想同步所有内容,而不必担心服务器上当前实际有多少个数据库。
现在的问题是 GUI 只允许您为每个数据库单独配置复制(http 请求也是如此)。到目前为止,我已经找到了各种脚本和解决方法(这个看起来是我目前最好的选择:https://gist.github.com/janoskk/339d76a40b63969ea568),但没有官方支持。
为同步多个服务器而设计的数据库可能没有同步全部选项吗?
答案1
不幸的是,没有同步全部选项。您有以下可能性:
- 为复制器数据库中的每个数据库创建一个复制
- 使用你在原始问题中找到的脚本(未测试过)
- 将所有 .couch 文件从系统 a 复制到系统 b
- 等待 CouchDB 2.0 来支持集群
;-)
我希望这些解决方案之一能够解决问题。如果您有任何问题,也欢迎您加入邮件列表。请参阅https://couchdb.apache.org/.user@ 或 dev@ 是您想要的选择。
答案2
我刚刚发布了一个新工具,叫做复制-couchdb-集群,它提供了一种容错方法来复制整个数据库集群。它还允许并发,因此可以大大加快复制集群所需的时间。
还有一个docker 镜像您可以使用它来轻松设置连续复制。
我希望这有帮助!