我使用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
答案 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,即相同的计算机但不同的端口。