我设置了一个本地解析服务器,它工作得很好,除了当我在MongoDB中启用身份验证并将连接字符串更改为mongodb://username:password@localhost:27017/dbname时,解析控制台抛出以下错误:
unable to ensure uniqueness for usernames mongoerror authentication failed
客户端,也就是RoboMongo,在身份验证方面也工作得很好。我甚至尝试使用同时分配了userAdminAnyDatabase和dbAdminAnyDatabase角色的用户,以确保这不是权限问题。
更新:我使用的是MongoDB 3.2,所以我试图降级到MongoDB 3.0.12,仍然存在同样的问题。
更新2:我甚至尝试过拥有最高权限的root角色,即超级用户,但仍然没有成功。
发布于 2016-08-09 20:49:42
您是否为特定数据库创建了用户?如果您尝试使用mongo管理员帐户进行连接,则会遇到这种情况。
像这样创建一个用户:
use dbName
db.createUser({ user: "userName", pwd: "password", roles: [ "readWrite", "dbAdmin" ] })并使用它连接到数据库-然后它就应该可以工作了
https://stackoverflow.com/questions/38727358
复制相似问题