首页 > 解决方案 > 无法在 `mongod` shell 中创建与 MongoDB 服务器的连接

问题描述

我的 MongoDB 工作正常,但在某些时候,我遇到了将我的快速服务器与数据库连接的问题。mongod当我使用它启动数据库时,它向我展示了2020-05-21T14:36:41.819+0600 I NETWORK [initandlisten] waiting for connections on port 27017这似乎是一个正常的“运行”条目。然后我运行我的快速服务器,我在其中连接数据库,如下所示:

...

const mongoose = require('mongoose');

const url = 'mongodb://localhost:27017/db_name';
const connect = mongoose.connect(url, {
  useNewUrlParser: true,
  useUnifiedTopology: true,
  useCreateIndex: true,
  useFindAndModify: false,
});

connect.then(
  (db) => {
    console.log('Connected correctly to server');
  },
  (err) => {
    console.log(err);
  }
);

...

哪个日志Connected correctly to server但是当我看到 mongod 运行 shell 时仍然有消息显示它仍在等待连接。最令人惊讶的问题是我可以在我的快速服务器中执行与数据库相关的工作。当我使用 检查文档时mongo,我看到它们已正确添加到数据库中。我不明白为什么会有这样mongod的行为。mongodshell的完整日志。


更新:

我忘了添加一条重要信息,即每当我使用 启动我的 MongoDB 服务器时mongod,在C:\data\db目录中都会生成一个新mongod.lock文件。我试图删除它并重新启动我的服务器,但最终它再次生成。

标签: mongodbexpress

解决方案


推荐阅读