无法在MongoHQ数据库中插入任何内容

时间:2014-04-19 16:41:41

标签: mongodb mongohq

我在MongoHQ注册了免费的sandbox数据库。

当我开始使用mongoDB时,我认为从mongo控制台连接到MongoHQ数据库并在任何程序中使用它之前运行一些命令是个好主意。

我尝试使用以下方法连接到我的数据库:

此处testuser是我的用户名,123456是我的密码(我知道在论坛上发布用户ID和passowrd很糟糕,此用户是临时的,稍后我会删除。)

mongo oceanic.mongohq.com:10076/tnh_data -u testUser -p 123456

我得到了这个:

MongoDB shell version: 2.4.9 connecting to: oceanic.mongohq.com:10076/tnh_data

希望一切正常,我尝试运行一些命令,但我收到了一个未经授权的错误。

> show dbs
Sat Apr 19 22:00:18.090 listDatabases failed:{ "ok" : 0, "errmsg" : "unauthorized" } at src/mongo/shell/mongo.js:46
> use learn
switched to db learn
> db.collection0.insert({name: 'Harry', gender: 'Male'})
not authorized for insert on learn.collection0

请帮助我,我做错了什么?

仅供参考。我使用mongoHQ上的Web界面创建了用户。

1 个答案:

答案 0 :(得分:0)

使用MongoHQ沙箱计划并从控制台登录时,有几件事情正在发挥作用:

  1. 使用上面的字符串连接时,您已经在数据库中(tnh_data)
  2. 您没有管理员级别的访问权限,因此"显示dbs"将无法在MongoDB控制台中使用。
  3. 因此,在MongoDB控制台中,使用您开始使用的相同字符串再次连接,并在连接后运行此命令:" show collections"。

    此外,无需尝试切换到其他数据库,再次运行插入。这次它应该正常工作。

    希望这些信息有用!