2017-03-22 25 views
0

私はそれが問題の議論の方法であることを知っていて、私はSOとGoogleで一般的に見つけたほぼすべてのトピックを通過しました。ランダムな点でMongoは最初の接続でサーバに接続できませんでした

問題

時間で、次のエラーがmongodサービス(SOの.lockを再起動し、

MongoError: failed to connect to server [127.0.0.1:20000] on first connect 
    at Pool.<anonymous> (/home/user/node_modules/mongodb-core/lib/topologies/server.js:326:35) 
    at emitOne (events.js:96:13) 
    at Pool.emit (events.js:189:7) 
    at Connection.<anonymous> (/home/user/node_modules/mongodb-core/lib/connection/pool.js:270:12) 
    at Object.onceWrapper (events.js:291:19) 
    at emitTwo (events.js:106:13) 
    at Connection.emit (events.js:192:7) 
    at Socket.<anonymous> (/home/user/node_modules/mongodb-core/lib/connection/connection.js:185:10) 
    at Object.onceWrapper (events.js:291:19) 
    at emitNone (events.js:86:13) 

溶液

キルアプリケーションを発生ファイルが削除されます)、アプリケーションを再起動します。今はすべてがスムーズに実行されます。明らかにそれは容認された解決策ではありません!

環境と事実

がアプリケーションを使用して書かれている:

  • ExpressJSフレームワーク(バージョン4.15.2)
  • MongoJSドライバ(バージョン2.4.0)
  • NodeJS (バージョン7.7.3)
  • MongoDB(バージョン3.4.2)

サーバはMongoDBのがドキュメントに記載されたとおりに推奨.rpm方法を使用してインストールされたCentOSに7

を実行VPS(OpenVZの)です。

上記のエラーでアプリケーションがクラッシュしても、私はシェル経由で接続して問合せを発行できます。

エラーが発生している可能性のあるログなどは何もログに記録されていません。唯一の起動時の警告は、ext4の代わりにxfsを使うことと、OpenVZでMongoDBを使うことです。

mongod.confに対する構成変更は、リスニングポートと有効化許可だけでした。

mongojsで使用する接続文字列は、ヘルプ一瞬叫び

ください連中次

var mongojs = require('mongojs'); 
var db = mongojs('mongodb://username:[email protected]:20000/database') 

です!助けてください...それは本当に迷惑で、それが私であるか、ドライバーか、これを混乱させる設定であるかを知ることができません!事前

UPDATE

おかげで、データベースのパッケージ版を削除しないと、手動インストールを実行したが、まだ結果!エラーは続きます...

+0

あなたはマングースを使用したことがありますか? –

+0

試してみてください。同じエラー...公式のmongoノードドライバを試しても、役に立たない。 –

+0

ユーザー名とパスワードを入力しないとどうなりますか?私はあなたの文字列に何かがあると信じます –

答えて

0

ここで問題を解決しました。

変更されたサーバとOpenVZからKVMベースのVPSに移動しました。 すべてのアプリケーション要素は同じままです(アプリケーションコード/ノード/ npm/mongo /ドライバなど)、同じOS(まだCentos 7)。

ない単一の手掛かり理由が、アプリではなく、数分または数時間おきにクラッシュが約一週間のために、新しいサーバー上で完全に実行されている...

ホープこれは誰かに役立ちます!

関連する問題