MongoError: connect ECONNREFUSED 127.0.0.1:27017

Вопросы и ответы
Вопрос: Я использую NodeJS с MongoDB, используя пакет mongodb. Когда я запускаю команду mongod, она работает нормально и выдает "ожидание соединения через порт 27017". Итак, Mongod, кажется, работает. Но MongoClient не работает и выдает ошибку, когда я запускаю node index.js command- MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]

Вопрос:

Я использую NodeJS с MongoDB, используя пакет mongodb. Когда я запускаю команду mongod, она работает нормально и выдает “ожидание соединения через порт 27017”. Итак, Mongod, кажется, работает. Но MongoClient не работает и выдает ошибку, когда я запускаю node index.js command-

MongoError: failed to connect to server [localhost:27017] on first connect [MongoError: connect ECONNREFUSED 127.0.0.1:27017]

enter image description here

Я установил Mongo DB 3.4 и мой код is-

var MongoClient = require(‘mongodb’).MongoClient; var dburl = «mongodb://localhost:27017/test»; MongoClient.connect(dburl, function(err, db) { if (err) { throw err; } console.log(‘db connected’); db.close(); });

Я создал каталоги data/db в корневом каталоге и дал права на запись. Файл mongod.conf принимает путь в БД as-

хранилище: dbPath: /var/lib/mongo

Но похоже, что он на самом деле принимает путь БД в качестве data/db, а не var/lib/mongo

Это работало раньше, но внезапно прекратилось.

Ответ №1

Это произошло, вероятно, потому что служба MongoDB не запущена. Выполните следующие шаги, чтобы запустить его:

  1. Перейдите в Панель управления и нажмите Администрирование.
  2. Дважды щелкните по Сервисам. Новое окно открывается.
  3. Поиск MongoDB.exe. Щелкните правой кнопкой мыши и выберите “Пуск”.

Сервер запустится. Теперь выполните npm start заново, и на этот раз код может сработать.

Ответ №2

Для окон – просто перейдите в папку Mongodb
(например: C:ProgramFilesMongoDBServer3.4bin) и откройте cmd в папке и введите
“mongod.exe –dbpath c:datadb”

Если папка c:datadb не существует, создайте ее самостоятельно и снова запустите команду.

Теперь все должно работать нормально.))

Ответ №3

Попробуйте запустить сервер mongoDB, указав -dbpath с помощью mongod.

sudo mongod —dbpath /var/lib/mongo/data/db &

‘&’ в последнем запустит сервер mongodb как службу на вашем сервере.

Надеюсь, что это сработает.

Ответ №4

скорее всего, ваш сервис dong монго не запущен. Для Ubuntu: sudo service mongod start Для Windows: зайдите в службы и запустите службу MongoDB

также установите ссылку для сервиса mondoDB

У меня была эта проблема, и я решил ее благодаря этому человеку ответ qaru.site/questions/5696132/…

Ответ №5

У меня была такая же проблема на Windows.

Ctrl + C, чтобы закрыть mongod и снова запустить mongod.

Не уверен, но похоже, что изначально mongod работал, открывая и закрывая соединения. Затем он не смог закрыть более ранние соединения и достиг предела для открытых. После перезапуска mongod снова работает.

Ответ №6

Вероятно, вам нужно продолжить запуск процесса БД (запустив mongod) во время работы сервера вашего узла.

Ответ №7

У меня была ошибка ниже:

Error: connect ECONNREFUSED 127.0.0.1:27017

В моем случае эта проблема возникла, поскольку MongoDB вообще не установлен.

Решением было установить MongoDB снизу:

После установки ошибка ECONNREFUSED больше не появлялась.

Надеюсь, это поможет.

Оцените статью
Добавить комментарий