我是mongoDB的新手,到目前为止我很喜欢它,我在本地为我的开发工作,我在Win7上把mongo作为服务运行。我在Win server 2008上把它作为服务运行在我的VPS上。当我在服务器上的时候,它工作得很好,但是我不知道如何设置它,以便我可以从服务器外部访问它?找不到任何好的文档。另外,我很难从本地计算机在服务器上进行备份/恢复,因为我无法从服务器外部看到它。
我想有更多的信息,也对主/从和主机设置这一正确。
当我运行netstat-anb时,我得到
TCP 127.0.0.1:27017 0.0.0.0:0 LISTENING
[mongod.exe]
TCP 127.0.0.1:27017 127.0.0.1:62990 ESTABLISHED
[mongod.exe]
TCP 127.0.0.1:28017 0.0.0.0:0 LISTENING
这就是我对mongod.exe的全部了解
[编辑]
我尝试用--bind_ip xxx. x.x. xx重新安装,现在xxx. x.x. xx:27017可以工作,但只有在远程服务器上,如果我尝试从任何地方访问它失败。
此外,我关闭了防火墙,它没有改变任何东西。
多谢了!
7条答案
按热度按时间guz6ccqo1#
我想我找到了实现它的方法。首先,允许端口27017在你的防火墙上。然后,我安装Mongo作为一个服务使用配置文件。我创建的mongos.conf如下:
我将其保存在:d:\蒙戈\蒙戈.配置文件
然后我在命令行中执行以下操作:
关键是要确保在你的配置文件中没有bind_ip配置键,这样它将允许mongo绑定到任何IP。
http://localhost:27017并查看以下消息:
您还可以访问:
http://192.168.x.x:27017(您的ip),您应该会看到相同的输出。
zpf6vheq2#
在mongod.cfg中(位于C:\程序文件\MongoDB\服务器\4.0\bin),只需更新:
然后重新启动MongoDB服务器服务
让mongo数据库绑定到0.0.0.0,即所有接口,而不仅仅是127.0.0.1。然后,它将允许连接到所有接口。
au9on6nz3#
尝试在DOS管理提示符下运行以下命令,打开对默认MongoDB端口27017的外部访问:
sczxawaw4#
如果你不能远程访问它,听起来像是防火墙的问题。默认情况下,mongod监听端口27017。从你试图连接的机器上可以访问那个端口吗?这听起来更像是防火墙的问题,而不是mongod的问题。你能编辑你的问题来提供mongo服务运行的命令行吗?
Kristina Chodorow's blog上有关this article中副本集的信息的一个很好的来源。
mzsu5hc05#
对于MongoDb 4.x,我做了以下事情:
1.我编辑了防火墙并启用了主机上的端口27017访问。
C:\Program Files\MongoDB\Server\4.0\bin
上,它包含一个名为mongod.cfg
的文件。bindIp: 127.0.0.1
和添加的主机ipbindIp: 127.0.0.1, 192.168.1.xxx
192.168.1.xxx:27017
访问它。ftf50wuq6#
安装mongo并设置
1.安装mongodb并选中Windows服务
1.允许防火墙中的特定端口:27017
1.在mongod.cfg文件中(位于C:\Program Files\MongoDB\Server\4.4\bin),只需注解bindIp:127.0.0.1并添加新行bindIp:0.0.0.0:
最后两步将允许您远程访问
创建用户
1.打开cmd,转到安装路径,例如C:\Program Files\MongoDB\Server\4.4\bin
1.在命令中输入mongo C:\程序文件\MongoDB\服务器\4.4\bin〉mongo
1.然后键入use admin(admin是数据库),并在结尾处
1.在服务中重新启动mongo服务
sshcrbum7#
1.为公共和专用启用Windows防火墙27017端口。
1.退出当前mongoDB,重新运行mongod
一些细节可以参考本文http://azure.microsoft.com/en-us/documentation/articles/virtual-machines-install-mongodb-windows-server/