Windows跨设备连接MongoDB遇MongoNetworkError:ECONNREFUSED求助
MongoDB远程连接ECONNREFUSED问题排查(Windows环境)
环境信息
- 服务器:Windows Server 2019,MongoDB v7.0.5(以服务形式运行)
- 客户端:Windows 10,Mongosh v2.1.5
- 错误提示:
MongoNetworkError: connect ECONNREFUSED 172.18.44.22:27017
- 已完成排查:MongoDB服务运行正常,Windows防火墙已配置允许27017端口的进出流量,服务器本地连接mongosh正常。
可能的问题及解决步骤
1. MongoDB绑定地址限制(最常见原因)
默认情况下MongoDB仅绑定127.0.0.1,仅允许本地访问。需修改配置文件开放远程连接:
- 找到MongoDB配置文件,通常路径为
C:\Program Files\MongoDB\Server\7.0\bin\mongod.cfg - 定位到
net节点,修改bindIp字段,添加服务器内网IP或设置为0.0.0.0(允许所有IP访问):net: port: 27017 bindIp: 127.0.0.1,172.18.44.22 # 或直接写0.0.0.0 - 重启MongoDB服务:打开「服务」管理器,找到
MongoDB Server右键选择「重启」。
2. 网络连通性验证
- 在Windows 10客户端执行
ping 172.18.44.22,确认服务器IP可达。若ping不通,需排查子网、路由或网络配置问题。 - 若ping通仍无法连接,执行
telnet 172.18.44.22 27017测试端口是否开放。telnet不通的话,检查防火墙规则是否覆盖TCP协议、是否应用于当前网络类型。
3. 配置文件生效验证
- 检查MongoDB服务的启动参数,确认加载的是修改后的
mongod.cfg:打开「服务」管理器,右键MongoDB Server→「属性」→「可执行文件路径」,查看是否指定了正确的配置文件路径。 - 可手动启动MongoDB验证配置:执行命令
mongod --config "C:\Program Files\MongoDB\Server\7.0\bin\mongod.cfg",观察是否有配置相关报错。
4. 身份验证规则排查
若MongoDB启用了身份验证,远程连接需携带凭据(本地连接可能因信任本地IP跳过验证),尝试用带认证的命令连接:
mongosh "mongodb://172.18.44.22:27017" --username 你的用户名 --password 你的密码
注:此情况错误提示通常为认证失败,但可作为排除项。
5. 第三方安全软件拦截
若服务器安装了第三方防火墙或安全软件,需确认其未拦截27017端口的入站连接。
内容的提问来源于stack exchange,提问作者Victor
相关产品推荐
相关产品推荐

