mongo-не удалось подключиться к серверу 127.0.0.1:27017

Я прихожу из riak и redis, где у меня никогда не было проблем с запуском этих служб или взаимодействием.

Это распространенная проблема с монго, и я довольно невежественен. Перезапуск не помогает.Я новичок в монго.

mongo
MongoDB shell version: 2.2.1
connecting to: test
Fri Nov  9 16:44:06 Error: couldn't connect to server 127.0.0.1:27017 src/mongo/shell/mongo.js:91
exception: connect failed

это то, что я вижу в журналах.

 now open)
Fri Nov  9 16:44:34 [conn47] end connection 10.29.16.208:5306 (1 connection now open)
Fri Nov  9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5307 #48 (2 connections now open)
Fri Nov  9 16:45:04 [conn48] end connection 10.29.16.208:5307 (1 connection now open)
Fri Nov  9 16:45:04 [initandlisten] connection accepted from 10.29.16.208:5308 #49 (2 connections now open)
Fri Nov  9 16:45:04 [conn49] end connection 10.29.16.208:5308 (1 connection now open)
Fri Nov  9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5316 #50 (2 connections now open)
Fri Nov  9 16:45:34 [conn50] end connection 10.29.16.208:5316 (1 connection now open)
Fri Nov  9 16:45:34 [initandlisten] connection accepted from 10.29.16.208:5317 #51 (2 connections now open)
Fri Nov  9 16:45:34 [conn51] end connection 10.29.16.208:5317 (1 connection now open)
Fri Nov  9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5320 #52 (2 connections now open)
Fri Nov  9 16:46:04 [conn52] end connection 10.29.16.208:5320 (1 connection now open)
Fri Nov  9 16:46:04 [initandlisten] connection accepted from 10.29.16.208:5321 #53 (2 connections now open)
Fri Nov  9 16:46:04 [conn53] end connection 10.29.16.208:5321 (1 conn

28 ответов


эта ошибка-это то, что вы увидите, если оболочка mongo не сможет соединиться с сервером mongod.

это может быть потому, что адрес был неправильным (хост или IP) или что он не работал. Следует отметить, что предоставленная трассировка журнала не покрывает "Пт Ноя 9 16:44: 06" вашего mongo timestamp.

вы можете:

  1. укажите аргументы командной строки (если они есть), используемые для запуска процесс команду mongod
  2. создайте файл журнала активности запуск mongod, а также журналы во время попытки запуска оболочки mongo?
  3. убедитесь, что ваш процесс mongod запускается на том же машина как раковина монго?

обычно это вызвано тем, что вы не запустили процесс mongod, прежде чем пытаться запустить оболочку mongo.

запустить сервер mongod

mongod

открыть другое окно терминала

запустить Mongo shell

mongo

решены.

эта проблема может быть решена с помощью указанных ниже 4 шагов

1) "удалить".заблокировать файл

sudo rm /var/lib/mongodb/mongod.lock 

2) ремонт mongodb

mongod –repair

3) запустите сервер mongod

sudo service mongod start 

4) запустите клиент mongo

mongo

для получения более подробной информации взгляните на http://shakthydoss.com/error-couldnt-connect-to-server-127-0-0-127017-srcmongoshellmongo-js-exception-connect-failed/

http://shakthydoss.com/technical/error-couldnt-connect-to-server-127-0-0-127017-srcmongoshellmongo-js-exception-connect-failed/


этот метод работает только, если вы хотите восстановление файлов данных без сохранения исходных файлов

чтобы найти, где находится dbpath -ВИМ /и т. д./В MongoDB.conf

проверка dbpath=

(У меня есть dbpath= / var / lib/mongodb)

по умолчанию: / data / db/

типичные места включают в себя: /СРВ/в MongoDB, в /var/lib в/MongoDB или /опт/в MongoDB .

заменить в/var/lib в/в MongoDB С dbpath

sudo rm /var/lib/mongodb/mongod.lock
sudo mongod --dbpath /var/lib/mongodb/ --repair
sudo mongod --dbpath /var/lib/mongodb/ --journal

(убедитесь, что вы оставили терминал, в котором вы бежали выше строк, не нажимайте "Ctrl+c" или закройте его.) Введите команду для запуска mongo в другом окне.

надеюсь, что это работает для вас ! для тех, кто хочет восстановление файлов данных при сохранении исходных файлов монго восстановить


убедитесь, что ваш монго работает. Я исправил эту проблему, пытаясь восстановить mongodb, там я обнаружил, что каталог, необходимый для запуска БД, не был создан. Он показывает эту ошибку

тип: mongod, Он покажет ошибку

exception in initAndListen: 29 Data directory /data/db not found., terminating

ошибка происходит из-за dbpath /data/db/ (настройки по умолчанию) не существует. Вам нужно создать папку данных и установить для нее разрешение.

затем я создаю папку в своей системе с помощью команда

sudo mkdir-p / data / db/ и судо Чаун id -u / data / db

затем я снова запускаю монго, и это сработало.


в моем случае:

сначала я открываю файл config

sudo vi /etc/mongodb.conf

комментарий IP и порт, как это

#bind_ip = 127.0.0.1
#port = 27017

затем перезапустите mongodb

sudo service mongodb restart
sudo service mongod restart

наконец, это работа: D

finn@Finn ~ $ mongo
MongoDB shell version: 2.4.9
connecting to: test
> exit

немного поздно с ответом, но я столкнулся с той же проблемой

Ниже приведены шаги, которые помогли мне.

  1. перейти к C:\
  2. создать папку "данные"
  3. в папке" данные "создайте папку" db"
  4. открыть терминал (CMD) - > перейти к EX:"c:\MongoDB\Server.4\bin"
  5. введите mongod => это запустит сервер mongo (оставьте его открытым)

запуск с помощью GUI, EX "robomongo"

или

открыть новый терминал (CMD) - > перейти к EX:"c:\MongoDB\Server.4\bin" введите команду "mongo"


Если все вышеперечисленное решение не работает: перейдите в сервис (start>search>services) и запустите службу mongodb. Затем в командной строке cmd после перехода в bin введите :/>mongo


для подключения к mongo мы должны сначала запустить службы "mongod". следующий вывод вы можете увидеть:

$ mongod
2017-03-05T00:31:39.055+0530 I CONTROL  [initandlisten] MongoDB starting : pid=1481 port=27017 dbpath=/data/db 64-bit host=Prabhu-Nandans-Mac.local
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] db version v3.4.2
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] git version: 3f76e40c105fc223b3e5aac3e20dcd026b83b38b
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] OpenSSL version: OpenSSL 1.0.2k  26 Jan 2017
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] allocator: system
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] modules: none
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] build environment:
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten]     distarch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten]     target_arch: x86_64
2017-03-05T00:31:39.056+0530 I CONTROL  [initandlisten] options: {}
2017-03-05T00:31:39.056+0530 W -        [initandlisten] Detected unclean shutdown - /data/db/mongod.lock is not empty.
2017-03-05T00:31:39.057+0530 I -        [initandlisten] Detected data files in /data/db created by the 'wiredTiger' storage engine, so setting the active storage engine to 'wiredTiger'.
2017-03-05T00:31:39.057+0530 W STORAGE  [initandlisten] Recovering data from the last clean checkpoint.
2017-03-05T00:31:39.057+0530 I STORAGE  [initandlisten] wiredtiger_open config: create,cache_size=3584M,session_max=20000,eviction=(threads_max=4),config_base=false,statistics=(fast),log=(enabled=true,archive=true,path=journal,compressor=snappy),file_manager=(close_idle_time=100000),checkpoint=(wait=60,log_size=2GB),statistics_log=(wait=0),
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] 
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] 
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] 
2017-03-05T00:31:39.620+0530 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-03-05T00:31:39.643+0530 I FTDC     [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-03-05T00:31:39.643+0530 I NETWORK  [thread1] waiting for connections on port 27017
2017-03-05T00:31:40.008+0530 I FTDC     [ftdc] Unclean full-time diagnostic data capture shutdown detected, found interim file, some metrics may have been lost. OK
2017-03-05T00:32:03.832+0530 I NETWORK  [thread1] connection accepted from 127.0.0.1:49806 #1 (1 connection now open)
2017-03-05T00:32:03.833+0530 I NETWORK  [conn1] received client metadata from 127.0.0.1:49806 conn1: { application: { name: "MongoDB Shell" }, driver: { name: "MongoDB Internal Client", version: "3.4.2" }, os: { type: "Darwin", name: "Mac OS X", architecture: "x86_64", version: "16.4.0" } }
2017-03-05T00:32:08.376+0530 I -        [conn1] end connection 127.0.0.1:49806 (1 connection now open)

после этого откройте другой терминал и просто введите "mongo".

следующий вывод вы можете увидеть:

$ mongo
MongoDB shell version v3.4.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.2

ваша проблема решена :)


другое решение, которое разрешило эту же ошибку для меня, хотя это может быть только если вы получаете доступ к mongo (локально) через SSH-соединение через виртуальную машину (по крайней мере, это моя настройка), и может быть проблема с переменной среды linux:

export LC_ALL=C

кроме того, у меня было больше успеха при запуске mongo в качестве службы демона, а затем при запуске службы sudo, я понимаю, что это использует аргументы командной строки, а не файл конфигурации, поэтому, вероятно, проблема с моим конфигурационный файл:

mongod --fork --logpath /var/log/mongodb.log --auth --port 27017 --dbpath /var/lib/mongodb/admin

создать папку C:data/db если он еще не существует на вашем компьютере. Оказывается, MongoDB требует наличия этой структуры папок "data / db" для запуска. Надеюсь, это кому-то поможет.


причиной для меня было пространство-запустите это в консоли:

df -h

или более конкретно:

du -hs /var/lib/mongodb/ 

чтобы проверить его на диске. Если это ~ 99% - просто очистите место и повторите попытку!


сначала перейдите в c:\mongodb\bin> чтобы включить mongoDB, если вы видите в консоли, что mongo прослушивает порт 27017, все в порядке Если нет, закройте консоль и создайте папку c:\data\db и снова запустите mongod


вы можете попробовать со следующей командой:

sudo service mongod start


это произошло сегодня со мной и я решил это следующим образом.

машина: я использую машину Windows 10 и загрузил последнюю версию MongoDB - Community.

Итак, проблема заключалась в том, что у меня не было C:\data\db создать.

без создания C:\data\db, Я открыл терминал CMD и запустил базу данных с помощью в терминале

C:\YourInstallationPath\bin>команду mongod

и когда я выстрелил mongo команда тогда я получил проблему.

Twist, я создал необходимые папки, но все еще получал проблему. И это потому, что сервер mongo уже запущен. Чтобы исправить это, я загорелся mongod команда снова, и она автоматически ссылается на C:\data\db.

другие пользователи предложили добавить C:\data\db но не говорил о выполнении mongod снова, что точно решило мою проблему.


У меня также есть та же проблема, тогда я исправлен этими двумя строками кода. Надеюсь, это поможет

systemctl start mongod
systemctl enable mongod

удалить mongod.файл блокировки. И выполнить "команду mongod -ремонт". uninstall / reinstall mongod service исправил эту проблему для меня.

спасибо.


У меня была такая же ошибка при подключении к Mongo на AWS EC2 . Вот что решило эту проблему. https://serverfault.com/a/347159/62381 Снять bind_ip из config


эта работа мне:-

в Mongo 3.2 для окна вы должны запустить службу Mongodb. Итак, запустите Command Prompt as Administrator затем net start MongoDB


наконец-то я получил это простым способом..

откройте терминал и перейдите в расположение mongodb. В моем случае это

e:\mongodb\bin> 

и введите следующую команду и нажмите enter..

mongod --config e:\mongodb\mongo.config

откройте другой терминал и запустите mongodb с помощью

mongo.exe

вот и все.. вы можете использовать монго


Это старый вопрос, но, как новичок, я решил добавить, что (используя Webstorm) вам нужно нажать на Mongo Explorer (вкладка в правой части окна). Оттуда:

-нажать Настройки. -Нажмите кнопку Обзор (выглядит как кнопка с "..." на нем.) - Перейдите в раздел Program Files > MongoDB > Server > 3.4 > bin > mongo.exe (ваша версия может отличаться от 3.4) - После этого нажмите на зеленый знак плюс справа. Откроется окно - Введите имя в слот" Label". -Щелчок применять.

теперь вы должны быть подключены. Ввода "mongod" в терминал недостаточно. Вы также должны выполнить вышеуказанные шаги.

мои извинения заранее тем из вас, кто не использует Webstorm! Не уверен в шагах, использующих другие IDE.


Если u установить с помощью brew (на osx) первый запуск sudo mkdir /data/db запустите Демон mondoDB, введя mongod (оставьте его открытым), а затем запустите mongo, введя mongo в новой вкладке терминала


просто создайте папку с именем "данные "на диске C и внутри папки данных создайте другую папку с именем"db". Затем выполните команду mongod.exe:)


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

для запуска, Mongo server

1. Если вы путь путь по умолчанию (data/db) простой уволен mongod в терминале

2. Если ваш путь не data / db затем вы командуете как следовать: команду mongod --dbpath здесь твой путь приходит!--2--> .

для запуска оболочки mongo, Просто уволен монго в другой терминал

Если вы получили это ожидание соединений на порту 27017, затем ваш монго успешно запущен.

надеюсь, вы можете получить мою точку зрения


Если все решение выше не работает, возможно, тогда это может помочь. Где-то в конце линии вы, возможно, подключились к своей локальной базе данных mongodb через бродячие ящики.

  1. vagrant up, а затем ssh в вашу бродячую машину, в которой вы установили соединение с mongodb (vagrant ssh vagrant_box_name)
  2. прокомментируйте строку bind_ip из /etc / mongod.conf с использованием # (sudo nano/etc / mongod.conf)
  3. перезапустите демон mongodb служба (перезапуск службы sudo mongod) вот...

У меня была такая же проблема, я удалил E:\Mongo файлы данных\db\mongod.заблокировать файл, чтобы он начал работать. проблема связана с неправильным выключением сервера. поэтому файл блокировки не является чистым.


шаги для решения этой проблемы в ОС Windows:

  1. удалить mongod.заблокировать файл из C:\Program Files\MongoDB\Server\4.0\data
  2. нажмите на mongod в C:\Program Files\MongoDB\Server\4.0\bin
  3. нажмите на монго в C:\Program Files\MongoDB\Server\4.0\bin для запуска оболочки mongodb

@shakthydoss ответ работал нормально один раз, но после второго вопроса.замка там не было, я просто создал пустой, и он работал нормально. Так что проверь, нет ли там твоего.

Если вы используете командную строку:

cd /var/lib/mongodb

ls

" ls " будет перечислять все файлы в папке, если mongod.значит, замка нет:--4-->

sudo touch mongod.lock

наконец-то

mongod –repair

sudo service mongod start 

обслуживание Mongo должно работать нормально.