sql >> Base de Datos >  >> RDS >> Mysql

Perder la conexión a MySQL después de un tiempo y no volver a conectar

Como sugieres, es porque mysql cierra las conexiones inactivas después de cada wait_timeout pases; tiene algunas opciones para solucionar su problema:

  • use un administrador de grupo de conexiones, como c3p0 o apache DBCP . Esto se encargará de la revalidación de las conexiones a pedido, eventualmente puede especificar qué consulta ejecutar para probar si la conexión está activa.
  • establecer wait_timeout en mysql lo suficientemente grande para su caso de uso (el valor predeterminado es 8 horas).
  • configure una tarea programada (por ejemplo, usando quartz ) que refresca las conexiones, "haciendo ping" al servidor mysql.