Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

260
Vistas
PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR Después de las 8 p. m.

Tengo un problema con la conexión a MySQL. Después de las 8 p. m. (mi hora local), se pierde la conexión. Así que modifiqué mi código, siempre que mysql arroje PROTOCOL_CONNECTION_LOST , intentará volver a conectarse a mysql. El error de PROTOCOL_CONNECTION_LOST desapareció, pero da un nuevo código de error PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR al intentar conectarse al servidor. Este es mi código para crear una conexión a MySQL.

 const dbConn = mysql.createConnection({ host : 'localhost', user : 'xxxx', password : 'xxxx', database : 'test' }); function handleDisconnect() { dbConn.connect(function(err, connection) { if(err) { console.log('error when connecting to db:', err); setTimeout(handleDisconnect, 2000); } }); dbConn.on('error', function(err) { console.log('db error', err); if(err.code === 'PROTOCOL_CONNECTION_LOST') { handleDisconnect(); } else { throw(err) } }); } handleDisconnect(); module.exports = dbConn;

Esta es mi pila de errores

 0|index | error when connecting to db: Error: Cannot enqueue Handshake after fatal error. 0|index | at Protocol._validateEnqueue (/home/mydev/SOBATku/node_modules/mysql/lib/protocol/Protocol.js:212:16) 0|index | at Protocol._enqueue (/home/mydev/SOBATku/node_modules/mysql/lib/protocol/Protocol.js:138:13) 0|index | at Protocol.handshake (/home/mydev/SOBATku/node_modules/mysql/lib/protocol/Protocol.js:51:23) 0|index | at Connection.connect (/home/mydev/SOBATku/node_modules/mysql/lib/Connection.js:116:18) 0|index | at handleDisconnect (/home/mydev/SOBATku/config/db.config.js:34:10) 0|index | at Connection.<anonymous> (/home/mydev/SOBATku/config/db.config.js:45:7) 0|index | at Connection.emit (node:events:390:28) 0|index | at Connection._handleProtocolError (/home/mydev/SOBATku/node_modules/mysql/lib/Connection.js:423:8) 0|index | at Protocol.emit (node:events:390:28) 0|index | at Protocol._delegateError (/home/mydev/SOBATku/node_modules/mysql/lib/protocol/Protocol.js:398:10) { 0|index | code: 'PROTOCOL_ENQUEUE_AFTER_FATAL_ERROR', 0|index | fatal: false 0|index | }

Puede volver a conectarse cuando hago algún comando como registros de pm2 logs u otro comando con pm2 (uso pm2 para el comando de ejecución del nodo). Planeo usar la función cron para reiniciar mi servicio cada 8 p.m., pero si se puede resolver sin reiniciar el servicio, será muy útil. Gracias.

about 4 years ago · Santiago Gelvez
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda