我创建了一个 MongoDB 集群。 在“网络访问”选项卡中添加了我的 IP 地址。 然后我转到 VSCode 并添加了 MongoDB 扩展。 我单击“连接”,然后从 MongoDB 集群插入连接字符串,如下所示:(是的,我用我的信息填充了连接字符串)
mongodb://<myaccount>:<mypassword>@<mycluster>.mongodb.net/
但是连接时我总是收到此错误:
Unable to connect: getaddrinfo ENOTFOUND <mycluster>.mongodb.net
附加信息:我有一台 MacBook。
我需要进行任何其他配置或特定的 DNS / 防火墙配置吗?
我尝试过:
首先,检查您是否确实使用了正确的IP地址来打开网络访问,使用以下命令:
curl -4 ifconfig.co
然后尝试使用此连接字符串,因为您正在连接远程托管的集群而不是本地,因此您不仅连接数据库,还连接服务器:
mongodb+srv://<myaccount>:<mypassword>@<mycluster>.mongodb.net/<your_database_name>?retryWrites=true&w=majority
请记住重新检查您的服务器 url 并将您的数据库名称放在服务器地址后面,可能仅当它不是默认名称时才需要(通过 MongoDB Compass 连接时不需要)。在 MongoDB Atlas 中单击集群屏幕上的“连接”选项时,可以获得服务器 URL 和整个连接字符串。
以下是一些参考文档: https://www.mongodb.com/docs/manual/reference/connection-string/