2017-10-08 119 views
1

我有一個mongod實例的ubuntu 16.04虛擬服務器上運行,在本地主機上監聽端口27017:本地蒙戈客戶端無法連接到本地的mongod服務器

netstat -tulpn : 

tcp  0  0  127.0.0.1:27017   0.0.0.0:*    LISTEN  11639/mongod  

但本地mongo客戶端腳本無法在端口27017上連接:

MongoDB shell version v3.4.9 

connecting to: mongodb://127.0.0.1:27017 

W NETWORK [thread1] Failed to connect to 127.0.0.1:27017 after 5000ms milliseconds, giving up. 
E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed : 
[email protected]/mongo/shell/mongo.js:237:13 
@(connect):1:6 
exception: connect failed 

一切都是本地的,所以AFAIK所有端口都打開。

服務器日誌只是說:

我網[線程1]正在等待連接端口27017

什麼可以解釋的連接失敗?

回答

0

這是一個網絡綁定問題。嘗試連接到mongodb://localhost:27017
另外,請嘗試在mongod啓動時註釋掉bind_ip參數,例如,

# bind_ip = 127.0.0.1                

mongo CLI是否連接?如果是這樣,請仔細檢查客戶端腳本調用參數是否正確傳遞。

要額外確保mongod運行,試試這個太:

$ curl 'http://localhost:27017' 
It looks like you are trying to access MongoDB over HTTP on the native driver port. 
+0

蒙戈CLI不選擇連接。評論#bind_ip並嘗試在本地主機上的連接沒有幫助。 – FH35

+0

你確定mongod實際上在運行嗎?你有沒有嘗試一直支持到兩個窗口,啓動mongod並將所有選項暴露在前景中,並嘗試通過另一箇中的CLI進行連接? –

+0

是的。在一個窗口中,我手動運行命令:/ usr/bin/mongod --port 27017 --bind_ip 127.0.0.1 --logpath /var/log/mongodb/mongodb.log --dbpath/var/lib/mongodb --logappend - 叉子。在另一個mongo上。但仍然沒有聯繫。很奇怪... – FH35

2

在我看來,你用蒙戈CLI之前,你應該開始的mongod。

$ sudo mongod 

$ sudo service mongod restart 

和檢查的mongod服務的狀態

$ sudo service mongod status 

然後用蒙戈外殼

$ mongo 
相關問題