2016-12-28 93 views
2

我创建了一个mongoDB液滴,以便我可以有一个数据库连接到我的小游戏。然而,并发症后的并发症已经出现。 我通过PuTTY连接到液滴,之前能够调用“mongo”,然后键入“show dbs”查看当前所有的数据库。MongoDB:所有的命令吐出“未授权管理员执行命令”

我已经改变/etc/mongod.conf文件以允许远程连接,从那以后 - 我调用任何命令来发回的错误信息:

只需通过简单的表演DBS - 我得到这个。

> show dbs 
2016-12-28T00:12:26.655+0000 E QUERY [thread1] Error: listDatabases failed:{ 
     "ok" : 0, 
     "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }", 
     "code" : 13 
} : 
[email protected]/mongo/shell/utils.js:25:13 
[email protected]/mongo/shell/mongo.js:62:1 
[email protected]/mongo/shell/utils.js:761:19 
[email protected]/mongo/shell/utils.js:651:15 
@(shellhelp2):1:1 

我很困惑,为什么这是我一直在网上淘找到任何可能可能解决此问题。

回答

1

问题是,您连接到启用了授权的MongoDB实例,并且当您通过shell连接到MongoDB时,您没有指定任何凭据。在这种情况下,MongoDB shell将允许您连接,但您输入的任何命令都会出错。

+0

那么在我的情况下,我的确在指定凭据。 -u和-p,但它仍以“admin”身份登录。因此这个问题。与此一起运行。 – Barry

+0

连接时是否定义了认证数据库?即通过Mongo shell连接时传递参数“--authenticationDatabase”?我发现这个讨论可能有帮助,https://stackoverflow.com/a/29801077/6879709 –

2

须藤纳米/etc/mongod.conf 禁用(#AUTH =真)

相关问题