Не удалось подключиться к mongodb errno: 61 Connection отказано
Недавно я установил mongodb-2.6.0 с Homebrew.
После успешной установки я попытался подключиться с помощью команды mongo
. Я получаю следующие ошибки, которые не позволяют мне подключаться:
Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused
Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed
Ответы
Ответ 1
Это может случиться, когда служба mongodb не работает на Mac. Чтобы запустить его, я попробовал
brew services start mongodb
и он работал.
Изменить: Согласно обсуждению этого PR на homebrew: https://github.com/Homebrew/homebrew/issues/30628
brew services
устарел, я огляделся вокруг SO и нашел ответы на них сейчас, отвечая на вопрос: Каков правильный способ запуска службы mongod в linux/OS X?
Ответ 2
Я столкнулся с одной и той же проблемой, и здесь явный шаг за шагом, чтобы избежать этой ошибки.
Шаг 1 - установка (не выполняйте этот шаг, если вы уже установили MongoDB):
brew update
brew install mongodb
Шаг 2. Запустите Mongo Daemon:
mkdir -p /data/db
sudo mongod
Шаг 3. Запустите интерфейс Mongo Shell:
mongo
В этой последовательности я смог запустить команду mongo
без каких-либо ошибок. Я также подробно описал трассировку ошибки и ее решение в этом блоге.
Ответ 3
Чтобы решить вашу проблему, вам необходимо следовать инструкциям, которые затем предоставляются вам brew после использования "brew install mongodb".
Чтобы запустить start mongodb при входе в систему:
ln -sfv /usr/local/opt/mongodb/*.plist ~/Library/LaunchAgents
Затем загрузить mongodb сейчас:
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
Или, если вам не нужен/нужен запуск, вы можете просто запустить:
mongod --config /usr/local/etc/mongod.conf
Вы можете просто запустить эту последнюю команду, но это не сработало для меня, и мне нужно было запустить вторую команду. Спасти меня в будущем. Я просто запустил первую команду. Надеюсь, что это поможет!
EDIT Хриши метод использования brew services mongodb start
работал хорошо для меня. Я думаю, что они должны включить это в документы mongo.
Ответ 4
В другой вкладке вы можете запустить оболочку mongo с помощью
mongod
Затем вернитесь к предыдущей вкладке и повторите попытку. Если у вас возникли проблемы с настройкой вашего mongoshell, проверьте эту ссылку на оболочке mongo: http://docs.mongodb.org/manual/tutorial/manage-mongodb-processes/
или эта ссылка на установку mongodb:
http://docs.mongodb.org/manual/tutorial/install-mongodb-on-os-x/
Ответ 5
У меня была такая же проблема при вызове mongod
из командной строки.
Я решил это, называя вместо этого sudo mongod
.
Ответ 6
У меня была такая же ошибка, но другая причина. Думал, что я разместил решение здесь, если кто-то еще столкнется с проблемой. Я получил эту ошибку после того, как мой Mac ненадлежащим образом отключился, когда я запускал mongorestore -d foo dump/foo/
.
tl; dr: я исправил проблему, удалив поврежденный файл foo.ns
вместе с foo.0
, foo.1
,... из моей папки данных /usr/local/var/mongodb/
. Затем я перезапустил сервер mongo с brew services restart mongodb
, и я вернулся к нормальной работе.
Детали. Я продолжал получать ошибку даже после попытки запуска или перезапуска службы mongodb через brew или launchctl. В конце концов я побежал
mongod --dbpath /usr/local/var/mongodb
и увидел, что служба на самом деле не запускается, а в стартовой последовательности указана следующая ошибка:
[initandlisten] bad .ns file: /usr/local/var/mongodb/foo.ns
[initandlisten] User Assertion: 10079:bad .ns file length, cannot open database
Я избавился от плохого файла .ns
и остальных файлов данных, и в следующий раз, когда я запустил службу, мне было хорошо идти.
Ответ 7
для меня в osx мне пришлось убить старый исполняемый экземпляр, а затем перезапустить работу.
$>ps -aef | grep mongo
502 8047 1 0 11:52AM ?? 0:00.23 /usr/local/opt/mongodb/bin/mongod --config /usr/local/etc/mongod.conf
$>sudo kill 8047
$>sudo mongod
Ответ 8
Я предполагаю, что у вас нет рабочей базы при попытке получить доступ к тестированию с помощью команды "mongo".
Сначала запустите эту команду в терминале:
mongod
Затем откройте другое окно терминала и запустите:
Монго
Теперь все должно работать.
Ответ 9
Моя аналогичная ошибка разрешается удалением файла sudo rm/data/db/mongod.lock при попытке запустить mongod.
Теперь вы можете запустить mongod, а затем mongo.
Ответ 10
Если вы уже установили MongoDB, сначала попробуйте запустить mongod в качестве пользователя sudo, я столкнулся с проблемой из-за того, что mongod не работает как суперпользователь.
Я вставил o/p для обеих команд (mongod и sudo mongod) очень близко, вы можете это проверить, но
Сначала попробуйте
sudo mongod
не этот
mongod
Я установил MongoDB на свою MAC OS X Sierra 10.12.6, выполнив следующую команду в последовательности.
brew update
brew install mongodb --devel
brew services start mongodb
затем создал каталог, в который процесс mongod будет записывать данные, это необязательно, поскольку процесс mongod принимает его по умолчанию, см. это полезное руководство по адресу https://docs.mongodb.com/manual/tutorial/install-mongodb-on-os-x/
sudo mkdir -p /data/db
Наконец, начал процесс mongod следующим образом
sudo mongod
Oputput из mongod (не удалось) и sudo mongod (успешно) команды на моем терминале.
MacBook-Pro-2:appscheck admin$ mongod
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] MongoDB starting : pid=2698 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] db version v3.4.10
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2n 7 Dec 2017
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] allocator: system
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] modules: none
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] build environment:
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] distarch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] target_arch: x86_64
2017-12-10T08:12:06.166+0530 I CONTROL [initandlisten] options: {}
2017-12-10T08:12:06.166+0530 I STORAGE [initandlisten] exception in initAndListen: 20 Attempted to create a lock file on a read-only directory: /data/db, terminating
2017-12-10T08:12:06.166+0530 I NETWORK [initandlisten] shutdown: going to close listening sockets...
2017-12-10T08:12:06.166+0530 I NETWORK [initandlisten] shutdown: going to flush diaglog...
2017-12-10T08:12:06.167+0530 I CONTROL [initandlisten] now exiting
2017-12-10T08:12:06.167+0530 I CONTROL [initandlisten] shutting down with code:100
MacBook-Pro-2:appscheck admin$ sudo mongod
Password:
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] MongoDB starting : pid=2700 port=27017 dbpath=/data/db 64-bit host=MacBook-Pro-2.local
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] db version v3.4.10
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] git version: 078f28920cb24de0dd479b5ea6c66c644f6326e9
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] OpenSSL version: OpenSSL 1.0.2n 7 Dec 2017
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] allocator: system
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] modules: none
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] build environment:
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] distarch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] target_arch: x86_64
2017-12-10T08:12:14.084+0530 I CONTROL [initandlisten] options: {}
2017-12-10T08:12:14.084+0530 I STORAGE [initandlisten] wiredtiger_open config: create,cache_size=7680M,session_max=20000,eviction=(threads_min=4,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-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
2017-12-10T08:12:14.560+0530 I FTDC [initandlisten] Initializing full-time diagnostic data capture with directory '/data/db/diagnostic.data'
2017-12-10T08:12:14.707+0530 I INDEX [initandlisten] build index on: admin.system.version properties: { v: 2, key: { version: 1 }, name: "incompatible_with_version_32", ns: "admin.system.version" }
2017-12-10T08:12:14.707+0530 I INDEX [initandlisten] building index using bulk method; build may temporarily use up to 500 megabytes of RAM
2017-12-10T08:12:14.719+0530 I INDEX [initandlisten] build index done. scanned 0 total records. 0 secs
2017-12-10T08:12:14.720+0530 I COMMAND [initandlisten] setting featureCompatibilityVersion to 3.4
2017-12-10T08:12:14.720+0530 I NETWORK [thread1] waiting for connections on port 27017
Затем я открыл новый терминал, чтобы начать запрос MongoDB, он работал.
MacBook-Pro-2:appscheck admin$ mongo
MongoDB shell version v3.4.10
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.4.10
Welcome to the MongoDB shell.
For interactive help, type "help".
For more comprehensive documentation, see
http://docs.mongodb.org/
Questions? Try the support group
http://groups.google.com/group/mongodb-user
Server has startup warnings:
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: Access control is not enabled for the database.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** Read and write access to data and configuration is unrestricted.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: You are running this process as the root user, which is not recommended.
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten]
2017-12-10T08:12:14.472+0530 I CONTROL [initandlisten] ** WARNING: soft rlimits too low. Number of files is 256, should be at least 1000
> show dbs;
admin 0.000GB
local 0.000GB
> use practice
switched to db practice
>
Что это.