Mongo错误:未被授权在数据库名上执行命令。

3

我在mongolab上创建了一个账户,然后创建了数据库和用户。如果我像这样启动mongo shell并连接到我的数据库:

mongo ***.mlab.com:***/projectname?authMode=scram-sha1 -u myname -p mypass

然后输入show dbs,我会收到以下错误信息:

2017-02-27T20:06:10.834+0200 E QUERY    [thread1] Error: listDatabases failed:{
        "ok" : 0,
        "errmsg" : "not authorized on admin to execute command { listDatabases: 1.0 }",
        "code" : 13
} :

当我查看mongolab网站上的用户配置时,它说我没有权限,但它表示这个用户具有dbOwner角色。我该如何在数据库中获得授权以便读写数据?

1个回答

1
这是因为monogolab服务器的设置方式。请查看他们的常见问题解答。

http://docs.mlab.com/faq/#i-am-new-to-mongodb---where-do-i-start

此外,某些命令(例如“show dbs”)需要完整的数据库管理权限,除非您拥有专用计划。因此,您无法运行该命令,因为您的用户没有执行该操作的权限。您只在数据库上具有dbOwner角色,而不是在admin数据库上。

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