node.js - Mongoose无法连接: Error: querySrv ENOTIMP mongodb. tcp.cluster1-owfxv.mongodb.net

标签 node.js mongodb mongoose kubernetes

Mongoose 无法连接到 mogodb Atlas。它每次都会给我这个错误:

 Error: querySrv ENOTIMP _mongodb._tcp.cluster1-owfxv.mongodb.net

我在本地 minikube 内的 kubernetes 集群中运行。 如果我直接运行项目,那么它可以完美运行,但使用 minikube 时它总是给我错误。

以下是我的代码:

  const url = "mongodb+srv://name:password@cluster1-owfxv.mongodb.net/test?retryWrites=true";

    const mongoDbOptions = {
        useNewUrlParser: true,
        reconnectTries: 10,
        autoReconnect: true

    };
    mongoose.connect(url, mongoDbOptions).then((r) => { }).catch((e) => {
        console.log(e);
    });

错误消息对我来说不太清楚。奇怪的是它直接可以工作,但在 kubernetes 集群上却不起作用。

我将非常感谢您的任何贡献。

最佳答案

尝试使用与 mongo 驱动程序 2.2.12 或更高版本兼容的连接字符串,即 mongodb://username:password@host1:port,host2:port,host3:port/databaseName 的连接字符串

目前尚不清楚为什么无法使用新网址连接到 mongodb。

关于node.js - Mongoose无法连接: Error: querySrv ENOTIMP mongodb. tcp.cluster1-owfxv.mongodb.net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55193623/

相关文章:

node.js - mongoDB同时更新2个集合

mongodb - NestJS - 如何使用装饰器创建嵌套模式

javascript - 在 Mongodb 中根据年份查找文档

node.js - 将TFS2017任务更新到最新版本

node.js - Nodejs代理到另一个端口

node.js - Swig-模板默认扩展名

mongodb - GCP应用引擎中的Mongo数据库

node.js - 从node.js中的mongoDB数据生成JSON树

javascript - 无法读取未定义的属性 'push'

node.js - 如何使用expressJS使用新数据重新渲染 View ?