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
Gracias, me ha sido de utilidad:
[RAM]$ ls -l eloFedaFideNoviembre.sql
-rw-rw---- 1 framontb RAM 2122008 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
Gracias, me sirvió esta información, Dios te bendiga.
A mi también me ha servido,
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
Muchas gracias, me ayudaste a resolver el problema.
Gracias soluciono el problema
Gracias soluciono el problema de una BD muy grande de magento :)
Buen post... me ha servido de
Buen post... me ha servido de mucho.
Muchas gracias, me funcionó
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
Gracias, me sirvió de mucha ayuda tu post
Añadir nuevo comentario