如何将 Robomongo (或任何其他 mongodb 客户机)连接到由我的本地 Meteor 应用程序创建的 mongodb 实例?
确保 Meetor 在本地主机上运行。打开一个终端窗口并运行 meteor命令。如果没有更改为 port,它将在 localhost: 3000上开始运行。
meteor
当它运行时,打开一个单独的终端窗口并运行 meteor mongo命令。这将打开 MongoDB shell 并告诉您它连接到哪个端口。通常是0.7.1.1或3002版本的3001。它会说一些类似于 127.0.0.1:3001/meteor的东西
meteor mongo
127.0.0.1:3001/meteor
转到 Robomongo (或您最喜欢的 mongodb 客户端软件)并创建一个新的连接,确保将连接地址更改为 localhost 和给定的端口号。如果您的客户端不坚持使用默认数据库,则不需要额外定义/meteor。
也正如在 https://stackoverflow.com/a/22023284/1064151中指出的,一些驱动程序可能需要特定的行结束符、分界符或其他字符流。例如,目标一个基于 C 的驱动程序希望 URL 是 127.0.0.1:3001/,并且在末尾有额外的 /,否则就不能工作。所以一定要检查驱动程序/客户端的文档。
127.0.0.1:3001/
/
我太使用 Robomongo 和最新的更新 V0.7.1之前,我使用端口3002连接,如@Serkan Durusoy 建议的最新更新,它正在为3001端口工作
我使用的是 目标,一个基于 C 的 mongoDB 驱动程序。通过新的更新,而不是使用以前的 127.0.0.1:3002连接到运行陨石的 mongodb 的本地主机,我现在需要使用集合名仍然是 meteor.collection的 127.0.0.1:3001/。重要的变化是端口从 :3002到 :3001/。记住 /,它对连接是至关重要的。
127.0.0.1:3002
meteor.collection
:3002
:3001/
这对我有用,在连接之前,确保流星在运行。 我使用机器人连接。创建新的连接和添加 地址: 本地主机; 端口号: 3001
获取当前配置详细信息的最简单方法是使用以下命令
meteor mongo -U
这将为您提供连接字符串
从终端运行以下命令
这将显示本地主机 IP 地址和应用程序运行的端口。现在运行 Robomongo 并按照以下两个字段进行配置,这两个字段是通过运行前面的命令获得的
@ imal365答案很完美,我再补充一点:
我意识到默认的 MeetorMongo 端口号是应用程序的端口号,其中添加了1(从0.7.1.1版本开始)。在我的例子中,我使用命令 meteor --port 1337在端口 1337上运行流星,而我的流星 Mongo 端口是 1338。
meteor --port 1337
1337
1338
通过以下命令使用 SSH 隧道:
ssh -L 3001:localhost:3001 user-name@host
它将连接从本地端口3001转发到服务器上的 localhost: 3001。现在我们可以简单地连接到数据库。
在 本地主机上创建一个 Robomongo 连接,然后点击 测试(在两次检查中,身份验证可能会失败) :