【发布时间】:2020-06-16 11:12:18
【问题描述】:
我在 MongoDB Atlas 上创建了一个集群,并使用 Compass 成功连接到它,还使用本地运行的 Node。
当我尝试在我的 CentOS 机器上运行相同的代码时,我得到一个ECONNREFUSEDerror。这是我的节点代码
const MongoClient = require('mongodb').MongoClient;
const uri = "mongodb+srv://myuser:mypass@tablematic-0-z4nuk.gcp.mongodb.net/test?retryWrites=true&w=majority";
const client = new MongoClient(uri, { useNewUrlParser: true });
client.connect(err => {
const collection = client.db("test").collection("devices");
console.log("ERROR: " + err);
client.close();
});
myuser 和 mypass 在这里替换为我的实际用户名和密码。
我已经为端口27015、27016 和27017 打开了服务器的防火墙。
Atlas 设置为接受来自任何传入 IP 的连接。
我实在想不出是什么原因造成的……
【问题讨论】:
-
已尝试从您的 centos ping
tablematic-0-z4nuk.gcp.mongodb.net与它在哪里工作,看看您是否发现任何不同? -
我还建议使用 mongo shell 并运行
mongo yourconnectionstring看看是否可以在 centos 上运行
标签: node.js mongodb centos mongodb-atlas