我刚刚在Windows上下载了新的MongoDB 4.2.1,我只想在本地使用它而无需身份验证。我可以简单地运行mongod
,服务器启动正常。我能够连接到mongodb://localhost:27017
,但是当我尝试执行任何操作时,都会收到错误there are no users authenticated
。
在以前的版本中我从未遇到过此问题,所以我想知道4.2现在是否有必须启用身份验证的新限制。是这样吗?
编辑:这是MongoDB的全新安装,并且我已经卸载了所有其他版本。我没有更改配置。我要做的就是创建C:/data/db
目录。
编辑2:
这是我的配置文件:
storage:
dbPath: C:\Program Files\MongoDB\Server\4.2\data
journal:
enabled: true
net:
port: 27017
bindIp: 127.0.0.1
从混乱中获得更多信息。 MongoDB Compass在连接后立即给我错误。一个nodejs应用程序可以连接,但是在尝试编写任何内容时都会出错。
但是,在mongo
shell中,我可以毫无问题地进行连接和进行写操作。
没有命令被记录,只有初始启动输出看起来一切正常。
db._adminCommand( {getCmdLineOpts: 1})
输出:
{
"argv" : [
"C:\\Program Files\\MongoDB\\Server\\4.2\\bin\\mongod.exe",
"--config",
"C:\\Program Files\\MongoDB\\Server\\4.2\\bin\\mongod.cfg",
"--service"
],
"parsed" : {
"config" : "C:\\Program Files\\MongoDB\\Server\\4.2\\bin\\mongod.cfg",
"net" : {
"bindIp" : "127.0.0.1",
"port" : 27017
},
"service" : true,
"storage" : {
"dbPath" : "C:\\Program Files\\MongoDB\\Server\\4.2\\data",
"journal" : {
"enabled" : true
}
},
"systemLog" : {
"destination" : "file",
"logAppend" : true,
"path" : "C:\\Program Files\\MongoDB\\Server\\4.2\\log\\mongod.log"
}
},
"ok" : 1
}
答案 0 :(得分:0)
我将其作为“响应”(而不是“评论”)给出,以便我可以更清晰地为您设置格式。
我碰巧在Linux VM上运行MongoDB 4.2.0,没有身份验证...也没有问题。
建议:
检查/etc/mongod.conf
(与Windows等效),并确保authorization
已完全注释掉(与“授权:已禁用”相对)
选中/var/log/mongodb/mongod.log
(Windows等效)。如果您发现任何“重要”内容,请将其复制/粘贴到您的帖子中。
在“ mongo”中,键入db._adminCommand( {getCmdLineOpts: 1})
并确保您的运行时配置设置符合您的期望。
请让我们发布您发现的内容!
答案 1 :(得分:0)
好吧,由于某种原因,它在连接到127.0.0.1
而不是localhost
时可以工作。以前从未有过。
答案 2 :(得分:0)
确保你已经安装了mongodb