2016-01-29 2 views
2

У меня установлен MongoDB 3.2 на моем Linux Red Hat сервере.Доступ к MongoDB из клиентских машин Windows и Mac

Я начинаю обращаться к нему и просматриваю инструкции для mongo Shell.

Для машины Windows инструкции требуют, чтобы я перешел в командную строку и сменил директории установки. Проблема в том, что MongoDB установлен на моем веб-сервере, а не на моей локальной машине Windows.

Вопрос: применяется ли Mongo Shell для меня тогда? Как начать использовать, подключаться и получать доступ к Mongo с моих компьютеров Windows и Mac?

[Примечание: Я традиционный MySQL/PhpMyAdmin разработчик и хочет перейти к MongoDB]

изменений:

(1) С помощью @AlexBlex я прогрессирующая к попытке подключиться к мой MongoDB на моем сервере от Robomongo на моем клиенте Windows. При попытке настроить мое соединение возникает следующая ошибка. Я пробовал адрес только с моим ip-адресом сервера и с http: // {my server ip}. Ничего не сработало. Смотрите скриншот ошибки
enter image description here

(2) Это то, что у меня есть в моем текущем mongod.conf файле:

#port=27017 
bind_ip=127.0.0.1 

(3) вот что мои настройки подключения выглядят. Как ни странно, решение @ AlexBlex ниже показывает вкладку SSH на его версии Mac. В версиях Windows и Mac, которые я только что установил, не хватает этой вкладки. enter image description here

ответ

0

Я нашел ответ. @ShahNewasKhan блестящий.См How to connect Robomongo to MongoDB

Все, что вам нужно сделать, это SSH на сервер и редактировать mongod.conf файл:

  1. раскомментируйте #port=27017 к port=27017
  2. комментарий bind_ip=127.0.0.1 к #bind_ip=127.0.0.1
  3. рестарт MongoDB через service mongod restart

Затем создайте соединение mongo через ваше se rver ip в поле адреса и 27017 в поле порта

Надеюсь, это поможет новым новичкам и стартапам монго, как мне :) Удачи.

Теперь мне просто нужно выяснить, как сделать это безопасным. Меня беспокоит то, что любой, кто знает мой ip-сервер, может взломать мой MongoDB

+0

Замечательно, что вы нашли решение на SO. Примите свой ответ, чтобы отметить вопрос как разрешенный. Было бы замечательно, если бы вы добавили примечание к ответу, что эта настройка открывает доступ к вашей базе данных любому пользователю в Интернете и не должна использоваться в производстве, если вы не разрешаете mongodb auth и ssl: https://docs.mongodb.org/ручной/управление/безопасности контрольный список / –

1

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

mongo yourserver:27017/database 

Вы должны настроить свой сервер Монго для удаленных подключений. Чтобы достичь этого, в вашем файле /etc/mongodb.conf вам понадобится следующая строка. Вам необходимо заменить 10.0.0.2 на IP-адрес вашего клиентского компьютера.

bind_ip = 127.0.0.1,10.0.0.2 
+1

Спасибо @Jaco. MongoDB не установлен на моей локальной машине. Он установлен на моем Linux Red Hat сервере. Я стараюсь приступить к работе и изучать MongoDB. Итак, как мне «настроить [мой] сервер Mongo для удаленного подключения»? –

+0

Вам все равно нужно установить его локально, чтобы вызвать 'mongo yourserver: 27017/database' =) –

+0

Действительно. Итак, как это работает как инструмент для обслуживания веб-приложений? Должны ли все пользователи использовать MongoDB на своих компьютерах, чтобы использовать мое веб-приложение? –

1

Вам нужно либо ssh на сервере, где установлен MongoDB, или установить MongoDB на локальной машине.

Для robomongo для подключения к удаленному узлу вам нужно SSH к серверу, и проверить его прослушивает внешний интерфейс:

lsof -i | grep 27017 

В случае, если он связан с локальным только, вам нужно отредактировать строку с bind_ip в /etc/mongodb.conf и перезапустить службу.

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

enter image description here

+0

Ok @AlexBlex. Я получаю это - облака начинают подниматься :) Так что, в отличие от MySQL с веб-интерфейсом phpMyAdmin, мне нужно выполнить всю мою работу MongoDB из командной строки? –

+0

Есть некоторый GUI https://docs.mongodb.org/ecosystem/tools/administration-interfaces/ Мне нравится Compass и robomongo, но в принципе да, я не думаю, что вы можете полностью избежать командной строки. –

+0

Хорошо. Вчера вечером я установил Robomongo на своем Mac. Но затем я подошел к окну Mac, который должен был настроить мое соединение. Вот где я заблудился. Что делать дальше? –

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