启动MongoDB时遭遇连接拒绝错误,寻求解决办法
解决MongoServerSelectionError: connect ECONNREFUSED ::1:27017的方案
问题核心
报错说明Node.js程序无法连接本地MongoDB服务,大概率是MongoDB未启动,或是Node.js 17+默认用IPv6解析localhost但MongoDB未监听IPv6地址导致的。
解决步骤
确认MongoDB服务正在运行
- 若MongoDB是Windows服务安装的,打开命令提示符执行:
net start MongoDB - 若手动启动,找到MongoDB安装目录的bin文件夹(比如
C:\Program Files\MongoDB\Server\你的版本号\bin),运行mongod.exe启动服务 - 也可通过任务管理器「服务」标签,查看MongoDB服务状态,确保处于「正在运行」状态
- 若MongoDB是Windows服务安装的,打开命令提示符执行:
修改连接URL强制使用IPv4
Node.js 17及以上版本默认优先用IPv6解析localhost,但多数情况下MongoDB默认只监听IPv4地址。将代码里的连接URL修改为:var url = "mongodb://127.0.0.1:27017/mydb";检查MongoDB绑定配置(可选)
打开MongoDB配置文件(通常是mongod.cfg),找到net.bindIp配置项,确保值包含127.0.0.1或者0.0.0.0(允许所有IP连接)。修改后重启MongoDB服务生效。验证连接有效性
用MongoDB Shell测试连接:打开命令提示符执行mongosh "mongodb://127.0.0.1:27017/mydb",若能成功进入shell,说明服务正常,再运行你的Node.js程序即可。
内容的提问来源于stack exchange,提问作者crazy88
相关产品推荐
相关产品推荐

