MongoDB 6.0(MSI版)JS连接无限耗时问题求助
解决MongoDB连接无限耗时问题的方案
检查MongoDB服务状态
- 按下
Win + R输入services.msc打开Windows服务管理器,找到MongoDB Server服务,确认它处于正在运行状态。若未运行,右键启动服务并设置启动类型为自动,避免后续重复出现问题。
修正连接代码逻辑(适配新版驱动)
你使用的是旧版回调写法,MongoDB 6.0对应的Node.js驱动已更新,原回调中的db对象结构变化导致db.close()无法正确执行,进而卡住程序。改用新版async/await写法:
const { MongoClient } = require('mongodb'); const url = "mongodb://127.0.0.1:27017/mydb"; async function connectToDB() { let client; try { client = await MongoClient.connect(url); console.log("Database created!"); } catch (err) { console.error(err); } finally { if (client) { await client.close(); } } } connectToDB();
- 用async/await替代回调,逻辑更清晰且能正确释放连接资源
- 明确操作
client对象,调用client.close()完成连接关闭(旧版db.close()已不适配新版驱动)
检查MongoDB配置文件的绑定地址
打开MongoDB配置文件(默认路径C:\Program Files\MongoDB\Server\6.0\bin\mongod.cfg),找到net.bindIp配置项,确认其值为127.0.0.1或0.0.0.0(允许所有IP访问)。若为其他值,修改后重启MongoDB服务生效。
验证端口占用情况
打开命令提示符执行netstat -ano | findstr :27017,查看27017端口是否被其他进程占用。若存在占用,结束对应进程或在mongod.cfg中修改net.port更换MongoDB监听端口。
内容的提问来源于stack exchange,提问作者Dhafer Ziadi
相关产品推荐
相关产品推荐

