MongoDB';此节点不是用replSet选项启动的

MongoDB';此节点不是用replSet选项启动的,mongodb,sharding,Mongodb,Sharding,首先,我知道它的名称和我的相同,但就我而言,它不是错误的端口 我想在本地计算机上设置分片,首先使用以下命令: mongod --shardsvr --replSet rs1 --port 27017 --dbpath D:\mongo\data1\db 然后执行以下操作: mongo --port 27017 rs.initiate({_id : "rs1", version: 1, members: [ {_id : 0, "host" : "localhost:27017"} ] })

首先,我知道它的名称和我的相同,但就我而言,它不是错误的端口

我想在本地计算机上设置分片,首先使用以下命令:

mongod --shardsvr --replSet rs1 --port 27017 --dbpath D:\mongo\data1\db
然后执行以下操作:

mongo --port 27017
rs.initiate({_id : "rs1", version: 1, members: [ {_id : 0, "host" : "localhost:27017"} ] })
{
        "ok" : 0,
        "errmsg" : "This node was not started with the replSet option",
        "code" : 76,
        "codeName" : "NoReplicationEnabled"
}
我仍然得到以下信息:

mongo --port 27017
rs.initiate({_id : "rs1", version: 1, members: [ {_id : 0, "host" : "localhost:27017"} ] })
{
        "ok" : 0,
        "errmsg" : "This node was not started with the replSet option",
        "code" : 76,
        "codeName" : "NoReplicationEnabled"
}
我已经尝试用127.0.0.1更改localhost,但没有成功。 我已经搜索了一段时间,但是人们给出的唯一解决方案是错误的端口,而我100%确定这里不是这样

有人知道怎么修理吗


提前谢谢

问题在于mongoDB会自动启动一个实例。如果我使用端口>=20,它可以工作,但17-19不能。但我只能连接到27017,18和19不起作用


但我100%确信这不是关于港口的,这显然是错误的

我试图重现你的错误。这(在我的机器上)运转得很好。可能另一个mongod实例已经使用了dbpath?你能试着使用另一个dbpath吗?我试着在C:drive上使用一个新的数据文件夹,还是一样的:/出于某种原因,当我选择一个端口>20时,它可以工作,无法解释为什么,因为它是一个新的windows&mongo安装&在此之前我没有运行过任何命令。我只是想问一下,当你不启动服务器时,你是否可以连接。必须有另一个实例正在运行。显然我可以。我自己试过了。在27017上,我可以连接,18和19不能连接,但这些也不起作用。mongodb是否自己启动实例?因为我记得一年前我没有遇到过这样的问题。你是说当你通过MSI安装程序安装时,它会自动启动Windows服务吗?显然。我使用了一个全新的windows安装和一个全新的mongodb安装以及Robo3TM,感谢您指出了正确的方向。要关闭Windows上的服务,请转到Taskmanager>Services,然后停止MongoDB服务。然后命令应该可以正常运行。