Como se indica aquí :
Las dos razones más comunes (y correcciones) por las que el servidor MySQL ha desaparecido (error 2006) son:
El servidor agotó el tiempo de espera y cerró la conexión. Cómo arreglar:
-
verifique que la variable wait_timeout en el archivo de configuración my.cnf de su mysqld sea lo suficientemente grande. En Debian:
sudo nano /etc/mysql/my.cnf
, establecewait_timeout = 600
segundos (puede modificar/disminuir este valor cuando el error 2006 desaparezca), luegosudo /etc/init.d/mysql restart
. No lo comprobé, pero el valor predeterminado parawait_timeout podría ser de alrededor de 28800 segundos (8 horas). -
El servidor dejó caer un paquete incorrecto o demasiado grande. Si mysqld recibe un paquete que es demasiado grande o incorrecto, asume que algo salió mal con el cliente y cierra la conexión. Puede aumentar el límite de tamaño máximo de paquete aumentando el valor de max_allowed_packet en el archivo my.cnf. En Debian:
sudo nano /etc/mysql/my.cnf
, establecemax_allowed_packet = 64M
(puede modificar/disminuir este valor cuando el error 2006 desaparezca), luegosudo /etc/init.d/mysql restart
.
Editar:
Tenga en cuenta que los archivos de opciones de MySQL no tienen sus comandos ya disponibles como comentarios (como en php.ini, por ejemplo). Por lo tanto, debe escribir cualquier cambio/ajuste en my.cnf
o my.ini
y colóquelos en mysql/data
directorio o en cualquiera de las otras rutas, en el grupo adecuado de opciones como [client]
, [myslqd]
, etc. Por ejemplo:
[mysqld]
wait_timeout = 600
max_allowed_packet = 64M
Luego reinicie el servidor. Para obtener sus valores, escriba en el cliente mysql:
> select @@wait_timeout;
> select @@max_allowed_packet;