Mongodb не может подключиться к localhost, но может подключиться к IP-адресу localhost - PullRequest
13 голосов
/ 18 января 2012

Если я попытаюсь запустить оболочку mongodb только с помощью команды mongo, я получу:

Error: couldn't connect to server 127.0.0.1 shell/mongo.js:84

исключение: ошибка подключения

Однако, если я укажу IP-адрес локальной сети localhost, напримерэто:

mongo 10.10.5.90

... он подключается нормально.

Любые подсказки ??

Ответы [ 4 ]

19 голосов
/ 18 января 2012

Есть ли у вас установленный bind_ip в вашем mongodb.conf (или скрипте запуска)? изменить для ясности Параметр bind_ip ограничивает IP-адрес, который будет прослушиваться только этим IP-адресом.

См. Раздел «Привязка IP-адреса»: http://www.mongodb.org/display/DOCS/Security+and+Authentication

Если нетУ вас есть какие-либо правила брандмауэра, блокирующие локальный доступ?Это было бы странно, но я не могу вспомнить другую причину, по которой это не сработало бы, если бы работал IP-адрес локальной сети.

10 голосов
/ 18 января 2012

Эта ошибка также может появиться, если mongodb не был корректно выключен.Если вы наберете sudo start mongodb и при каждом выполнении выдает новый идентификатор процесса, то ваш mongodb не был корректно завершен.Для разрешения этого типа

sudo rm /var/lib/mongodb/mongod.lock</code>
<code>sudo -u mongodb mongod -f /etc/mongodb.conf --repair</code> 
<code>sudo start mongodb
8 голосов
/ 12 марта 2015

Просто выполните все эти шаги, чтобы решить эту проблему

Step 1: Remove lock file.
sudo rm /var/lib/mongodb/mongod.lock

Step 2: Repair mongodb.
mongod --repair 

Step 3: start mongodb.
sudo start mongodb 
or
sudo service mongodb start

Step 4: Check status of mongodb.
sudo status mongodb 
or   
sudo service mongodb status

Step 5: Start mongo console.
mongo
0 голосов
/ 05 апреля 2018

Я добавил localhost вместе с ip, который был у меня в bind_ip при запуске mongo, и это решило мою проблему, например: bin / mongod --dbpath data --logpath mongo.log --fork --bind_ip localhost, 10.100.1.2

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...