【问题标题】:serverSelectionError when connect to localhost in mongoose?在猫鼬中连接到本地主机时出现serverSelectionError?
【发布时间】:2022-11-06 10:04:31
【问题描述】:

嗨,我尝试了mongoose.connect('mongodb://localhost/blog') 之类的所有方法,但我无法将猫鼬连接到节点,这是我的代码....

const express = require('express')
const mongoose = require('mongoose')
const articleRouter = require('./routes/articles')
const app = express()

mongoose.connect('mongodb://localhost:27017/blog')

app.set('view engine','ejs')

这是错误:

/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/connection.js:807
  const serverSelectionError = new ServerSelectionError();
                               ^

MongooseServerSelectionError: connect ECONNREFUSED 127.0.0.1:27017
    at NativeConnection.Connection.openUri (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/connection.js:807:32)
    at /home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/index.js:342:10
    at /home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/helpers/promiseOrCallback.js:32:5
    at new Promise (<anonymous>)
    at promiseOrCallback (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/helpers/promiseOrCallback.js:31:10)
    at Mongoose._promiseOrCallback (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/index.js:1181:10)
    at Mongoose.connect (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongoose/lib/index.js:341:20)
    at Object.<anonymous> (/home/vishwajeet/webdeve/MARKDOWN-BLOG/server.js:8:10)
    at Module._compile (node:internal/modules/cjs/loader:1103:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1157:10) {
  reason: TopologyDescription {
    type: 'Unknown',
    servers: Map(1) {
      'localhost:27017' => ServerDescription {
        _hostAddress: HostAddress { isIPv6: false, host: 'localhost', port: 27017 },
        address: 'localhost:27017',
        type: 'Unknown',
        hosts: [],
        passives: [],
        arbiters: [],
        tags: {},
        minWireVersion: 0,
        maxWireVersion: 0,
        roundTripTime: -1,
        lastUpdateTime: 774709,
        lastWriteDate: 0,
        error: MongoNetworkError: connect ECONNREFUSED 127.0.0.1:27017
            at connectionFailureError (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongodb/lib/cmap/connect.js:375:20)
            at Socket.<anonymous> (/home/vishwajeet/webdeve/MARKDOWN-BLOG/node_modules/mongodb/lib/cmap/connect.js:295:22)
            at Object.onceWrapper (node:events:646:26)
            at Socket.emit (node:events:526:28)
            at emitErrorNT (node:internal/streams/destroy:157:8)
            at emitErrorCloseNT (node:internal/streams/destroy:122:3)
            at processTicksAndRejections (node:internal/process/task_queues:83:21) {
          [Symbol(errorLabels)]: Set(0) {}
        }
      }
    },
    stale: false,
    compatible: true,
    heartbeatFrequencyMS: 10000,
    localThresholdMS: 15,
    logicalSessionTimeoutMinutes: undefined
  },
  code: undefined
}

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    嘿,我认为您的问题是您的计算机上没有安装mongodb。 下载后可以更改

    mongoose.connect('mongodb://localhost:27017/blog')
    

    mongoose.connect('mongodb://127.0.0.1/blog')
    

    如果问题仍然存在

    Youtube video for mongodb install

    【讨论】:

      【解决方案2】:

      我也是同样的问题,请帮助任何人。

      /app/node_modules/mongoose/lib/connection.js:847 source_code-server-1 | const serverSelectionError = new ServerSelectionError(); source_code-server-1 | ^ source_code-server-1 | source_code-server-1 | MongooseServerSelectionError: connect ECONNREFUSED 127.0.0.1:27017

      运行 mongodb 服务后,我得到了 docker 的上述错误 docker-compose.yaml

      版本:“3.8”

      服务:

      蒙哥达:

      图片:“蒙哥”

      卷:

      • 数据:/数据/数据库 服务器:

      构建:./服务器

      端口:

      • “4000:4000”

      卷:

      • 日志:/应用程序/日志

      • ./服务器:/应用

      • /app/node_modules

      取决于:

      • MongoDB 客户:

      构建:./client

      端口:

      • “3000:3000”

      环境:

      • CHOKIDAR_USEPOLLING=真

      卷:

      • ./client/src:/app/src

      标准输入打开:真

      tty: 真

      取决于:

      • 服务器 卷:

      数据:

      日志:

      dockerfile

      从节点:18.8.0

      工作目录 /app

      复制包*.json /app/

      运行 npm 安装

      复制 。 /应用程序/

      曝光 4000

      CMD [“npm”,“开始”]

      请帮我。

      【讨论】:

        猜你喜欢
        • 2022-01-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-01-20
        • 1970-01-01
        • 2020-09-04
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多