我正在使用全新的Mongo DB 3.4安装,并在管理数据库中创建了一个用户。
当我尝试连接到未启用security.authorization
的数据库时,无论是否指定用户帐户,我都可以这样做。
mongo
或
mongo -u "username" -p "password"
现在,如果我更改security.authorization
文件中mongod.conf
的值,它就不再允许我连接 - 即使我指定了上面的用户名和密码。
security:
authorization: enabled
用户帐户已添加到admin
数据库,并且已应用userAdminAnyDatabase
角色。
当我尝试连接时,错误消息如下:
MongoDB shell version v3.4.1
connecting to: mongodb://127.0.0.1:27017/
2017-01-04T23:43:39.078+0000 W NETWORK [main] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused
2017-01-04T23:43:39.078+0000 E QUERY [main] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:234:13
@(connect):1:6
exception: connect failed
答案 0 :(得分:1)
所以,我已经弄明白了。在启用security.authorization
后出于某种原因,我需要启动mongodb
服务而不是mongod
服务。