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ámetro max_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ámetro max_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.
Más información de la configuración de este parámetro en la documentación oficial.

Comentarios

Gracias, me ha sido de utilidad:
[RAM]$ ls -l eloFedaFideNoviembre.sql
-rw-rw---- 1 framontb RAM <em>2122008</em> nov 9 17:40 eloFedaFideNoviembre.sql

[RAM]$ cat /etc/my.cnf
[mysqld]
max_allowed_packet=4M
...
[RAM]$ mysql -u hora -p -D etlabora < eloFedaFideNoviembre.sql
Enter password: ******

[RAM]$ mysql -u hora -p -D etlabora
mysql> select count(*) from jos_ratings;
+----------+
| count(*) |
+----------+
| 25987 |
+----------+
1 row in set (0.00 sec)

Gracias, me sirvió esta información, Dios te bendiga.

A mi también me ha servido, después de mirar el log de errores de apache y detectar que el problema estaba en "max_allowed_packet=16M" busqué en google información sobre el tema, di con esta página y voalá, un problema menos.

El mi caso el problema se produjo por instalar varios módulos simultáneamente con sólo 48M de RAM asignada.

Muchas gracias, me ayudaste a resolver el problema.

Gracias soluciono el problema de una BD muy grande de magento :)

Buen post... me ha servido de mucho.

Muchas gracias, me funcionó perfecto... no podía subir el worldip.sql... su estructura no dejaba subir bien el sql...

Para ayudar a los que tienen problemas en un hosting y no pueden hacer esta configuración, deben hacer lo siguiente:

- Hagan esta solución en modo local y corran el script
- Luego generen el .SQL o en .gZIP de la tabla en modo local

- Subir el archivo generado al hosting.. esta ves si va funcionar ya que se construyó otra estructura de inserción

y listo...

Otro detalle... si tienes BD de 1GB puedes usar el bigdump.php

Gracias, me sirvió de mucha ayuda tu post

intento exportar mi DB de Commerce Kickstart sql.gz (1,5M) en local hacia el free webhosting remoto (000Webhost.com) que tengo, y nada me sigue dando el error de "1153 Got a packet bigger than 'max_allowed_packet' bytes":

Y con bigDump obtengo esto:
Query: INSERT INTO `cache_views` (`cid`, `data`, `expire`, `created`, `serialized`) VALUES
('views_data:es', 0x613a3137353a7b733a383a22636f6d6d656e7473223b613a383a7b733a3... bla bla bla...

MySQL: Got a packet bigger than 'max_allowed_packet' bytes

...y no hay manera de subir el Sitio al webhosting.

También he probado troceando el .sql en 6 archivos .sql y me da el mismo error.

Agradecería vuestra ayuda, estoy desesperado llevo ya 10 días con este tema. Me he leído el Google hasta la saciedad y los foros de Drupal y ya no sé que hacer. Eso sí, he aprendido bastante :) con las BD porque estaba muy verde.

No sabes de la que me has salvado ... :'( ... :D:D:D Habia eliminado mi bd (complejisima)y solo tenia el exportado .sql.zip ( que suponia; éste se habia exportado mal-...)... hace tiempo me paso lo mismo y a las justas pude solucionar editando dicho archivo.

Con lo que has compartido subio en una dicho archivo .sql.zip :D :D :D

muchas gracias!! no sabes de la que me has salvado

Muchos exitos!!

Saludos cordiales

Muchas gracias, estuve con este problema un bue rato hasta que di con tu post.

Hola, yo tengo el mismo problema pero cuando voy a subir mi Base de datos a un servidor remoto, en este caso que puedo hacer? ¿dónde encuentro el archivo a modificar? Gracias

Gracias. Buen lío eh!

Maestro!!!

hasta cuanto se puede llevar este valor de conexion? cuanto es lo maximo sugerido?

Maestrooooooooo
Ya no sabia que hacer amigo estaba subiendo imagenes pesadas y solo podia subir hasta un poco menos de un mega agrege esta lineay boalá ya habia agotado todas esperanzas habia modificado el php.ini habia creado .htaccess y todo y era una simple linea...
Que bueno que haya gente como tu

Hola. Una pregunta la solucion al error 1153 que estas dando funciona tambien para una nintendo wi?

Añadir nuevo comentario