我遇到mongo db 3.0.4的问题,这个问题今天随机开始发生。身份验证在我们没有任何用户操作的情况下随机停止工作。我们的设置很简单。一个应用程序,一个数据库我把应用程序排除在等式之外,我仍然得到相同的结果。以下是我要采取的步骤。重新安装mongo并将logpath和dbpath指向新文件夹以从头开始。
创建配置文件。
logpath=c:\data\logs\mongod.log
dbpath=c:\data\db
登录mongo shell并运行此命令。
db.createUser({user: "admin",pwd: "admin", roles: [ { role: "userAdminAnyDatabase", db: "admin" }]})
在配置文件中添加auth = true。
auth=true
重启mongodb服务。
使用
启动mongo shellmongo -u admin -p admin --authenticationDatabase admin
然后我得到错误18身份验证失败。
我真的迷失了语言。任何帮助将不胜感激。
由于
答案 0 :(得分:0)
我认为用户没有有效的权限。尝试这个角色。
use admin
{user:"admin",pwd:"admin",roles:["root"]}
答案 1 :(得分:0)
在创建用户之前,您需要更改数据库并在admin db中创建它。
禁用身份验证
输入mongo shell
将数据库更改为admin('使用admin')
现在创建用户。
再次启用身份验证(使用auth或mongodb-keyfile)
使用以下命令输入mongo shell:
mongo -u admin -p admin --authenticationDatabase admin