【发布时间】:2020-08-31 03:32:04
【问题描述】:
我正在尝试将我的猫鼬与我的 MongoDB Atlas 集群连接起来。它目前没有数据库或任何东西,但每当我尝试时:
mongoose.connect( uri || 'mongodb://localhost/test',options)
.then(()=>{
console.log("Connected to the Database. Yayzow!");
})
.catch(err => {
console.log(err);
});
我收到这条消息:
Error: queryTxt ETIMEOUT cluster0-ghis2.mongodb.net
at QueryReqWrap.onresolve [as oncomplete] (dns.js:202:19) {
errno: 'ETIMEOUT',
code: 'ETIMEOUT',
syscall: 'queryTxt',
hostname: 'cluster0-ghis2.mongodb.net'
}
我的依赖:
"dependencies": {
"express": "^4.17.1",
"mongodb": "^3.5.7",
"mongoose": "^5.9.14"
}
我现在已将所有 IP 列入白名单 (0.0.0.0/0)。此外,我已确保我的防火墙已断开连接,我的防病毒软件也是如此。我让我的朋友也检查了一下,它确实对他有用,但对我没有用
感谢任何帮助!
编辑
通过将我的 DNS 更改为 Google 的公共 DNS 解决了错误! 如果有人收到此错误,请确保更改您的 DNS。 抛出相同here的链接
【问题讨论】:
-
两件事:1.今天(14/05/2020)MongoDb Atlas 非常慢(至少对我来说)。在我写这篇文章时,我几乎无法访问该网站,所以也许不仅仅是你,而是连接问题。 2.一旦我将所有IP列入白名单后遇到类似问题,我也将我的实际IP(例如:192.xxx.xxx ...)列入白名单并解决了我的问题,所以尝试这样做。
-
即使我认为这是他们的问题,但后来我给了我的朋友我的凭据,这对他有用。我会尝试第二个,然后告诉你。顺便感谢您的帮助
-
谢谢,但事实证明这是我的网络问题。通过更改我的问题的编辑部分中提到的 DNS 来解决它。
-
它在本地主机中为我工作,但是当我将我的应用程序部署到 Heroku 并运行它时,我收到错误“操作
users.insertOne()缓冲在 10000 毫秒后超时”。已将集群的所有 IP 列入白名单 -
感谢您为 DNS 设置添加编辑,它对我有用!
标签: mongodb mongoose mongodb-query