首页 > 解决方案 > 使用 WSL 2 时的 MongoDB 问题(错误:连接 ECONNREFUSED 127.0.0.1:27017)

问题描述

我对开发非常陌生,到目前为止,我一直在遵循在线课程说明,但现在我决定将我所有的工作从 GoormIDE 迁移到 WebStorm。在 GoormIDE 中,MongoDB 和 NodeJS 是自动安装的,所以我必须在我的 Windows 上安装它们才能正常工作。

我设法在本地运行了该应用程序(您可以在此处查看:https ://yelpcampuk.herokuapp.com/ ),但是一旦我点击“查看所有露营地”按钮,我就会收到此错误:错误:连接 ECONNREFUSED 127.0.0.1:27017。

如果我能从有使用 WSL2 和 MongoDB 经验的人那里获得一些帮助以找出问题所在,那就太好了。是的,MongoDB 正在 Windows 命令中运行,因为它无法使用 WSL2 在 Ubuntu 20.04 上运行(但如果我错了,请纠正我)

这就是我在 GoormIDE 中连接到数据库的方式,它运行良好:

var url = process.env.DATABASEURL || "mongodb://127.0.0.1:27017/YelpCamp"

mongoose.set("useUnifiedTopology", true);
mongoose.connect(url, {
  useNewUrlParser: true,
  useCreateIndex: true
}).then(() => {
  console.log('Connected to DB!');
}).catch(err => {
  console.log('ERROR:', err.message);
});

但是当我尝试通过 WebStorm(或 VS Code)在我的笔记本电脑上运行时,我只会收到上述错误。

欢迎任何建议,因为我花了很多时间进行研究,但我还不能真正接近解决方案......

ps:我是2个月前才开始学习编码,所以如果我写了一些愚蠢的东西,请原谅我!谢谢大家!

标签: mongodbvisual-studio-codewebstormwsl-2

解决方案


这对我有用:

mongod --bind_ip 0.0.0.0在 Windows CMD 上

我能够通过 WSL2 连接到它。检查您是否有其他 MongoDB 服务器正在运行,我必须在运行命令之前结束每个任务。


推荐阅读