我正在尝试通过mongo+srv
连接连接到我的MongoDB Atlas Cloud集群,如下所示:
mongo "mongodb+srv://cluster0-mhzdc.mongodb.net/test" --username myuser
我收到此回复:
DNSHostNotFound: Failed to look up service "_mongodb._tcp.cluster0-mhzdc.mongodb.net": Undefined error: 0
try 'mongo --help' for more information
我正在使用以下版本的Mongo客户端:
mongo --version
MongoDB shell version v4.0.5
git version: 3739429dd92b92d1b0ab120911a23d50bf03c412
allocator: system
modules: none
build environment:
distarch: x86_64
target_arch: x86_64
我在网上找不到任何解决方法。任何想法有什么问题吗?这是给定版本的Mongo Shell客户端中的错误吗?
答案 0 :(得分:3)
我也遇到了同样的情况,但是在我更换了互联网提供商之后。以前,我可以毫无问题地连接到mongo地图集。
我想这是因为我的互联网提供商的DNS解析器无法解析uri以连接到mongodb地图集。
解决方案-> 在我的PC上更改de DNS解析器:
我使用了Google公开DNS 8.8.8.8。
之后,我可以再次用我的mongo shell或指南针连接到mongo地图集。
希望对某人有帮助。
答案 1 :(得分:1)
看起来像错误34117,但仍未解决:
https://jira.mongodb.org/browse/SERVER-34117
要解决此错误,请检查笔记本上是否有活动的DNS解析器。 在Windows上:
ipconfig /displayDNS
以查看当前的DNS解析器缓存。 您甚至可以尝试使用以下命令清除缓存:
ipconfig /flushdns
,然后重试。 如果您正在使用linux ubuntu,请尝试以下命令:
named -v
检查DNS解析器软件是否已安装。 如果没有:
sudo apt update
sudo apt install bind9 bind9utils bind9-doc bind9-host
要安装所需的软件包,然后启动服务:
sudo systemctl start bind9
然后重试。
在Mac OSX上,命令为:
sudo killall -HUP mDNSResponder;sudo killall mDNSResponderHelper;sudo dscacheutil -flushcache
答案 2 :(得分:0)
Comcast Xfinity也遇到了这个问题。对于运行Ubuntu 18.04或类似版本的用户,我必须编辑/etc/dhcp/dhclient.conf
文件(您需要root权限),然后添加到以下行:
supersede domain-name-servers 8.8.8.8, 8.8.4.4;
我希望这对某人有帮助,我花了太长时间才弄清楚。 :-)