Grazie Alka
ecco il metodo di lettura per id
in   db.js  faccio la connessione al db
const config = require("./config.json");
const mysql = require('mysql2');
const Sequelize = require('sequelize')
const sequelize = new Sequelize(
    config.database,
    config.user,
    config.password,
  {
    host: config.host,
    dialect: config.dialect,
    operatorsAliases: 0,
    pool: {
      max: config.pool.max,
      min: config.pool.min,
      acquire: config.pool.acquire,
      idle: config.pool.idle
    }
  }
);
let db;
//    variante per connettere sia localhost che in produzione su heroku
if(process.env.CLEARDB_DATABASE_URL) {
  db = mysql.createConnection(process.env.CLEARDB_DATABASE_URL)
} else {
    db = mysql.createConnection({
      host: config.host,
      user: config.user,
      password: config.password,
      database:config.database,
      port:config.port
  });
}
// connettere Mysql   utilizzato con create connection
db.connect(err=> {
  if(err) {
      console.log(err,'errore in connessione Mysql');
  }else {
      console.log('Mysql connected con successo');
  }
})
poi nei metodi di gesione tabelle faccio le query
exports.getbyid = (req,res)=> {
    
      let id = req.params.id;
      const strsql = strSql + ' where `bigliettos`.`id` = ' + id;
      db.query(strsql,(err,result)=> {
        if(err) {
             res.status(500).send({
                message: `2 errore il lettura bigliettos for id ${id}- errore: ${err}`,
                rc: 'kk',
                data:null
            });
            return;
        }
        
        if(result.length>0) {
             res.status(200).send({ 
                message:`situazione attuale per evento id: .....  ${id}`,
                rc: 'ok',
                data:result[0]
            });                    
        }else {
            res.status(200).send({
                message: `nessun evento presente for id: ${id}`,
                rc: 'nf',
                data:null
            });
        }
    });  
}
In questo metodo eseguo solo la query senza effettuare la db.connect e db.close
ho modiificato un metodo in cui effettuo la connessione prima di effettuare la query e la disconnessione alla fine.
dimmi se può andare bene.
Se corretta, devo effettuare la modifica su tutti i metodi di tutti i controller per effettuare la “connessione” prima di eseguire le query e la "disconnessione" alla fine del metodo.
exports.getAll = (req,res)=> {
    db.connect();                <--------- effettuo la connessione prima di operare
    let strsql = strSql; // 'select * from bigliettos';
    db.query(strsql,(err,result)=> {
        if(err) {
           res.status(500).send({
                message: `3 errore il lettura all bigliettos - erro: ${err}`,
                data:null
            });
            return;
        }
        if(result.length>0) {
             res.status(200).send({ 
                message:'Situazione attuale ',
                rc: 'ok',
                number:  result.length,
                data:result
            });                    
        }else {
            res.status(200).send({ 
                message: `nessun evento presente `,
                rc: 'nf',
                data:null
            });                    
        }
    });
    db.end();  <----------------  effettuo la disconnessione a fine metodo
}
Pensi possa andare bene ?
grazie
Moreno