Вопрос:
Я использую 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]
Я установил 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 не запущена. Выполните следующие шаги, чтобы запустить его:
- Перейдите в Панель управления и нажмите Администрирование.
- Дважды щелкните по Сервисам. Новое окно открывается.
- Поиск 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 больше не появлялась.
Надеюсь, это поможет.