El servidor MySQL desapareció al importar un archivo SQL grande
Intenté importar un archivo SQL grande a través de phpMyAdmin... pero seguía mostrando un error.
'El servidor MySQL ha desaparecido'
¿Qué hacer?
Como se indica aquí :
Las dos razones más comunes (y soluciones) por las que el servidor MySQL ha desaparecido (error 2006) son:
El servidor agotó el tiempo de espera y cerró la conexión. Como 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
establezcawait_timeout = 600
segundos (puede modificar/disminuir este valor cuando desaparezca el error 2006), luegosudo /etc/init.d/mysql restart
. No lo verifiqué, pero el valor predeterminado para wait_timeout podría ser de alrededor de 28800 segundos (8 horas).El servidor descartó un paquete incorrecto o demasiado grande. Si mysqld recibe un paquete 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
, configuremax_allowed_packet = 64M
(puede modificar/disminuir este valor cuando desaparezca el error 2006), luegosudo /etc/init.d/mysql restart
.
Editar:
Tenga en cuenta que los archivos de opciones de MySQL no tienen sus comandos disponibles como comentarios (como en php.ini, por ejemplo). Por lo tanto, debe escribir cualquier cambio/ajuste en my.cnf
o my.ini
y colocarlo en mysql/data
el directorio o en cualquiera de las otras rutas, bajo 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;
Para mí esta solución no funcionó, así que ejecuté
SET GLOBAL max_allowed_packet=1073741824;
en mi cliente SQL.
Si no puede cambiar esto con el servicio MYSql en ejecución, debe detener el servicio y cambiar la variable en el archivo "my.ini".
Por ejemplo:
max_allowed_packet=20M