gpt4 book ai didi

node.js - 无法连接到 arduino yun 上的 mongo lab

转载 作者:太空宇宙 更新时间:2023-11-03 23:32:38 26 4
gpt4 key购买 nike

我无法在 arduino yun 上的 Nodejs 上使用 mongodb 或 mongoose 连接到数据库。

Unable to connect to the mongoDB server. Error: { [MongoError: Authentication failed.]
name: 'MongoError',
message: 'Authentication failed.',
ok: 0,
code: 18,
errmsg: 'Authentication failed.' }

我收到了这个错误。 该代码在我的台式计算机上运行良好。

//lets require/import the mongodb native drivers.
var mongodb = require('mongodb');

//We need to work with "MongoClient" interface in order to connect to a mongodb server.
var MongoClient = mongodb.MongoClient;

// Connection URL. This is where your mongodb server is running.
var url = 'mongodb://*******:********@address:23118/arduino';

// Use connect method to connect to the Server
MongoClient.connect(url, function (err, db) {
if (err) {
console.log('Unable to connect to the mongoDB server. Error:', err);
} else {
//HURRAY!! We are connected. :)
console.log('Connection established to', url);

// do some work here with the database.

//Close connection
db.close();
}
});

我正在尝试连接到 mongo lab 数据库。我没有尝试连接到任何其他数据库来排除故障。这是因为我找不到不需要信用卡的免费试用版。

编辑:

我有一个 Object Rocket 实例,它在我的 arduino yun 上完美运行。但是它非常昂贵;每月 30 美元(目前处于试用期)。而且我不需要速度或大量数据。因此,如果有人能弄清楚为什么它在 mlab 上不起作用,那就太好了。

最佳答案

我过去遇到过一些身份验证问题,我已按照以下步骤解决了这些问题:

1) 识别 mongo 服务器和 mongoose 的版本号

2) 确定什么 authentication mechanism您的服务器是否使用 Mongoose ,并确保 mongoose 正在尝试通过您的服务器期望的身份进行身份验证。如果您使用的是旧版本,可能不支持某些身份验证机制,因此您需要升级。

3) 确定用户的创建位置。查看Authentication Database并确保您的客户端正在使用此类数据库进行身份验证。它可能与您存储数据的数据库不同。事实上,它曾经是admin。如果是这样,请查看 authSource您可以添加到连接字符串中的选项。更多信息here .

除了上述所有内容之外,我建议您使用 mongo 客户端来验证您的凭据是否正确并且可以连接到数据库。

关于node.js - 无法连接到 arduino yun 上的 mongo lab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36445979/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com