2015-06-26 3 views
1

Я просто установил экземпляр MongoDB для работы в EC2 с использованием стека битнов Bitnami. Я пытаюсь подключиться к экземпляру MongoDB в своем приложении-узле, но я не знаю, каким будет путь URL.MongoDB Connection EC2

Я знаком с путями, которые выглядят следующим образом:

mongodb://username:[email protected]:port/database 

Но я не ясно, как я бы выяснить, что эквивалентный путь для моего экземпляра EC2. Я обнаружил, что в одном из каталогов есть файл mongodb-27017.sock, но ниже не работает.

mongodb://{USERNAME}:{PASSWORD}@{EC2LINK}/stack/mongodb/tmp/mongodb-27017.sock/{DATABASENAME} 

Есть ли способ выяснить, что такое путь?

ответ

3
  1. Убедитесь служба Монго работает: service mongod status
  2. Make sure the port is open in the security group. (mongo defaults to 27017)
  3. Используйте соединение этот URL (так же, как вы привыкли): mongodb://{USERNAME}:{PASSWORD}@{EC2 INSTANCE IP/HOSTNAME}/{DATABASENAME}. See Examples

Примечание: для изменения порта потребуется указать его в строке подключения.

+0

Спасибо @Reut. Я думаю, что мой порт открыт. Но я дважды проверю. Прямо сейчас я получаю эту ошибку: TypeError: Невозможно прочитать свойство 'databaseName' of null –

+1

Это еще одна проблема. Работает ли соединение? –

+0

Также, если это расширение после моего ec2link «/stack/mongodb/tmp/mongodb-27017.sock» является портом 27017? –

1

Спасибо за помощь Реута, ваши предложения помогли мне сузить все. (Я не был полностью отставлен).

Наконец-то выяснилось, что мне нужно было изменить переменную конфигурации bind_ip в файле mongodb.conf. Переменная bind_IP была установлена ​​(по умолчанию) на 127.0.0.1. Это не позволяет удаленным соединениям пробиваться к db.

С тех пор я изменил это на 0.0.0.0, чтобы разрешить удаленные подключения.