2015-11-08 3 views
0

Я нахожусь в OS/X Macbook и недавно установил mongodb, чтобы попробовать свои руки. Я установил его с помощью команд оболочки. Я переработал некоторые данные и перешел в него, и когда я попытался найти его, соединение получилось неудачным. По сути дела, я обнаружил, что есть файл mongodb.lock, и я удалил его с помощью команды bash. Теперь я пытаюсь перезагрузить с помощью следующей командыmongodb: перезагрузка после удаления файла блокировки

sudo service mongodb restart 

Однако это говорит

sudo: service: command not found

кроме того, если я начну MongoDB, перейдя в папку, а затем с помощью команды ./bin/mongo, он отображает следующую ошибку:

MongoDB shell version: 3.0.7 connecting to: test 2015-11-08T14:47:56.965+0800 W NETWORK Failed to connect to 127.0.0.1:27017, reason: errno:61 Connection refused 2015-11-08T14:47:56.967+0800 E QUERY Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at connect (src/mongo/shell/mongo.js:179:14) at (connect):1:6 at src/mongo/shell/mongo.js:179 exception: connect failed

Может кто-нибудь помочь, как решить проблему.

ответ

1

AFAIK нет service команда на Mac. И ./bin/mongo запускает клиент оболочки, вам нужно запустить .bin/mongod с соответствующим аргументом --dbpath. Вы можете найти более подробную информацию here

1
  1. Как Юрий писал, что нет service команды на OS X. Вы должны управлять MongoDB самостоятельно, запустив его с помощью команды mongod.
  2. Альтернатива - установить MongoDB через MacPorts. После успешной установки MacPorts, вы просто установить MongoDB с

    sudo port install mongodb 
    

    Вы можете начать MongoDB довольно легко, то с

    sudo port load mongodb 
    

    и остановить его с

    sudo port unload mongodb 
    
  3. mongo является клиентом , У вас не было сервера, поэтому вполне естественно, что вы не можете подключиться к серверу.

Некоторые примечания стороны: OS X не очень близка к Linux. OS X основана на вкусе BSD-UNIX, который, в свою очередь, основан на Research UNIX. Linux началась как бесплатная реализация Minix, основанная на утилитах GNU. Предположим, что у вас есть инструменты Linux, доступные в командной строке OS X, довольно опасно. Часто инструменты (если они есть) даже разделяют имя, но имеют разные реализации той же функциональности с некоторыми различиями в использовании. Итак, возьмите его в голову: с OS X вы не используете версию Linux для hipster - вы используете BSD на стероидах. Следовательно, я удалю тег «linux» и добавлю тег OS X.

+0

Благодарим за отзыв. Я могу решить проблему, но когда я пытаюсь остановить сервер на mongo shell с помощью команды 'use admin'' db.shutdownServer() ', это дает мне ошибку: не удалось подключиться к серверу 127.0.0.1:27017. Могу я узнать, почему это происходит. Я могу написать json-файл перед закрытием, я думаю, это означает, что сервер работал до – user4943236

+2

@ user4943236 Точно. Оболочка просто говорит вам, что она больше не может подключаться. Миссия выполнена. –

Смежные вопросы