Solución al error 1153 Got a packet bigger than ‘max_allowed_packet’ bytes


En MySQL, cuando intentamos realizar una carga de datos sobre una instancia ya existente, existe la posibilidad de obtener un error parecido a este:

ERROR 1153 (08S01) at line 625: Got a packet bigger than ‘max_allowed_packet’ bytes

Esto pasa porque el cliente desde que estamos cargando los datos envía un paquete mayor de lo que el servidor está configurado para soportar, la instalación por defecto configura esta variable de sistema a 1Mb.
Es necesario que tanto el cliente de mysql como el servidor (mysqld) estén configurados para aceptar paquetes de datos mayores.

Configurar el servidor

Debemos modificar el fichero de configuración de MySQL, en el caso de sistemas Windows, el fichero my.ini de la carpeta donde hayamos instalado el servidor. Para sistemas *nix, el fichero /etc/my.cnf.
En ambos casos deberemos añadir/modificar el parámetromax_allowed_packet que se encuentra en la sección [mysqld], por ejemplo, para ponerlo a 16M

max_allowed_packet=16M

Y después reiniciar el servidor MySQL.

Configurar el cliente

La configuración del cliente puede no ser necesaria, pero se puede abrir una sesión indicando el valor para el parámetromax_allowed_packet, por ejemplo:

mysql --max_allowed_packet=16M

A partir de la versión 4 de MySQL, este parámetro puede ser de hasta 1 Gb.

timthumb

Facebook Comments

Acerca de Anibal

Ingeniero Industrial egresado en 2007, Viajero de corazón y trabajador de hobbie. Soy Instructor certificado de la Secretaria de Trabajo y Previsión Social. Mi frase, "Sin prisa pero sin pausa" y como viajero coincido en el hecho de "Viajar es la única cosa que puedes comprar, que te hace mas rico"