Не удалось подключиться к mongodb в Ubuntu? - PullRequest
4 голосов
/ 15 ноября 2011

Я следовал этому уроку: http://howtonode.org/express-mongodb

Странно, но в первый раз, когда я следовал этому уроку, все работало.Но теперь, однажды после того, как я снова захотел поиграть с кодом, я не смог запустить сервер.Вот что я получаю:

alex @ alex-System-Product-Name: ~ / blog2 $ node app.js Экспресс-сервер прослушивает порт 3000 в режиме разработки

узел.JS: 134 бросить E;// process.nextTick error или событие «error» в первый тик ^ Ошибка: не удалось подключиться к [localhost: 27017] в [object Object].(/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/server.js:189:47) в [объект Object] .emit (events.js: 67: 17) в [объект Object].(/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/connection_pool.js:110:14) в [объект Object] .emit (events.js: 67: 17) в сокете.(/home/alex/blog2/node_modules/mongodb/lib/mongodb/connection/connection.js:301:10) в Socket.emit (events.js: 64: 17) в массиве.(net.js: 836: 27) в EventEmitter._tickCallback (node.js: 126: 26) alex @ alex-System-Product-Name: ~ / blog2 $

Любые предложения, чтобы это исправитьпроблема?

РЕДАКТИРОВАТЬ:

Я только что сделал:

alex@alex-System-Product-Name:~/blog2$ sudo service mongodb start
mongodb start/running, process 9847
alex@alex-System-Product-Name:~/blog2$ sudo service mongodb status
mongodb stop/waiting
alex@alex-System-Product-Name:~/blog2$ 

Не уверен, что он работает.

и этоэто то, что я получу, если наберу $ mongo в командной строке:

alex@alex-System-Product-Name:~/blog2$ mongo
MongoDB shell version: 1.8.2
Tue Nov 15 08:09:50 *** warning: spider monkey build without utf8 support.  consider rebuilding with utf8 support
connecting to: test
Tue Nov 15 08:09:50 Error: couldn't connect to server 127.0.0.1 shell/mongo.js:79
exception: connect failed

Ответы [ 2 ]

10 голосов
/ 15 ноября 2011

Это решило проблему:

http://www.synchrosinteractive.com/blog/1-software/47-mongodb-repair-on-ubuntu

Очевидно, mongodb создает файл блокировки при сбое базы данных или чем-то еще.Удаление этого файла и восстановление mongodb устраняет проблему:

Удалите файл блокировки вручную: sudo rm /var/lib/mongodb/mongod.lock

Запустите сценарий восстановления: sudo -umongodb mongod -f /etc/mongodb.conf --repair

0 голосов
/ 15 ноября 2011

Ошибка указывает на то, что MongoDB не работает.

При запуске MongoDB без присмотра вы предоставляете процессу mongod параметр --logpath, который указывает на файл. Проверьте этот файл, чтобы увидеть причину сбоя mongod.

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