【发布时间】:2013-07-11 07:36:53
【问题描述】:
我正在使用 Nodejitsu 和他们打包的 Mongolab MongoDB 数据库。我运行了命令 jitsu databases get myDB 并获得了有关如何通过 mongo CLI 进行连接的说明。该命令的输出有一行内容如下:
help: Connect with the `mongo` cli client:
help:
$ mongo ds039267.mongolab.com:39267/nodejitsu_xxxxxx_nodejitsudb8577296358 -u nodejitsu_xxxxxx -p mypassword
注意:这是我第一次通过 CLI 连接到此实例。我只通过jitsu databases create…创建了数据库名
我使用的是 Mongo Shell 版本 1.8.3。我连接到我的 MongoDB 实例。我尝试运行命令:show dbs,我得到了:
uncaught exception: listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" }
我正在使用 Mongoose,并且我有一个名为 Post 的模型。我尝试在 CLI 中运行:db.post.find(),得到:
error: { "$err" : "not authorized for query on hotel.post", "code" : 16550 }
这是什么意思?我没有被授权吗?我以为我连接成功了?
更新
我将我的 mongo shell 升级到最新的 2.4.x 版本,但我仍然遇到这个问题。有谁有 nodejitsu 和 mongolab 的经验吗?
【问题讨论】:
-
嗯,你在认证吗?
mongo --username example -
是的,我正在验证。我更新了我的问题,如您所见,我使用
jitsu databases get myDB命令的输出连接到 mongo -
您可以尝试运行“显示集合”吗? “show dbs”命令需要管理员数据库权限。如果您仍然遇到问题,请随时发送电子邮件至 support@mongolab.com,以便我们尽快帮助您解决问题!