Eu gostaria de entrar no shell mongo no terminal do meu MacBook. No entanto, estou interessado em me conectar a uma instância do Mongo que está sendo executada na nuvem (instância compose.io via complemento Heroku). Tenho o nome, a senha, o host, a porta e o nome do banco de dados do URI do MongoDB:
mongodb://username:[email protected]:10011/my_database
Instalei o mongodb no meu MacBook usando o Homebrew não porque quero o Mongo rodando no meu Mac, mas apenas para obter acesso ao programa shell mongo e me conectar a esse banco de dados remoto.
No entanto, não consigo encontrar o comando certo para obter o acesso total ao shell que gostaria. Usando as instruções encontradas aqui http://docs.mongodb.org/manual/reference/program/mongo/ (procure por "remoto"), consigo obter o que parece ser uma conexão, mas sem fornecer meu nome de usuário ou senha, não sou totalmente conectado. A execução db.auth(username, password)
retorna 1 (ao contrário de "falha de autenticação" quando forneço nome de usuário e senha incorretos), mas continuo recebendo uma mensagem de erro "não autorizado" ao emitir o show dbs
comando.
fonte
Com o Mongo 3.2 e superior, basta usar sua string de conexão como está:
fonte
Outra maneira de fazer isso é:
fonte