8

我想知道是否有可能拥有一个属于两个副本集的 mongoDB 实例。

例如:ReplicaSet1 有成员 10.10.1.1 和 10.10.2.1 ReplicaSet2 有成员 10.10.1.1、10.10.1.2 和 10.10.1.3

4

1 回答 1

8

不,单个 mongod 服务器不能是多个副本集的成员。这似乎没有在任何地方明确记录,所以我不得不寻找至少强烈暗示它的东西。首先,集合中的每个副本都有相同的数据库和集合,这是由辅助节点重放主节点的 oplog 来维护的。辅助服务器将无法从多个主服务器重播 oplog。其次,该db.serverStatus()命令返回一个包含具有复制状态的repl对象的文档,它是一个对象,而不是一个数组。

让一台机器成为多个副本集的成员的唯一方法是在该机器上运行多个 mongod 服务器。

于 2015-02-13T18:47:50.720 回答