sql >> Base de Datos >  >> NoSQL >> MongoDB

las actualizaciones de mongodb no se muestran a menos que reinicie el servidor del nodo

Pruebe la secuencia de comandos con una conexión a la base de datos cuando se inicia el servidor y todo funciona con esa conexión.

Así que solo tendrás un MongoClient.connect cuando la aplicación escucha en lugar de eso para cada consulta


const url = "mongodb://adminMongo:[email protected]:12345";

// outline the options for mongo db connection
const mongoOptions = { useUnifiedTopology: true };

// create a new mongo client to connect to the database
const client = new MongoClient(url, mongoOptions);


// connect to mongodb database on start of server
client.connect(function(err) {
  if (err) {

    console.log('Unable to connect to the MongoDB database');

    // exit the process if a connection to the database cannot be made
    process.exit(1);

  } else {

    // create local host server 
server.listen(port, hostname, () => {
  console.log(`Server running at http://${hostname}:${port}/`);

});
  }
});

Luego, cuando desee consultar la base de datos, no necesita abrir una nueva conexión

p.ej. esta función debería funcionar sin necesidad de conectarse

function dbInsert(dataCategory, dataTitle, dataStart, dataEnd, dataInterval){
  var doc = {data_category:dataCategory,
            data_title:dataTitle,
            data_start: dataStart,
            data_end: dataEnd,
            data_interval: dataInterval};
  // insert document to 'users' collection using insertOne
  statsDB.collection('stats').insertOne(doc, function(err, res) {
      if(err) throw err;
      console.log("Document inserted");
  });
}