2012-12-23 33 views
16

從mongodb.org連接異常遠程服務器蒙哥結果連接失敗

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

我匿名改變數據庫,用戶和密碼運行在MongoDB的安裝文件此命令。

結果在這個

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

也許我被阻止服務器的防火牆?我沒有問題,使用混帳或釀造或點...

+0

如果您嘗試連接到mongolab,那麼本地mongod不相關,您可以從問題中刪除對它的引用。我嘗試設置mongolab帳戶並連接,並得到相同的錯誤 - 所以也許它是一個問題在他們的最後(你可以嘗試聯繫他們的支持)。如果你想連接到你的本地數據庫,那麼你可以直接運行「mongo」而無需額外的參數(它將默認連接到本地數據庫)。 – Iftah

+0

您可能需要一個完全合格的URL,但據說它應該可以工作 – Sammaye

回答

10

這是一個連接問題在你身邊。我嘗試過,但有一個登錄失敗消息:

MongoDB的外殼版本:1.6.5

連接到:ds045907.mongolab.com:45907/database

週一12月24日01:12: 31未捕獲的異常:登錄失敗

例外:登錄失敗

+2

是的,它是我的ISP ... – spracketchip

+0

也許檢查提示密碼是否正確:./mongo ds045907.mongolab.com:45907/database - ü用戶-p – aladine

+0

@Timothy_Bone謝謝,當我嘗試使用VPN時工作lol – timhc22

16

這裏有一些事情你可以嘗試,但你總是可以隨時與我們聯繫[email protected]。我相信我們可以做到這一點。

匿名蒙戈外殼連接

蒙戈將讓您連接而無需驗證。對於未經身份驗證的連接,您可以做的很少,但您可以將其用作測試來將連接問題與憑證問題分開。

% 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 

如果可以連接而無需驗證和運行命令如上所示,但試圖連接與身份驗證失敗,那麼你有憑據的問題。但是,如果即使沒有提供憑據,連接也不起作用,那麼您將遇到連接問題。

該服務器確實允許ICMP流量,所以一定要確保它是您從任何地方訪問。

% 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

如果ping失敗,使用(在Windows或tracerttraceroute,試圖找出問題的所在。一旦跟蹤到達AWS,它就會消失。這很正常。 AWS可以防止痕跡看起來太深入他們的網絡。確保列表中的最後一個IP由Amazon使用某種IP反向查找工具(Web上的很多)來擁有。

% 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

我也遇到了這個問題,並且我嘗試了您的檢查。對mongo ds045907.mongolab.com:45907的呼叫失敗,但是ping工作正常。我想這意味着我需要讓我的網絡管理員知道,但不知道要準確告訴他們什麼。謝謝你的幫助! – abritez

+1

如果您可以ping通但無法通過TCP連接到mongo端口,那麼很可能該端口被阻止。他們需要以某種方式允許它的流量。 – jared

+0

哦好吧,所以我需要問訪問端口45907.謝謝 – abritez