как подключиться к удаленному серверу mongo с терминала Mac OS

Я хотел бы попасть в оболочку mongo в терминале на моем MacBook. Тем не менее, мне интересно подключиться к экземпляру Mongo, который работает в облаке (compose.экземпляр io через аддон Heroku). У меня есть имя, пароль, хост, порт и имя базы данных из URI MongoDB:

mongodb://username:password@somewhere.mongolayer.com:10011/my_database

Я установил mongodb на свой MacBook, используя Homebrew не потому, что я хочу, чтобы Монго работал на моем Mac, а просто чтобы получить доступ к программе Mongo shell для подключения к этому удаленная база данных.

однако я не могу найти правильную команду, чтобы получить мне полный доступ к оболочке, который я хотел бы. Используя инструкции, найденные здесь http://docs.mongodb.org/manual/reference/program/mongo/ (поиск "remote") я могу получить то, что выглядит как соединение, но без указания моего имени пользователя или пароля я не полностью подключен. Бег!--1--> возвращает 1 (в отличие от "auth fails", когда я предоставляю неверное имя пользователя и пароль), но я продолжаю получать сообщение об ошибке "unauthorized" при выдаче .

2 ответов


вы, вероятно, подключаетесь нормально, но не имеете достаточных привилегий для запуска show dbs.

вам не нужно запускать db.auth если вы передадите auth в командной строке:

mongo somewhere.mongolayer.com:10011/my_database -u username -p password

после подключения вы можете видеть коллекции?

> show collections

если это так, все хорошо, и у вас просто нет прав администратора в базе данных и не может запустить show dbs


С Монго 3.2 и выше просто используйте строку подключения как есть:

mongo mongodb://username:password@somewhere.mongolayer.com:10011/my_database