MongoNetworkError:第一次连接时无法连接到服务器 \[localhost:27017\] \[MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017\]

新手上路,请多包涵

我是nodeJS的新手,开始学习youtube上的预告片,一切都很顺利,直到我添加了mongodb的connect函数,

 mongo.connect("mongodb://localhost:27017/mydb")

当我在 cmd (node start-app) 上运行我的代码时,出现以下错误,

 MongoNetworkError: failed to connect to server [localhost:27017] on first connect [MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017]

有人可以解释一下我错过了哪一步吗?我的代码:

 var express = require("express");
var MongoClient = require('mongodb');
var url = "mongodb://localhost:27017/mydb";
var webService = require("./webService");
var server = express();

MongoClient.connect(url, function (err, db) {
    if (err) throw err;
    console.log("Database created!");
    db.close();
});

server.use(express.urlencoded({ extended: true }));

server.set('views', __dirname);

server.get('/', function (request, response) {
    response.sendFile(__dirname + '/MainPage.html');
});

server.get('/Sign', function (request, response) {
    response.render(__dirname + '/Sign.ejs');
});

server.post("/signUp", webService.signUp);

server.post("/createUser", webService.createUser);

server.listen(5500);

原文由 Karam Haj 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.6k
2 个回答

您必须首先在系统中安装 MongoDB 数据库服务器并启动它。

使用以下链接安装 MongoDB

https://docs.mongodb.com/manual/installation/

如果您已安装 MongoDB,请检查服务器是否处于哪种状态(启动/停止)。尝试通过 mongo shell 客户端连接。

原文由 Vishnu 发布,翻译遵循 CC BY-SA 4.0 许可协议

他们中的许多人都没有添加这个,特别是在 AWS EC2 实例中,我遇到了同样的问题并尝试了不同的解决方案。解决方案:我的代码中的一个数据库 URL 缺少这个参数“authSource”,添加这个对我有用。

 mongodb://myUserName:MyPassword@ElasticIP:27017/databaseName?authSource=admin

原文由 NadZ 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题