【发布时间】:2019-01-31 13:18:29
【问题描述】:
我尝试通过 compass 连接到我的本地 mongodb 服务器,但它抛出错误“MongoDB 未在提供的主机和端口上运行”,我尝试多次更改配置文件。我试过设置 "bindIpAll: true" ,bindIp:我的主机名(IPv4 地址),注释该行。一切都是失败的。任何人都可以帮我解决这个问题。
提前致谢。
【问题讨论】:
标签: mongodb
我尝试通过 compass 连接到我的本地 mongodb 服务器,但它抛出错误“MongoDB 未在提供的主机和端口上运行”,我尝试多次更改配置文件。我试过设置 "bindIpAll: true" ,bindIp:我的主机名(IPv4 地址),注释该行。一切都是失败的。任何人都可以帮我解决这个问题。
提前致谢。
【问题讨论】:
标签: mongodb
只要去任务管理器然后点击服务并搜索MongoDB,右键点击它并启动服务。 这对我有用。
【讨论】:
您是否尝试过在 IP 地址 27017 后面加上“:”的端口号。
【讨论】:
我在尝试将 mongoDB Compass 连接到 AWS Ubuntu Linux 实例(确切地说是 Lightsail 服务)上的 mongoDB 时遇到了这个问题。 在这里和其他地方阅读了很多类似的问题(并检查了我的防火墙规则以允许端口 27017 连接)后,我去检查了 /etc/mongodb.conf 文件。
默认情况下,bind_ip(在我系统的第 11 行)配置为 127.0.0.1,可以从同一台机器连接。在此配置条目中,您应该放置所有侦听连接的 IP。
我尝试在逗号后添加我的实例公共 IP
bind_ip = 127.0.0.1,35.xx.xx.xx (where 35.xx.xx.xx was my public IP)
此时服务不再启动。我在跟踪日志时手动启动了服务(在 /var/log/mongodb 下查看)以阅读此错误消息:
2019-03-19T15:51:59.338+0000 [initandlisten] ERROR: listen(): bind() failed errno:99 Cannot assign requested address for socket: 35.xx.xx.xx:27017
所以我按照另一个网站上的建议尝试了 0.0.0.0,但它给出了类似的错误。
我通过将我的 AWS 实例 私有 IP 地址 放在配置文件中解决了这个问题:
bind_ip = 127.0.0.1,172.xx.xx.xx (where 172.xx.xx.xx is your PRIVATE IP)
希望这会有所帮助!
【讨论】:
我在使用最新的 mongodb v:6.14.4 时遇到了同样的问题,我的解决方案是打开 cmd 并运行 'mongo' 这给出了路径如果已安装 mongodb 正在运行,请从 cmd 复制路径,您可以在节点模块中使用如下: const mongodb = "mongodb://127.0.0.1:27017/database-name";
【讨论】: