我是设置服务器环境和mongoDB的新手。这听起来可能很简单,但是,我真的需要你的帮助。
我正在尝试从本地机器连接到运行 mongodb 实例的虚拟机,当我在单独的远程服务器上运行它时,我认为它应该类似于生产环境。
环境如下:
虚拟机私有(private)IP:192.168.184.155
本地机和虚拟机的公共(public) IP:96.88.169.145
我将 /etc/mongod.conf 文件中的 bind_ip 更改为
bind_ip = 127.0.0.1
到
bind_ip = 127.0.0.1,192.168.184.155,96.88.169.145
重启mongod服务后,虚拟机和本地机都无法通过mongodb命令访问mongodb,报如下错误。
MongoDB shell version: 3.0.1
connecting to: test
2015-03-17T16:02:22.705-0400 W NETWORK Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-03-17T16:02:22.707-0400 E QUERY Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed
at connect (src/mongo/shell/mongo.js:179:14)
at (connect):1:6 at src/mongo/shell/mongo.js:179
exception: connect failed
但是,如果我改变了
bind_ip = 192.168.184.155
并重新启动服务,它可以工作,我可以从本地机器上使用 mongo 访问。它似乎不适用于多个 IP 地址。我试图在 mongodb 文档中查找,但是,他们确实提到 bind_ip 需要一个逗号分隔的列表,这让我很困惑。
提前感谢您的帮助。
最佳答案
在 mongo 3.2.7 中将逗号分隔的 Ips 用括号括起来对我来说有效:
bindIp = [127.0.0.1, 192.168.184.155, 96.88.169.145]
https://stackoverflow.com/questions/29109134/
相关文章:
node.js - Node.js/Mongoose 上的 "VersionError: No ma
mongodb - 在 node.js 和 mongodb 中创建注册和登录表单
mongodb - 如何使用 Scala 将 1 亿条记录加载到 MongoDB 中进行性能测试?
mongodb - 在 MongoDB 中使用 UUID 而不是 ObjectID
mongodb - 只安装 mongo shell,不安装 mongodb
javascript - 在 Meteor 应用程序中实现 MongoDB 2.4 的全文搜索