PouchDB 同步到错误的 CouchDB

PouchDB syncs to wrong CouchDB

我正在使用 electronjs 和 pouchdb 将数据同步到远程 couchdb。我有一个用于测试目的的远程开发沙发数据库和一个远程生产沙发数据库。

当我 运行 electron . 应用程序从远程数据库同步数据并将文档存储在本地电子的 pouchdb 中,反之亦然。

一切都很好,但是当我将远程数据库 URL 从 dev 更改为 prod 时,本地存储的 dev 数据会同步到生产 couchdb。

有什么办法(以编程方式)阻止这种情况发生吗?

如果您需要双向复制 sync 那么您可以考虑过滤复制[1].

但是如果您只需要将远程文件复制到本地数据库,那么只需使用单向复制[2],例如

PouchDB.replicate('http://<remote host>/mydb', 'mydb');


1PouchDB Filtered Replication
2PouchDB Replication

您不能只将远程数据库的 URL 从 Dev 更改为 Production。

Pouchdb 不知道这是两个不同的数据库,因此开始同步。如果你想要一个开发数据库和一个生产数据库,你需要创建两个本地数据库。一个与 Dev 同步,另一个与 Production 同步。

CouchDB 的优势在于它可以与任何其他 Couch 同步。