我的nodejs应用程序与mongodb连接正常工作,突然出现了这个错误。然后我试图用mongo compass连接到mongodb,也出现了同样的错误。我找不到任何原因。
Error: querySrv ESERVFAIL _mongodb._tcp.cluster0.abcd0.mongodb.net
[nodemon] app crashed - waiting for file changes before starting...
然后我将mongodb连接url更改为旧url,之后我得到了这个错误。
Error: Could not connect to any servers in your MongoDB Atlas cluster. One common reason is that you're trying to access the database from an IP that isn't whitelisted. Make sure your current IP address is on your Atlas cluster's IP whitelist: https://docs.atlas.mongodb.com/security-whitelist/
[nodemon] app crashed - waiting for file changes before starting...
我已经将我的ip列入白色名单,我的配置是正确的(我仔细检查)。0.0.0.0/0(包括您当前的IP地址)
这是什么原因呢?
谢谢大家。
6条答案
按热度按时间1yjd4xko1#
querySrv ESERVFAIL
是DNS错误。这意味着您的本地机器无法从您的DNS解析器获得SRV记录
_mongodb._tcp.cluster0.abcd0.mongodb.net
的响应(我假设这不是您的真实的主机名,但它可以作为示例)在本地计算机上,从命令行测试SRV查找,可能是以下命令之一:
如果失败了,请随意说DNS提供商的坏话。
然后转到Atlas UI并获取3.6之前的连接字符串。它将以
mongodb://
而不是mongodb+srv://
开头。5n0oy7gb2#
乔的问题的识别是当场并帮助我解决.这是固定为我后,添加谷歌的DNS服务器(8.8.8.8)到我的电脑的Wifi设置.
在MacOS上的设置〉网络〉Wi-Fi(选择适当的网络)〉高级〉DNS然后添加DNS服务器8.8.8.8
i5desfxk3#
我是一个windows10用户,我面临着完全相同的问题。我已经弄清楚这是一个DNS问题。以下过程对我有效
Check this!如果您不是Windows 10用户
h5qlskok4#
停止服务器并再次运行您的服务器,它将解决问题。
tktrz96b5#
嘿,伙计们!
所以我在下面遇到了这个奇怪的错误:(
那么,是什么原因导致了这个错误呢?
谢谢,我希望这个解决方案也能为你服务!
6ovsh4lw6#
所以我偶然发现了同样的问题,但一个切换我的ISP,它为我修复了这个问题.这将是一个快速修复,正如前面提到的其他答案,这是一个DNS问题,切换我的ISP导致DNS服务器地址的变化,这就足够了.
如果错误更改为ETIMEOUT,则如@user3434785所述,8.8.8.8在DNS下添加www.example.com,如下所示:enter image description here