使用Node.js连接MongoDB Atlas时遇querySrv ECONNREFUSED错误求助
解决Node.js连接MongoDB Atlas出现querySrv ECONNREFUSED错误
针对你遇到的querySrv ECONNREFUSED _mongodb._tcp.cluster0.2wikwxf.mongodb.net错误,可按以下步骤排查解决:
检查网络限制:
公司、学校内网的防火墙可能拦截SRV DNS查询或MongoDB端口(27017)。尝试切换至手机热点等不受限网络,验证是否能正常连接。核对连接字符串:
确认MongoDB Atlas提供的连接字符串格式正确,尤其是mongodb+srv://开头的SRV格式是否无拼写错误。若使用较旧版本的Node.js(v12及以下),建议切换为非SRV格式的连接字符串(以mongodb://开头,需手动指定端口与集群节点)。验证Atlas IP白名单:
登录MongoDB Atlas控制台,检查当前设备的公网IP是否已添加至项目的IP白名单中。测试阶段可临时设置为允许所有IP(0.0.0.0/0),确认连接正常后再限制为指定IP。测试DNS解析:
在终端执行以下命令测试SRV记录解析:nslookup _mongodb._tcp.cluster0.2wikwxf.mongodb.net若解析失败,说明本地DNS服务器存在问题,可尝试更换为公共DNS(如8.8.8.8)。
更新MongoDB驱动:
旧版本的Node.js MongoDB驱动可能存在SRV解析bug,执行以下命令更新至最新版本:npm install mongodb@latest
内容的提问来源于stack exchange,提问作者Chidera Emmanuel
相关产品推荐
相关产品推荐

