Chciałbym wpaść w powłokę mongo w terminalu na moim MacBooku. Jednak jestem zainteresowany połączeniem się z instancją Mongo działającą w chmurze (instancja compose.io za pośrednictwem dodatku Heroku). Mam imię, nazwisko, hasło, host, port i nazwę bazy danych z MongoDB URI:jak mogę połączyć się ze zdalnym serwerem mongo z terminala Mac OS
mongodb://username:[email protected]:10011/my_database
Mam zainstalowany MongoDB na moim MacBooku użyciu nie Homebrew bo chcę Mongo działa na moim Macu, ale wystarczy, aby uzyskać dostęp do programu powłoki Mongo w celu połączenia z tą zdalną bazą danych.
Jednak nie mogę znaleźć odpowiedniego polecenia, aby uzyskać pełny dostęp do powłoki, jaki chciałbym. Korzystając z instrukcji znajdujących się tutaj http://docs.mongodb.org/manual/reference/program/mongo/ (szukaj "zdalnego") Mogę uzyskać to, co wygląda jak połączenie, ale bez podawania nazwy użytkownika lub hasła nie jestem w pełni podłączony. Uruchamianie db.auth(username, password)
zwraca 1 (w przeciwieństwie do "auth failed", gdy podaję niepoprawną nazwę użytkownika i hasło), ale nadal otrzymuję komunikat o nieautoryzowanym błędzie podczas wydawania komendy show dbs
.
Jestem w stanie połączyć się za pomocą techniki, którą opisujesz. Nie mogę jednak uruchamiać żadnych poleceń, takich jak "pokaż kolekcje" lub "pokaż użytkowników". Chciałbym uzyskać błąd "nie autoryzowany dla zapytania w my_db.system.namespaces". – jononomo
Ok, więc heroku losowo nazwał moją mongo bazę danych inną nazwą od tej, której używałem w dev. Myślę, że to w zasadzie mój problem. – jononomo
Ale jeśli mam? AuthSource = admin na końcu. To nie działa. - authenthentationDatabase nie pomaga. – RomKazanova