Las bases de datos son componentes clave de la mayoría de los sitios web modernos, por lo que los errores que afectan a los suyos tienden a ser particularmente preocupantes. El error «MySQL server has gone away«, por ejemplo, puede hacerle creer que su base de datos se ha perdido. Esto significa que es posible que tenga que recurrir a su última copia de seguridad para poner en marcha su sitio.

A pesar de lo intimidante que suena, sin embargo, el error»MySQL server has gone away» es bastante fácil de arreglar. De hecho, con las instrucciones correctas, su sitio web debería estar listo y funcionando en cuestión de minutos.

En este artículo, vamos a mostrar cómo es el error «MySQL Server has gone away» y a desglosar lo que puede causarlo en WordPress. A continuación, le enseñaremos cómo solucionarlo y evitar que este error vuelva a aparecer en el futuro.

¡Vamos a trabajar!

Una Introducción al Error «MySQL Server Has Gone Away» (El Servidor MySQL ha Desaparecido)

En primer lugar, echemos un vistazo al aspecto del error «MySQL Server has gone away»:

Error en el navegador que muestra el error
Error en el navegador que muestra el error «MySQL server has gone away»

El error en sí mismo es bastante sencillo y casi siempre aparece de la misma manera. Sin embargo, dependiendo del navegador que utilice y de la configuración de su servidor, la redacción específica puede cambiar un poco.

En cuanto al error en sí, tiene que ver con su base de datos MySQL, como puede imaginar por el nombre. Para ser más específicos, una de tres cosas suele causar este error en la mayoría de los sitios web:

  1. Hay una tabla rota en su base de datos. Su base de datos se corrompió, por lo que debe volver a una copia de seguridad reciente o repararla.
  2. Su configuración de’timeout’ de PHP es demasiado baja. Si un script PHP necesita acceso a su base de datos y no puede recuperar la información dentro de la ventana de tiempo de espera que se ha establecido, esto también puede provocar el error mencionado anteriormente.
  3. Los’Paquetes’ han sido omitidos o son demasiado grandes. El servidor considera que este es el caso, esencialmente cierra la conexión y arroja el error.

Afortunadamente, todos estos temas pueden ser tratados fácilmente. Hablemos de cómo puede iniciar el proceso de resolución de problemas.

¿Cómo Corregir el Error «MySQL Server Has Gone Away» en WordPress? (3 Métodos)

Como hemos visto, hay algunas causas potenciales para este error particular de WordPress.

Por esta razón, existen diferentes soluciones posibles. En la mayoría de los casos, una de las correcciones a continuación debe deshacerse del error en su sitio web. Así que si uno no funciona, puede simplemente pasar al siguiente.

1. Edite su Archivo wp-db.php de WordPress

Si la configuración de tiempo de espera PHP de su sitio web es demasiado baja y su base de datos es demasiado grande, obtener los datos que necesita durante esa ventana puede ser un problema. Como mencionamos antes, esto puede provocar el error «MySQL server has gone away».

Para evitar que esto ocurra, tendrá que editar uno de sus archivos principales de WordPress, llamado wp-db.php. Puede encontrar este archivo dentro de su carpeta raíz de WordPress, abriendo el directorio wp-includes:

El archivo wp-db.php
El archivo wp-db.php

Para acceder a estos archivos, le recomendamos que utilice un cliente FTP como FileZilla y se conecte a través de SFTP (entiende la diferencia entre FTP y SFTP). Una vez que se haya conectado a su sitio, busque wp-db.php y haga clic con el botón derecho del ratón sobre él para abrir el archivo utilizando su editor de texto local predeterminado. Sigue esta guía rápida para mostrar todos los archivos ocultos en Filezilla.

Luego, busque en el archivo la siguiente línea:

$this->ready = true;

Agregue la siguiente línea justo debajo de ese código:

$this->query("set session wait_timeout=300");

Lo que hace este código es establecer su valor de tiempo de espera de PHP en 300 segundos, que debería ser mucho más de lo que necesita para evitar que aparezcan errores.

Ahora guarde los cambios en su archivo wp-db.php y asegúrese de que su sitio web se está cargando como debería.

Tenga en cuenta que si usted es un usuario de Kinsta, no debería tener que modificar la configuración de tiempo de espera de PHP de su sitio web. Todos nuestros planes tienen un valor de tiempo de espera base de 300 segundos y podemos ayudarle a aumentarlo dependiendo de sus necesidades.

2. Reparar su Base de Datos de WordPress

A veces su base de datos de WordPress puede corromperse, lo que a su vez puede conducir a errores cuando está tratando de establecer una conexión con ella. Esto no es tan común, pero puede ocurrir en el curso del crecimiento de un sitio web normal a medida que agrega más tablas a su base de datos (así como información sobre plugins y temas).

Para solucionar este problema, puede utilizar una función incorporada de WordPress para reparar su base de datos. En primer lugar, sin embargo, tendrá que activar esa función. Esto implica navegar al directorio raíz de WordPress y abrir el archivo wp-config.php para editarlo.

Una vez abierto el archivo, desplácese hasta la parte inferior y añada la siguiente línea:

define('WP_ALLOW_REPAIR', true);

Esa simple línea de código le dice a WordPress que habilite la función de reparación de la base de datos. Guarde los cambios en wp-config.php y cierre el archivo. Para ejecutar la función, basta con visitar la siguiente URL:

https://yourwebsite.com/wp-admin/maint/repair.php

WordPress le preguntará si desea simplemente reparar su base de datos o repararla y optimizarla. La primera opción es todo lo que necesita para corregir el error «MySQL server has gone away»:

La opción de reparar la base de datos en WordPress
La opción de reparar la base de datos en WordPress

El proceso no debería llevar mucho tiempo y, una vez finalizado, el error en cuestión debería desaparecer. Sin embargo, todavía tiene que hacer alguna limpieza, ya que tendrá que desactivar la función de reparación de la base de datos en su sitio web. Si no lo hace, cualquiera podría activarlo accediendo a la misma URL.

Antes de terminar, por lo tanto, vuelva a su directorio raíz de WordPress y elimine la línea de código que ha añadido antes. A continuación, guarde los cambios en el archivo y ciérrelo.

3. Restaure su Sitio web Utilizando una Copia de Seguridad a Través de su Proveedor de Hosting

Si todo lo demás falla, siempre puede utilizar una copia de seguridad completa de su sitio web para restaurarlo a un punto en el que la base de datos funcionaba correctamente. Lo ideal es que lo haga con una copia de seguridad reciente para perder la menor cantidad de datos posible.

El problema es que no todos los hosts de WordPress ofrecen funcionalidad de copia de seguridad incorporada para sus usuarios. Esto significa que a menudo se queda atascado usando soluciones manuales como los plugins. Estas herramientas no son necesariamente malas, pero si no tiene acceso a su área de administración de WordPress, restaurar una copia de seguridad se convierte en una tarea difícil.

Aquí en Kinsta, por otro lado, usted tiene acceso a copias de seguridad completas de su sitio web con cada plan. Para restaurar su sitio (incluyendo su base de datos) a un punto anterior, sólo tiene que acceder a su panel de control de alojamiento y buscar la pestaña Copias de seguridad:

Restaurar su copia de seguridad en MyKinsta
Restaurar su copia de seguridad en MyKinsta

Haga clic en la copia de seguridad que desea restaurar y verá más detalles sobre cuándo se creó. Para cada copia de seguridad, hay un botón Restaurar que puede utilizar para devolver su sitio web a su estado en ese momento.

Sin embargo, recuerde: el uso de esta función sobrescribirá la versión actual de su sitio web. Por lo tanto, sólo querrá utilizarlo como medida de último recurso cuando esté seguro de que no perderá ninguna información crítica.

Resumen

Cuanto más crezca su sitio web, más datos necesitará almacenar. Toda esa información va a la base de datos de WordPress. En algunos casos, si es demasiado grande, es posible que se produzcan errores como «MySQL server has gone away».

Si encuentra este error en particular, aquí hay tres maneras de deshacerse de él:

  1. Edite su archivo wp-db.php de WordPress.
  2. Repare su base de datos de WordPress.
  3. Restaure su sitio web utilizando una copia de seguridad a través de su proveedor de alojamiento.

En esta otra guía, te mostramos consejos y pasos adicionales sobre cómo reparar los problemas de la base de datos de WordPress.

Ahora que sabe cómo arreglarlo, es el momento de deshacerse de este molesto mensaje de error. Si sigue teniendo problemas con MySQL, es posible que quiera comprobar cómo corregir el error de MySQL 1064.