如何在mongoDB复制集中添加成员?

时间:2018-01-23 09:35:10

标签: mongodb replication mongodb-replica-set mongodb-replica

我使用rs.initiate()命令进行配置复制,然后尝试使用rs.add(xxx.xxx.xxx.xxx:27017)将成员添加到我的服务器IP地址,但是这样会返回错误。

  

{“ok”:0,“errmsg”:“法定人数检查失败,因为还不够   投票节点回应;需要2但只有以下1个投票   节点响应:xxx.xxx.xxx.01:27017;以下节点没有   肯定地回答:xxx.xxx.xxx.02:27017与服务器min和   最大线缆版本与客户端最小线缆版本不兼容(0,5)   (6,6)“,”代码“:74,”codeName“:”NodeNotFound“,”operationTime“:   时间戳(1516699107,1),“$ clusterTime”:{“clusterTime”:   时间戳(1516699107,1),“签名”:{“哈希”:   BinData(0,“AAAAAAAAAAAAAAAAAAAAAAAAAAA =”),“keyId”:NumberLong(0)         }}

请给我解决方案。

谢谢!

-Karmdip Joshi

2 个答案:

答案 0 :(得分:1)

我找到了解决方案。

它只是MongoDB版本问题。

我的主服务器配置是。

  

MongoDB shell版本v3.6.2

我的辅助服务器配置是。

  

MongoDB shell版本v3.4.10

我正在将我的辅助服务器更新到v3.6.2,我可以使用rs.add()在我的副本集的成员中添加我的辅助服务器IP,并且它可以正常工作。

感谢您的支持。

-Karmdip Joshi

答案 1 :(得分:0)

两件事......

首先,检查防火墙!每个节点都必须能够连接到其他节点。

其次,如果所有节点不在同一台计算机上,则无法使用localhost地址。因此,如果您已使用localhost地址配置了第一个节点,则无法添加具有IP地址的其他节点,所有地址必须(在这种情况下)localhost,即相同的计算机但不同的端口。