Mongodb

OpenShift MongoDB ECONNREFUSED

  • May 28, 2016

嘗試連接到 mongodb-2.4 墨盒時,我不斷收到以下資訊

==> app-root/logs/nodejs.log <==
 Error: connect ECONNREFUSED 127.0.0.1:27017
     at Object.exports._errnoException (util.js:893:11)
     at exports._exceptionWithHostPort (util.js:916:20)
     at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1075:14)

我正在創建如下連接字元串

if(process.env.OPENSHIFT_MONGODB_DB_PASSWORD){
 connection_string = process.env.OPENSHIFT_MONGODB_DB_USERNAME + ":" +
 process.env.OPENSHIFT_MONGODB_DB_PASSWORD + "@" +
 process.env.OPENSHIFT_MONGODB_DB_HOST + ':' +
 process.env.OPENSHIFT_MONGODB_DB_PORT + '/' +
 process.env.OPENSHIFT_APP_NAME;
}

看起來當它失敗時它認為埠是 27017 但是當我執行 rhc port-forward appname 它向我顯示以下不同的 mongodb 埠

Service Local                OpenShift
------- --------------- ---- ------------------------------------------------------
haproxy 127.0.0.1:8080   =>  127.6.174.2:8080
haproxy 127.0.0.1:8081   =>  127.6.174.3:8080
mongodb 127.0.0.1:42346  =>  5747fa8f70-appname.rhcloud.com:42346
node    127.0.0.1:8082   =>  127.6.174.1:8080

關於出了什麼問題的任何想法?

事實證明,如果您在將 mongodb 墨盒與 Web 伺服器墨盒一起部署後刪除它,然後更換 mongodb 墨盒,則 Web 伺服器變數不會得到更新。我需要重新啟動 Web 層伺服器,以便它們更新新的 mongodb 設置變數。

引用自:https://serverfault.com/questions/779364