X

Error y Solución: “MySQL Server Has Gone Away” en WordPress

Si cuentas con un sitio web basado en WordPress, es posible que en algún momento te hayas encontrado con un mensaje de error que dice «MySQL Server Has Gone Away». Este problema puede afectar seriamente a tu sitio, y por supuesto causará una mala experiencia a tus visitantes. Lo bueno de este error es que se trata de uno relativamente fácil de resolver, así que veamos a continuación cómo solucionar el error «MySQL Server Has Gone Away» en WordPress.

Explicación del error “MySQL Server Has Gone Away” en WordPress

Pero no vamos a ir directamente a la solución, antes es importante entender qué sucede exactamente cuando este error se produce, y qué es lo que lleva a que se produzca. Es imprescindible además no confundirlo con el error al establecer una conexión con la base de datos porque son muy diferentes.

El error «MySQL Server Has Gone Away» se produce cuando la conexión entre WordPress y la base de datos de MySQL se interrumpe de manera inesperada. Esto puede ocurrir por varias razones, como una configuración incorrecta del servidor, un tiempo de espera excesivamente corto, una rotura en la base de datos o una carga excesiva en el servidor. Cuando esta conexión se pierde, WordPress no puede acceder ni modificar los datos de la base de datos, lo que resulta en el mencionado mensaje de error.

Teniendo un poco más en claro el panorama, y también teniendo en mente las posibles causas, veamos cuáles son las soluciones al error.

Cómo solucionar el error “MySQL Server Has Gone Away” en WP

Este error puede tener distintos orígenes, por lo tanto no hay una solución universal, así que veamos los casos más comunes.

Optimiza y repara tu base de datos

Una base de datos grande y desordenada puede causar problemas de rendimiento y provocar el error «MySQL Server Has Gone Away» en WordPress. Utiliza una herramienta de optimización de bases de datos, como phpMyAdmin, para eliminar tablas innecesarias, reparar tablas corruptas y optimizar la estructura de la base de datos. A menudo el error es causado por tener tablas rotas en la base de datos, así que esta suele ser la solución más común al problema. Este tipo de reparaciones también se pueden realizar directamente desde cPanel.

Revisar la configuración del servidor

No ocurre siempre, pero a veces el error se puede dar por una configuración incorrecta del servicio MySQL en el servidor. Consulta con tu proveedor de hosting WordPress o con el administrador del servidor para asegurar que los parámetros de configuración, como por ejemplo el tiempo de espera de la conexión, sean óptimos para tu web.

Incrementar el tiempo de espera de MySQL

Esto se relaciona en parte con el punto anterior, y suele ser una de las principales causas del error “MySQL Server Has Gone Away” en WordPress. Si el tiempo de espera de la conexión es demasiado corto es buena idea incrementarlo para que no se produzca el corte.

La forma de aumentar el tiempo de espera (también llamado timeout) es editar el archivo de configuración de MySQL y modificar el valor del parámetro «wait_timeout». Si este valor fuera muy bajo, por ejemplo de 5 o 10, es buena idea aumentarlo a algo más adecuado, por ejemplo 30 o 60, según sea necesario. Ten en cuenta que quizá debas solicitar la ayuda de tu proveedor de hosting con este asunto.

Comprobar que no haya cortes ni reinicios en MySQL

También puede suceder que de repente el servidor de MySQL se caiga por alguna razón, ya sea por un reinicio del mismo o por una sobrecarga en el server, lo cual puede derivar en el error. Puedes consultar con tu proveedor de hosting al respecto, ya que dependiendo del tipo de plan de hosting que tengas es posible que no dispongas de los accesos y/o privilegios para revisar este punto.

Optimizar las consultas de la base de datos

Esto no debemos confundirlo con optimizar la base de datos desde phpMyAdmin, porque son cosas muy distintas. En este caso nos referimos a optimizar las consultas como tales.

A veces puede darse el caso de que tu base de datos no cuente con consultas SQL bien optimizadas, lo cual puede provocar que las mismas demoren mucho tiempo en completarse, alcanzando el timeout de MySQL. Si el tiempo de espera de MySQL ya está en un valor adecuado, y el mismo es alcanzado por tus consultas, entonces es hora de hablar con un programador que las optimice.

Restaurar una copia de seguridad

Si nada funciona, entonces no está de más probar a restaurar un respaldo de tu base de datos o quizá incluso de toda tu web, solo asegúrate de que sea de un punto en el que el sitio funcionaba correctamente, y por supuesto cuanto más reciente mejor, así se produce la menor pérdida de información posible.

Conclusión

El error «MySQL Server Has Gone Away» en WordPress no es muy común pero es perfectamente posible que lo encuentres en algún momento. Lo bueno es que como decíamos las soluciones son relativamente sencillas.

Para arreglar el error a veces será necesario acudir a nuestro proveedor de hosting, para que verifique que la configuración de MySQL tiene los parámetros correctos, o bien para comprobar que no haya cortes inesperados en el servicio.

Si del lado del server y de MySQL está todo en orden, entonces debemos atacar el problema por el lado de la base de datos, realizando una optimización y reparación de la misma, e incluso realizando una optimización de nuestras consultas SQL de ser necesario.

Artículos relacionados