关键字:not reachable/healthy

背景:

在添加副本节点以及仲裁节点后,rs.status()查询状态出现not reachable/healthy错误。
依据很多大佬的说法都没有成功解决,但是其中有一个成功了

原因:

我在执行上面添加节点之前,曾启动服务之后单独打开过副本节点以及仲裁节点,另外还操作过节点的remove后再install的操作。此操作会导致各个节点之间IDs不匹配(大佬的猜测且我也这么觉得)

解决方法:

1.关掉各个节点服务
在这里插入图片描述
2.删除各个节点服务

mongod --config D:\MongoDB\master\master.conf --serviceName "master" --serviceDisplayName "master" --remove

3.删除各个服务如下红框内容
在这里插入图片描述
在这里插入图片描述
4.重新连接各个服务

mongod --config D:\MongoDB\master\master.conf --serviceName "master" --serviceDisplayName "master" --install
net start master

在这里插入图片描述
ps:连接成功之后不要再做其他操作,跟着下面走

5.进入master端口
在这里插入图片描述
执行如下代码初始化端口:(千万不要进入其他端口,初始化其他端口)

rs.initiate()

6。再执行添加副本节点、仲裁节点
在这里插入图片描述

在这里插入图片描述
7.查看副本集状态
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
出现如上现象表示副本集创建成功!

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐