【发布时间】:2020-08-09 19:01:36
【问题描述】:
我正在使用 MongoDB 数据库创建 node.js 应用程序。我正在使用猫鼬模块。
mongoose
.connect('mongodb://localhost:27017/myapp', {
useNewUrlParser: true,
useUnifiedTopology: true,
})
在运行上述代码时,用于自行建立的连接。此外,当我打开 MongoDB Compass 并填写连接字符串时,它就可以正常工作了。 然后,当我断开数据库连接时,我在 PowerShell 中使用 mongod 来测试我的应用程序的行为。我打开连接,运行应用程序并使用 ^C 关闭连接。 然后,当我想像以前一样运行我的应用程序时,它不起作用,现在我必须始终打开 PowerShell 并启动 mongod,然后才能使用 Mongo Compass 或通过应用程序连接。 此外,“myapp”数据库中的数据完全消失了。
我只是好奇发生了什么。
【问题讨论】:
-
是的,mongo 必须运行才能让 Mongoose 连接到它
-
我发现自动启动 MongoDB 使用的数据库与 mongod 不同,这就是我的文件在 Compass 中不可见的原因。