【问题标题】:MongoDB DaaS: Remote connection string seems to result in local lookupMongoDB DaaS:远程连接字符串似乎导致本地查找
【发布时间】:2017-01-16 01:04:22
【问题描述】:

我有兴趣尝试 DaaS 服务以在生产中将 MongoDB 与我的 Node/Express 应用程序一起使用,但连接时遇到问题。

使用 Compose 和 mLab,我能够成功连接到远程服务器的 mongo 控制台,但是当我尝试使用 Mongoose 使用连接字符串连接时:

mongoose.connect('mongodb://user:pass@server.compose.io:port_name/db_name');

mongoose.connect('mongodb://<dbuser>:<dbpassword>@ds012345.mlab.com:56789/mydb');

在我的应用中,我收到以下错误:

MongoError: failed to connect to server [localhost:27017] on first connect at null.

使用不同的机器,我使用我正在开发的应用程序成功连接到 mLab,所以我有信心 a) 应用程序 - 就设置而言,它几乎是快速生成器样板 - 没有设置在阻止连接的方式,并且 b) 这里没有一个基本问题,比如输入错误的连接字符串。

我发布此内容是为了查看是否与我的 Node 环境有关,或者可能与我正在使用的计算机的网络设置有关,我应该考虑让我的应用再次连接到远程用于在开发期间进行测试的 MongoDB 数据库。

非常感谢您的帮助。

【问题讨论】:

    标签: node.js mongodb express compose-db mlab


    【解决方案1】:

    我会检查您的代码,以确保您没有竞相读取连接字符串,并且代码中的某处没有“mongoose.connect()”。该错误更能说明connect() 被调用时不带参数或使用 null 并使用其默认设置(IME 任何其他 URL 格式错误往往会产生特定错误)。

    【讨论】:

    • 非常感谢。我会四处看看。也喜欢您在 compose.com 上的文章 - 对我很有帮助。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-07
    • 2023-03-12
    • 1970-01-01
    • 1970-01-01
    • 2015-10-17
    相关资源
    最近更新 更多