Mongodb未被授权在admin上执行listDatabases命令。

3

删除mongodb用户后,没有身份验证就无法重新连接mongo

我创建了超级用户 tomuser

我的Ubuntu终端命令序列

1.use admin

2.db.dropUser('tomuser') true exit

3.sudo /etc/init.d/mongod stop

4.sudo /etc/init.d/mongod start

5.重启电脑

6.mongo --port 27017

7.> show dbs 2016-01-14T16:03:55.420+0530 listDatabases failed:{ "ok" : 0, "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }", "code" : 13 } at src/mongo/shell/mongo.js:47


我遇到了上述错误!!在admin上未获得执行命令的授权

所以,删除用户后无法连接mongodb吗..?

有什么遗漏吗...?


好的.. 你有什么问题? - Matheno
@MHakvoort 我已经编辑了问题 :) - Mr punch
1个回答

4

第一种方法

我认为在 db.system.users 中应该有另一个用户。如果有的话,请使用保存的用户进行登录。

如果在 db.system.users 中没有任何用户

> db.system.users.find({})
  null

我们可以通过 mongo --port 27017 访问 mongodb
第二种方法 - 问题的常见原因
请使用 sudo mongod --port 27017,而不是 sudo mongod --auth --port 27017 --dbpath /var/lib/mongodb
注意:--auth 只在设置了用户名密码认证时才需要。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接