无法使用shell连接到heroku的mongohq

时间:2013-01-08 23:03:23

标签: mongodb heroku mongohq

我在Heroku安装了mongohq:sandbox。当我想连接到mongo时,会出现错误:

mongo linus.mongohq.com:10123/app10575123 -u my_user -p pwd123
MongoDB shell version: 2.2.2
connecting to: linus.mongohq.com:10123/app10575123
> show dbs
Wed Jan  9 06:00:50 uncaught exception: listDatabases failed:{ "errmsg" : "need to login", "ok" : 0 }

登录和密码正确无误。

2 个答案:

答案 0 :(得分:7)

您已连接到数据库,但是对于MongoHQ的共享数据库计划(尤其是沙箱),出于安全原因,它们不包括对Mongo实例的管理级访问权限...只能访问您的实际数据库

“show dbs”是一个管理级命令,在这种情况下,将显示该沙箱MongoDB进程的其他数据库。

相反,您需要使用以下命令:

  • show collections
  • 分贝。[COLLECTION_NAME] .findOne()
  • db.stats()
  • 分贝。[COLLECTION_NAME] .stats()
  • db。[collection_name] .ensureIndex({foo:1,bar:1},{background:true})

......等等。

我希望这有帮助!

答案 1 :(得分:2)

您应该能够show collections,但show dbs需要管理员权限。