Cómo resolver el error “MySQL server has gone away” cuando importas una base de datos con “wp db import”

Justo antes de escribir este pequeño artículo tuve que hacer una importación de base de datos de WordPress de 1Gb de tamaño.

No es que sea la mayor base de datos que haya importado, pero en mi local, y usando WP CLI sí lo era y me estaba dando un error que me estaba volviendo loco y no entendía porqué: “MySQL Server has gone away”.

El error es simple: el tamaño del archivo .sql a importar es demasiado grande para los parámetros por defecto que tiene definido XAMPP para MySQL.

La solución

La solución pasa por modificar un par de parámetros de la configuración del archivo my.cnf situado en /Applications/XAMPP/xamppfiles/etc/my.cnf

Los parámetros son los siguientes:

[mysqld]
max_allowed_packet=2G
innodb_lock_wait_timeout=5000
[mysqldump]
max_allowed_packet=2G

En mi caso el max_allowed_packet lo he fijado en “2G” ya que el tamaño de mi archivo era de 1,3Gb concretamente. Con 2G le doy margen

Después, no sé si habrá influido o no, pero innodb_lock_wait_timeout estaba en 50 y lo he subido a 5000 (más de una hora).

Con estos datos así establecidos, he reiniciado el servicio de MySQL y al volver a ejecutar el comando wp db import file.sql ha funcionado, tardando un rato, eso sí, pero se ha completado con éxito.


Comments

Leave a Reply

Your email address will not be published. Required fields are marked *