sql >> データベース >  >> NoSQL >> MongoDB

マングースの自動再接続オプション

    私はあなたと同じ質問をしました、そしてrobertklepの解決策は私にとってもうまくいきませんでした。 MongoDBサービスが停止すると、エラーイベントがトリガーされますが、connection.readyStateはまだ1(接続済み)です。自動再接続されなかったのはそのためかもしれません。

    これが私が今持っているものです:

      var db = mongoose.connection;
    
      db.on('connecting', function() {
        console.log('connecting to MongoDB...');
      });
    
      db.on('error', function(error) {
        console.error('Error in MongoDb connection: ' + error);
        mongoose.disconnect();
      });
      db.on('connected', function() {
        console.log('MongoDB connected!');
      });
      db.once('open', function() {
        console.log('MongoDB connection opened!');
      });
      db.on('reconnected', function () {
        console.log('MongoDB reconnected!');
      });
      db.on('disconnected', function() {
        console.log('MongoDB disconnected!');
        mongoose.connect(dbURI, {server:{auto_reconnect:true}});
      });
      mongoose.connect(dbURI, {server:{auto_reconnect:true}});
    


    1. Dockerコンテナからローカルのmongodbに接続する

    2. 確実にMongoDBに再接続する

    3. $andとMultiple$orを使用してMongoDBをクエリします

    4. HerokuアプリをAtlasMongoDBクラウドサービスに接続する