节点版本18.12.0本地Mongodb连接失败?

问题描述 投票:0回答:3

我发现节点版本

18.12.0
和 mongodb
6.0.2
存在一个问题。我已经使用 mongodb 构建了一个 Nestjs 应用程序。这里我使用
@nestjs/mongoose(v- 9.0.2)
mongoose (v-6.7.0)

在这里我可以看到,当我将 Node js 升级到最新的 lts 版本时,我无法连接到 mongodb。它显示类似

unable to connect to database
的错误。

但是当我降级到节点版本时

16.18.0
然后它工作正常。我的问题是你们已经面临这个问题,或者我是唯一遇到这个问题的人。如果你知道的话,那么问题到底出在哪里呢?

这是我的连接代码-

MongooseModule.forRoot("mongodb://localhost:27017/nekmart", {
      connectionFactory: (connection) => {
        connection.plugin(slug, { number: true });
        return connection
      }
}),
node.js mongodb mongoose nestjs
3个回答
13
投票

升级到 NodeJs 18.12.1 后遇到同样的问题;关注其他博客/评论,显然

将 Uri 从

mongodb://localhost:27017/test_db
更改为
mongodb://127.0.0.1:27017/test_db
有效。

在不了解具体原因的情况下,似乎

localhost
由于 NodeJS 中的一些更改而被拒绝。


0
投票

**mongodb://0.0.0.0:27017/?**

在新版本的节点和猫鼬库中尝试使用它,它会正常工作 同样的事情也适用于具有新版本节点的“我的许多”系统。

大多数情况下,在本地主机处输入 ipv4 IP 地址即可正常工作

如果碰巧它想要工作,请尝试使用您电脑中配置的每个 ipconfig ip。

以太网适配器以太网:

连接特定的 DNS 后缀。 :

链路本地 IPv6 地址。 。 。 。 。 :fe40::2830:7f6b:e242:7232%6

IPv4 地址。 。 。 。 。 。 。 。 。 。 。 :192.168.10.---

子网掩码。 。 。 。 。 。 。 。 。 。 。 : 255.255.255.0

默认网关。 。 。 。 。 。 。 。 。 : 192.165.10.5

以上配置取决于您的电脑设置


0
投票

当我修改项目中的数据库名称时 - DATABASE_URL=mongodb://localhost:27017/yourDbName 到--->>>>

DATABASE_URL=mongodb://127.0.0.1:27017/yourDbName

它对我有用,祝你好运

© www.soinside.com 2019 - 2024. All rights reserved.