6

我使用猫鼬将我的数据库连接到我的应用程序。

我收到了这个意外错误。

我的 app.js 看起来像这样

const express = require('express');
const mongoose = require('mongoose');
const authRoutes = require('./routes/authRoutes');
const cookieParser = require('cookie-parser');
const { requireAuth, checkUser } = require('./middleware/authMiddleware');
const run = require('./admin/connection');

const app = express();

// middleware
app.use(express.static('public'));
app.use(express.json());
app.use(cookieParser());

const {default : AdminBro} = require('admin-bro');
const buildAdminRouter = require('./admin/admin.router');
const options = require('./admin/admin.options');
const port = 3000;


const url = 'mongodb://localhost:27017/dbName';
let mongooseDb;
const databaseConnect = async () => {
  mongooseDb = await mongoose.connect(url, { useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex:true })
  .then((result) => app.listen(3000))
  .catch((err) => console.log(err));

  const db = mongoose.connection;
  db.on('error', console.error.bind(console, 'connection error:'));
  db.once('open', function() {
    console.log("we are connected to database");
  });
  
    const admin = new AdminBro(options)
    const router = buildAdminRouter(admin);
    app.use(admin.options.rootPath, router);

  
};
databaseConnect();

我已经安装了 mongodb 数据库。

我已经在 stackoverflow 中找到了类似的问题,但这些答案并没有解决我的问题。任何帮助将不胜感激。谢谢

4

3 回答 3

4

如果是 MAC OS,请运行以下命令并重试:

brew services restart mongodb-community

接下来的命令如下:

Stopping mongodb-community... (might take a while)
==> Successfully stopped mongodb-community (label: homebrew.mxcl.mongodb-community)
==> Successfully started mongodb-community (label: homebrew.mxcl.mongodb-community)
于 2021-03-07T11:44:04.367 回答
2

我遇到了类似的问题。试试这个:

  1. 打开你的C盘。
  2. 创建一个名为“数据”的文件夹。
  3. 在此数据文件夹名称“db”中创建另一个文件夹。

您可以在文档中看到默认情况下 MongoDB 尝试搜索这些目录,我们必须手动创建这些

于 2021-01-10T18:44:18.503 回答
1

当您在没有服务器的情况下运行节点应用程序时会发生此错误。

修复是先运行您的 mongodb 服务器,然后运行您的应用程序。

于 2021-03-30T06:21:19.233 回答