You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无法在本地将Node.js连接至MongoDB的问题求助

MongoDB连接错误:connect ECONNREFUSED ::1:27017 解决方案

错误信息(中文翻译)

$ node app.js
MongoServerSelectionError: 连接被拒绝 ::1:27017
    at Timeout._onTimeout (C:\Users\Dahmie Nahty\Desktop\NativeDriverProject\node_modules\mongodb\lib\sdam\topology.js:293:38)
    at listOnTimeout (node:internal/timers:564:17)
    at process.processTimers (node:internal/timers:507:7) {
  reason: TopologyDescription {
    type: 'Unknown',
    servers: Map(1) { 'localhost:27017' => [ServerDescription] },
    stale: false,
    compatible: true,
    heartbeatFrequencyMS: 10000,
    localThresholdMS: 15,
    setName: null,
    maxElectionId: null,
    maxSetVersion: null,
    commonWireVersion: 0,
    logicalSessionTimeoutMinutes: null
  },
  code: undefined,
  [Symbol(errorLabels)]: Set(0) {}
}

解决步骤

  • 检查MongoDB服务状态
    打开命令行工具,执行对应命令确认服务是否启动:
    • Windows:net start MongoDB(启动服务),sc query MongoDB(查看状态)
    • Mac:brew services start mongodb-community(Homebrew安装版本)
    • Linux:sudo systemctl start mongod(启动服务),sudo systemctl status mongod(查看状态)
  • 替换连接地址为IPv4格式
    部分系统中localhost会优先解析为IPv6地址(::1),但MongoDB默认可能仅监听IPv4。把app.js里的连接字符串从mongodb://localhost:27017改成mongodb://127.0.0.1:27017
  • 排查端口占用情况
    执行命令检查27017端口是否被其他程序占用:
    • Windows:netstat -ano | findstr :27017
    • Mac/Linux:lsof -i :27017
      若端口被占用,关闭对应进程或修改MongoDB监听端口
  • 核对MongoDB配置文件
    打开配置文件(通常为mongod.conf),确认net.bindIp设置为127.0.0.1或0.0.0.0(允许所有IP访问),修改后重启MongoDB服务

内容的提问来源于stack exchange,提问作者Kareem Victor

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 14:15:13