如何从Mac操作系统终端连接到远程mongo服务器



我想在MacBook的终端中放入mongo shell。然而,我有兴趣连接到云中运行的Mongo实例(通过Heroku插件的compose.io实例)。我有MongoDB URI:中的名称、密码、主机、端口和数据库名称

mongodb://username:password@somewhere.mongolayer.com:10011/my_database

我使用Homebrew在我的MacBook上安装了mongodb,并不是因为我想让Mongo在我的Mac上运行,而是为了访问mongoshell程序,以便连接到这个远程数据库。

但是,我找不到正确的命令来获得我想要的完整shell访问权限。使用此处的说明http://docs.mongodb.org/manual/reference/program/mongo/(搜索"remote")我可以获得看起来像是连接的东西,但如果不提供用户名或密码,我就无法完全连接。运行db.auth(username, password)会返回1(与我提供错误的用户名和密码时的"auth failed"相反),但在发出show dbs命令时,我仍然会收到"unauthorized"错误消息。

您可能连接良好,但没有足够的权限运行show dbs

如果在命令行中传递auth:,则不需要运行db.auth

mongo somewhere.mongolayer.com:10011/my_database -u username -p password

连接后,是否可以查看收藏?

> show collections

如果是这样的话,一切都很好,您只是没有数据库的管理员权限,并且不能运行show dbs

对于Mongo 3.2及更高版本,只需按如下方式使用连接字符串:

mongo mongodb://username:password@somewhere.mongolayer.com:10011/my_database

另一种方法是:

mongo mongodb://mongoDbIPorDomain:port

相关内容

最新更新