无法使用mongodb+srv将Mongo shell连接到Mongo Atlas M0

wi3ka0sx  于 2022-12-12  发布在  Go
关注(0)|答案(4)|浏览(240)

我正在尝试通过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客户端给定版本中的bug吗?

e0bqpujr

e0bqpujr1#

它看起来像错误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
mpbci0fu

mpbci0fu2#

同样的事情也发生在我身上,但就在我更换互联网供应商之后。之前,我可以毫无问题地连接到Mongo Atlas。
我猜这是因为我的互联网提供商的DNS解析器无法解析连接到mongodb atlas的URI。
解决方案-〉更改我的PC上的DNS解析器:
1.打开“控制面板”。
1.单击查看网络状态和任务
1.单击窗口左侧的“Change adapter settings(更改适配器设置)”。
1.连按您正在使用的Internet连接的图标。
1.单击“属性”按钮。
1.单击并突出显示Internet协议版本4(TCP/IPv4),然后单击属性.
1.如果尚未选择“使用以下DNS服务器地址”选项,请选择该选项。
1.输入新的DNS地址,然后单击“OK”(确定)并关闭所有其他窗口。
我用谷歌公共域名8.8.8.8.
之后,我可以再次连接与我的蒙戈壳或指南针蒙戈Map集。
希望这能帮助到一些人。

dauxcl2d

dauxcl2d3#

我在使用Comcast X的时候也遇到了这个问题。对于那些运行Ubuntu 18.04或类似版本的用户,我不得不编辑(需要root权限)/etc/dhcp/dhclient.conf文件,并添加到以下行:我希望这能对某些人有所帮助,我花了太长时间才弄明白。:-)

u3r8eeie

u3r8eeie4#

我花了很多时间来弄清楚这个问题。改变DNS后,它工作了。谢谢使用谷歌DNS服务器。

  • 8.8.8.8
  • 8.8.4.4

相关问题