2012-12-23 12 views
16

Uruchomienie tego polecenia w pliku instalacyjnym MongoDB z mongodb.orgpodłączenia do zdalnego serwera Mongo wyników w wyjątku connect udało

./mongo ds045907.mongolab.com:45907/database -u user -p password 

Zmieniłem bazy danych, użytkownika i hasło do anonimowości.

skutkuje tym

Error: couldn't connect to server ds045907.mongolab.com:45907 src/mongo/shell/mongo.js:93 
exception: connect failed 

Może jestem blokowany przez zaporę serwera? Nie mam problemu z użyciem git, brew lub pip ...

+0

Jeśli próbujesz połączyć się z mongolabem, to lokalny mnich nie jest istotny, możesz usunąć odniesienia do niego z pytania. Próbowałem skonfigurować konto mongolab i połączyć się i dostałem ten sam błąd - może więc jest to problem na końcu (możesz spróbować skontaktować się z jego obsługą).Jeśli próbujesz połączyć się z lokalną bazą danych, możesz wpisać "mongo" bez dodatkowych parametrów (domyślnie będzie to połączenie z lokalną bazą danych). – Iftah

+0

Może być potrzebny w pełni kwalifikowany adres URL, ale wydaje się, że powinien zadziałać. – Sammaye

Odpowiedz

10

Jest to problem z połączeniem po Twojej stronie. Próbowałem, ale dostałem komunikat o niepowodzeniu logowanie:

MongoDB wersja shell: 1.6.5

łączący do: ds045907.mongolab.com:45907/database

Mon 24 grudnia 01:12: 31 przechwycony wyjątek: logowanie nie powiodło

wyjątek: logowanie nie powiodło

+2

Tak, to był mój ISP ... – spracketchip

+0

Może sprawdzić, czy hasło do hasła jest poprawne: ./mongo ds045907.mongolab.com:45907/database - u użytkownik -p – aladine

+0

@Timothy_Bone dziękuje, pracował, gdy próbowałem z VPN lol – timhc22

16

Oto kilka rzeczy, które można spróbować, ale zawsze można czuć się swobodnie o kontakt [email protected] Jestem pewien, że możemy dojść do sedna tego.

Anonymous Mongo połączenie powłoki

Mongo pozwoli Ci połączyć bez uwierzytelniania. Z nieuwierzytelnionym połączeniem można zrobić bardzo mało, ale można go użyć jako testu do oddzielenia problemu z łącznością od problemu z poświadczeniami.

% mongo ds045907.mongolab.com:45907 
MongoDB shell version: 2.0.7 
connecting to: ds045907.mongolab.com:45907/test 
> db.version() 
2.2.2 
> db.runCommand({ping:1}) 
{ "ok" : 1 } 
> exit 
bye 

Jeśli można połączyć się bez uwierzytelniania i uruchomić polecenia, jak pokazano powyżej, ale próbuje się połączyć z uwierzytelnianie nie powiedzie się, to masz problem z poświadczeniami. Jeśli jednak połączenie nie działa, nawet bez podania poświadczeń, oznacza to problem z połączeniem.

ping

Ten serwer nie zezwala na ruch ICMP, więc upewnij się, że jest osiągalny z gdziekolwiek jesteś.

% ping ds045907.mongolab.com 
PING ec2-107-20-85-188.compute-1.amazonaws.com (107.20.85.188): 56 data bytes 
64 bytes from 107.20.85.188: icmp_seq=0 ttl=41 time=99.744 ms 
64 bytes from 107.20.85.188: icmp_seq=1 ttl=41 time=99.475 ms 
64 bytes from 107.20.85.188: icmp_seq=2 ttl=41 time=99.930 ms 
^C 
--- ec2-107-20-85-188.compute-1.amazonaws.com ping statistics --- 
3 packets transmitted, 3 packets received, 0.0% packet loss 
round-trip min/avg/max/stddev = 99.475/99.716/99.930/0.187 ms 

traceroute

Jeśli ping zawiedzie, użyj traceroute (lub tracert w systemie Windows), aby spróbować dowiedzieć się, gdzie jest problem. Jednak gdy ślad dotrze do AWS, będzie tratował. To normalne. AWS uniemożliwia śledzenie zbyt daleko w swoich sieciach. Upewnij się, że ostatnie IP na liście jest własnością firmy Amazon za pomocą jakiegoś narzędzia do wyszukiwania wstecznego IP (wiele w Internecie).

% traceroute ds045907.mongolab.com 
traceroute to ec2-107-20-85-188.compute-1.amazonaws.com (107.20.85.188), 64 hops max, 52 byte packets 
1 192.168.1.1 (192.168.1.1) 1.092 ms 0.865 ms 1.047 ms 
2 192.168.27.1 (192.168.27.1) 1.414 ms 1.330 ms 1.224 ms 

      ... snipped to protect the innocent ... 

14 72.21.220.83 (72.21.220.83) 87.777 ms 
    72.21.220.75 (72.21.220.75) 87.406 ms 
    205.251.229.55 (205.251.229.55) 99.363 ms 
15 72.21.222.145 (72.21.222.145) 87.703 ms 
    178.236.3.24 (178.236.3.24) 98.662 ms 
    72.21.220.75 (72.21.220.75) 87.708 ms 
16 216.182.224.55 (216.182.224.55) 87.312 ms 86.791 ms 89.005 ms 
17 * 216.182.224.55 (216.182.224.55) 91.373 ms * 
18 216.182.224.55 (216.182.224.55) 121.754 ms * * 
19 * * * 
20 * * * 
21 * * * 
22 * * * 
23 * * * 
24 * * * 
+0

Mam również ten problem i próbowałem twoich czeków. Nie zadziałało wezwanie do mongo ds045907.mongolab.com:45907, ale ping zadziałał. Sądzę, że oznacza to, że muszę powiadomić moich administratorów sieci, ale nie jestem pewien, co dokładnie im powiedzieć. Dzięki za pomoc! – abritez

+1

Jeśli możesz pingować, ale nie możesz połączyć się przez TCP z portem mongo, najprawdopodobniej port jest blokowany. Będą musieli w jakiś sposób zezwolić na ruch na nim. – jared

+0

Oh okej, więc musiałbym poprosić o dostęp do Port 45907. Dzięki – abritez

Powiązane problemy