than not modificar max_allowed_packet larger got error bytes bigger are allowed mysql mysqldump

not - Error mysqldump: obtuve un paquete más grande que max_allowed_packet ''



set max_allowed_packet mysql workbench (3)

Mi aplicación descarga correos sobre IMAP y los almacena en una base de datos MySQL. Anteriormente, admitía correos de hasta 10 MB y, por lo tanto, bastaba con una columna de "texto medio" para almacenar el contenido del correo. Ahora necesito admitir correos de hasta 30MB. Así que cambié el tipo de datos para la columna a ''texto grande''. Ayer se almacenó un correo con un tamaño de 25 MB. Después de eso cada vez que ejecuto el comando mysqldump arroja un error:

mysqldump: Error 2020: Got packet bigger than ''max_allowed_packet'' bytes when dumping table `ib_mailbox_backup` at row: 3369

La fila 3369 contiene el correo de 25 MB.

En la configuración de MySQL, aumenté el ''max_allowed_packet'' de 64M a 512M y aún falla con el mismo error. Ejecutando el comando mysqldump en la misma máquina donde se ejecuta el servidor MySQL. ¿Cómo puedo solucionar esto?


  1. Puede agregar --max_allowed_packet=512M a su comando mysqldump .
  2. O agregue max_allowed_packet=512M a la sección [mysqldump] de su my.cnf (gracias @Varun)

Nota: no funcionará si no está en la sección [mysqldump] ...


Algunos de mis scripts dejaron de funcionar después de una actualización a Debian 9 y MariaDB.

MariaDB en Debian presenta un nuevo archivo de configuración específicamente para las configuraciones de /etc/mysql/conf.d/mysqldump.cnf ( /etc/mysql/conf.d/mysqldump.cnf ). Si había establecido max_allowed_packet <> 16M en su estándar /etc/mysql/my.cnf anteriormente, el nuevo archivo de configuración sobrescribirá esa configuración. Así que asegúrese de verificar este nuevo archivo de configuración y eliminar la entrada o ajustarla a sus necesidades.

No estoy seguro de si el cambio fue introducido por el intercambio de MySQL a MariaDB o si Debian hizo un cambio en la forma en que los archivos de configuración se presentan en V9.


Tuve un error similar y fallaría con el tamaño del paquete 512M en la fila 0. Era una tabla innodb que aparentemente estaba dañada (mysqlcheck mostró OK). Terminé recreando la tabla y luego funcionó bien con un tamaño de paquete pequeño de solo 128M.