在Azure上连接到MongoDB(从客户端)

时间:2014-12-30 00:55:51

标签: mongodb azure azure-virtual-machine

我正在尝试使用Azure VM设置我的MongoDB开发环境。 VM启动并运行MongoDB 2.6.6,我可以通过SSH连接到VM并运行MongoDB。

但是,我无法从任何外部客户端(即cmd shell mongo客户端或robomongo)连接到Mongo。我正在使用提供给我的公共IP,并使用默认端口。我还尝试编辑/etc/mongodb.conf以指定端口号(端口= 27017),并重新启动了服务..但这似乎没有任何区别......

2 个答案:

答案 0 :(得分:6)

我假设这将被转移到ServerFault。与此同时:如果您刚刚启动一个新的MongoDB实例,外部访问需要两件事:

  1. mongod.conf中,bind_ip的默认配置为127.0.0.1,这意味着mongod绑定到本地接口。注释掉这一行以听取所有接口
  2. 特定于Azure:确保您创建了一个输入端点,以允许外部流量到达MongoDB VM。你可以使用任何端口作为面向外部的一面,并让它在内部映射到27017。从约定的角度来看,在外部和内部使用27017是有意义的,因为这是默认的MongoDB端口。

答案 1 :(得分:2)

mongodb使用的端口未打开以进行外部访问。从客户端访问它的一种方法是打开ssh隧道。 mongodb的默认端口是27017: ssh -f -L 27017 :: 27017

在此处阅读有关ssh隧道的更多信息: http://blog.trackets.com/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examples.html