现有A(主节点)、B(从节点)、C(从节点)组成的 副本集。
现在想让C退役,在A里面rs.remove(c)了。
此时C恢复单身。
但不知道为何,给C介绍女朋友,insert一条新数据,C一直报 Not Master
。
现有A(主节点)、B(从节点)、C(从节点)组成的 副本集。
现在想让C退役,在A里面rs.remove(c)了。
此时C恢复单身。
但不知道为何,给C介绍女朋友,insert一条新数据,C一直报 Not Master
。
A(127.0.0.1:27017是a节点的地址) rs.remove(c)以后:
在C(从节点)运行如下代码(127.0.0.1:27018是c节点的地址)
config=rs.conf()
config.members[0].host="127.0.0.1:27018"
rs.reconfig(config,{force:true})
运行完以后可以看到c节点也变成master=true了,现在a节点和c是两个独立的master,可以插入数据了
如下图
1 回答1.3k 阅读✓ 已解决
2 回答1.4k 阅读
1 回答1.3k 阅读
1 回答643 阅读
重启服务才能解决该问题。。
补充:2019年9月6日16:58:36
发现把C踢出群之后,无法被connected,也无法连接了,查看日志:
上述的操作是,被primary rs.remove(c)
在c上退出客户端,然后再进去,发现报错,无法连接
此时再回到A,这单身狗C拉入群:rs.status(),查看到c :"stateStr" : "(not reachable/healthy)",