运行mongod.exe后用MongoChef连接MongoDB报错超时被拒绝如何解决?
MongoDB 27018端口连接拒绝报错解决方案
报错核心说明
你收到的Connection refused: connect报错本质是MongoChef客户端无法和本地MongoDB服务建立TCP连接,服务端主动拒绝了27018端口的访问请求。
常见报错原因
- 端口配置不匹配:MongoDB默认监听端口为27017,报错日志显示MongoChef尝试连接的是27018端口,大概率是MongoDB启动时未指定27018端口,或是MongoChef的连接配置端口填写错误
- MongoDB服务未正常启动:运行mongod.exe后可能因数据目录不存在、端口被其他程序占用、配置文件错误等问题导致服务启动失败,27018端口实际没有被监听
- 本地安全策略拦截:防火墙、杀毒软件等安全工具拦截了27018端口的网络请求,导致连接被拒绝
- 绑定IP配置错误:mongod启动时设置的bind_ip参数未包含127.0.0.1,导致通过localhost访问时被服务端拒绝
对应解决方法
- 核对端口配置:
执行命令netstat -ano | findstr "mongod"查看MongoDB实际监听的端口,若显示监听的是27017端口,直接修改MongoChef连接配置的端口为27017即可。如果需要使用27018端口,启动mongod时指定端口参数:mongod.exe --port 27018 - 验证服务运行状态:
查看mongod.exe运行窗口的输出日志,检查是否有启动失败的报错提示,根据报错修复(比如创建默认数据目录C:\data\db、结束占用27018端口的其他进程)后重新启动服务即可 - 解除安全工具拦截:
临时关闭本地防火墙、杀毒软件后重试连接,若连接成功则将MongoDB程序、对应监听端口加入安全工具的白名单即可 - 修正绑定IP配置:
启动mongod时指定允许本地访问的绑定IP,命令示例:mongod.exe --bind_ip 127.0.0.1 --port 27018,确保localhost访问请求能被服务端接收
内容的提问来源于stack exchange,提问作者Adil Abdullah
相关产品推荐
相关产品推荐

