🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo arreglar la base de datos de WordPress con WP-CLI en cPanel

Actualizado el 11 de junio de 2026

¿Tu WordPress va lento, da errores al guardar entradas o directamente te muestra el temido "Error al establecer una conexión con la base de datos"? Antes de entrar en pánico, respira. En la mayoría de los casos, el problema no es un hackeo ni un fallo catastrófico, sino una base de datos corrupta o desincronizada. La buena noticia es que puedes arreglarla tú mismo, sin ser un desarrollador experto, usando una herramienta que ya tienes en tu hosting: WP-CLI.

En esta guía extensa y paso a paso, te voy a enseñar exactamente cómo reparar la base de datos de WordPress usando WP-CLI en cPanel. Olvídate de plugins pesados o de pagar a un técnico por algo que puedes hacer en menos de diez minutos. Vamos a ello.

¿Qué es WP-CLI y por qué es tu mejor aliado?

WP-CLI es la interfaz de línea de comandos oficial de WordPress. Piensa en ello como un control remoto para tu sitio web, pero en lugar de hacer clic en botones, escribes comandos en una terminal. Es la herramienta que usan los desarrolladores profesionales para hacer mantenimiento de forma rápida y segura, y tú también puedes usarla.

¿Por qué es ideal para reparar la base de datos?

  • Es rápido: Un comando puede hacer lo que un plugin tarda minutos en procesar.
  • Es seguro: No depende de que WordPress esté cargado en el navegador, así que funciona incluso si tu sitio está caído.
  • Es preciso: Te permite ejecutar acciones de MySQL directamente sin necesidad de entrar a phpMyAdmin.

Y lo mejor de todo: está disponible en la mayoría de los cPanels modernos. Solo tienes que aprender a usarlo.

Antes de empezar: Requisitos y precauciones

No vamos a improvisar. Para que esta operación sea un éxito, necesitas cumplir estos requisitos:

  1. Acceso a cPanel: Lógicamente, necesitas tus credenciales de acceso al panel de control de tu hosting.
  2. Acceso a Terminal o SSH: No todos los planes de hosting lo incluyen. Si tu cPanel tiene un icono llamado "Terminal" o "SSH Access", estás listo. Si no, contacta con tu proveedor para activarlo.
  3. Credenciales de la base de datos: Necesitas el nombre de la base de datos, el usuario y la contraseña. Los encontrarás en la sección "Bases de Datos MySQL" de tu cPanel.
  4. Una copia de seguridad (IMPORTANTÍSIMO): Antes de tocar nada, haz una copia de seguridad completa de tu sitio. Puedes usar el asistente de copias de cPanel o un plugin de backup. Si algo sale mal, podrás restaurar todo sin pérdidas.

[WARNING]
NO CONTINÚES SIN HACER UNA COPIA DE SEGURIDAD. Aunque el proceso de reparación es seguro, una base de datos es un archivo delicado. La copia de seguridad es tu red de seguridad. No la saltes.

Paso 1: Acceder a la Terminal desde cPanel

Este es el primer paso. Busca en tu cPanel la sección "Avanzado" o "Herramientas" y haz clic en el icono de "Terminal". Se abrirá una ventana negra (o blanca) que parece un "hacker". No te asustes, es solo la línea de comandos.

Si no ves la opción "Terminal", busca "SSH Access" y actívalo. Luego necesitarás un programa como PuTTY (en Windows) o la terminal nativa (en Mac/Linux) para conectarte. Para simplificar, te recomiendo usar la Terminal de cPanel si está disponible.

Una vez dentro, escribe el siguiente comando y presiona Enter para verificar que WP-CLI está instalado y funcionando:

wp --info

Si ves información sobre la versión de WP-CLI, ¡genial! Si te dice "comando no encontrado", es que no está instalado. Pero no te preocupes, en la mayoría de los cPanels modernos (como los de Syspanel, que recordemos se accede por el puerto 2106) ya viene preinstalado. Si no, tendrás que pedir a tu proveedor que lo instale o seguir la guía oficial de instalación, pero eso es otro tema.

Paso 2: Navegar a la carpeta de tu WordPress

Ahora tienes que decirle a la terminal dónde está tu instalación de WordPress. Normalmente, en cPanel, la ruta es ~/public_html. Pero si tienes un subdominio o una instalación en una subcarpeta, la ruta cambiará.

Usa el comando cd (change directory) para moverte. Por ejemplo, para ir a la raíz de tu sitio:

cd ~/public_html

Para asegurarte de que estás en el lugar correcto, lista los archivos:

ls -la

Deberías ver archivos como wp-config.php, wp-content y wp-admin. Si los ves, estás en la carpeta correcta.

[TIP]
Si tu WordPress está en una subcarpeta llamada "blog", el comando sería cd ~/public_html/blog. Ajusta la ruta según tu estructura.

Paso 3: Ejecutar el comando de reparación básico

Aquí es donde ocurre la magia. WP-CLI tiene un comando específico para verificar y reparar la base de datos. El comando principal es:

wp db repair

Este comando ejecuta las sentencias REPAIR TABLE de MySQL sobre todas las tablas de tu base de datos. Es como pasarle un "escáner" a tu base de datos para que encuentre y corrija errores menores, tablas bloqueadas o índices corruptos.

¿Qué verás en pantalla? Verás una lista de las tablas (como wp_posts, wp_options, etc.) con un mensaje de estado al lado. Si todo está bien, verás "OK" o "Table is already up to date". Si había un error, verás "Repaired" o "Status: OK".

Este es el comando más seguro y el que debes probar primero. En un 80% de los casos, esto soluciona el problema.

¿Y si quiero solo verificar sin tocar nada?

Existe un comando de "ensayo" que solo te dice si hay errores pero no los corrige. Es útil para diagnosticar:

wp db check

Este comando es como un "chequeo médico" sin recetar medicación. Si ves errores aquí, entonces sí necesitas ejecutar el wp db repair.

Paso 4: Reparación avanzada (si el comando básico no funciona)

A veces, el problema es más profundo. Si wp db repair no soluciona el error, podemos usar comandos más específicos de MySQL a través de WP-CLI.

Reparar tablas específicas

Si sabes qué tabla está fallando (por ejemplo, wp_options), puedes reparar solo esa:

wp db repair wp_options

Optimizar la base de datos (mantenimiento preventivo)

La reparación es para arreglar errores, pero la optimización es para mejorar el rendimiento. Con el tiempo, las tablas se fragmentan y ocupan más espacio del necesario. Ejecuta este comando para desfragmentar y compactar:

wp db optimize

Este comando es excelente para el mantenimiento de WordPress. Te recomiendo ejecutarlo una vez al mes para mantener tu sitio ágil.

[INFO]
Diferencia clave: wp db repair corrige errores y corrupción. wp db optimize reorganiza los datos para que las consultas sean más rápidas. Ambos son complementarios y deberías usarlos en ese orden.

Paso 5: Solucionar problemas de acceso y permisos

A veces, el comando wp db repair falla no porque la base de datos esté corrupta, sino porque el usuario de MySQL no tiene permisos para ejecutar REPAIR. Si ves un error como "ERROR 1142: REPAIR command denied to user", significa que tu usuario no tiene permisos de administrador sobre la base de datos.

¿Cómo solucionarlo?

  1. Ve a tu cPanel y entra en la sección "Bases de Datos MySQL".
  2. Busca la base de datos que estás intentando reparar.
  3. Verifica que el usuario que usas en wp-config.php tenga TODOS los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER, etc.).
  4. Si no tiene todos los privilegios, márcalos todos y guarda los cambios.

Este es un error común y fácil de solucionar. No te asustes si lo ves; es parte del aprendizaje.

Paso 6: Reparar desde phpMyAdmin como alternativa

Si WP-CLI te da demasiados problemas o simplemente prefieres una interfaz gráfica, puedes hacer la reparación desde phpMyAdmin, pero con un truco que no todo el mundo conoce.

  1. Ve a "Bases de datos MySQL" en cPanel y haz clic en "phpMyAdmin".
  2. Selecciona tu base de datos en la columna izquierda.
  3. Haz clic en la pestaña "SQL" en la parte superior.
  4. En el cuadro de texto, pega esta consulta SQL para reparar todas las tablas:
REPAIR TABLE wp_posts, wp_options, wp_users, wp_terms;

Pero espera, no quieres escribir todas las tablas manualmente. Hay un truco mejor:

REPAIR TABLE `wp_posts`, `wp_options`, `wp_users`, `wp_terms`, `wp_term_taxonomy`, `wp_term_relationships`, `wp_postmeta`, `wp_commentmeta`, `wp_comments`, `wp_links`;

O, si eres más atrevido y quieres reparar todas las tablas de una vez, usa esta consulta mágica que genera las sentencias por ti:

SELECT CONCAT('REPAIR TABLE ', table_name, ';') FROM information_schema.tables WHERE table_schema = 'tu_nombre_de_base_datos';

Copia el resultado de esa consulta y ejecútalo. Es un proceso más manual, pero funciona perfectamente.

Paso 7: Verificar que todo está correcto

Después de ejecutar la reparación, es hora de volver a tu sitio web. Recarga tu página en el navegador. Si el error de conexión ha desaparecido y todo funciona con normalidad, ¡enhorabuena! Has completado la reparación con éxito.

Para verificar la integridad de los datos en un nivel más profundo, puedes usar un plugin de verificación, pero con el comando wp db check que ya vimos es suficiente.

Mantenimiento preventivo: La clave para evitar futuros sustos

Reparar está bien, pero prevenir es mucho mejor. Aquí tienes una rutina de mantenimiento de WordPress que puedes hacer cada mes usando WP-CLI:

  1. Actualizar la base de datos de WordPress: A veces, después de una actualización de WordPress, la base de datos necesita una "puesta al día". Puedes forzarlo con:
    wp core update-db
    
  2. Optimizar la base de datos: Ya lo vimos, pero es crucial:
    wp db optimize
    
  3. Limpiar transients (datos temporales): Esto libera espacio y acelera tu sitio:
    wp transient delete --all
    
  4. Programar copias de seguridad: Aunque no es un comando de WP-CLI, asegúrate de que tu hosting hace copias automáticas. Si no, usa el comando wp db export para exportar tu base de datos a un archivo SQL:
    wp db export backup_$(date +%Y%m%d).sql
    

Preguntas Frecuentes (FAQ)

¿Puedo romper mi sitio si uso WP-CLI?
Si usas los comandos repair y optimize, el riesgo es mínimo. El peligro real está en comandos como wp db drop (que borra la base de datos) o wp db reset. NUNCA ejecutes comandos que no entiendas. Si tienes dudas, pregunta antes.

¿WP-CLI funciona en cualquier hosting?
No. Necesitas un hosting que te dé acceso a SSH o a una terminal desde cPanel. La mayoría de los planes de hosting compartido de calidad lo ofrecen. Si el tuyo no, considera migrar a uno que sí lo haga, o usa alternativas.

¿Qué pasa si el error persiste después de reparar?
Si el error de conexión persiste, el problema podría ser más grave: la base de datos está completamente corrupta, el servidor MySQL está caído o hay un problema con el usuario de la base de datos. En ese caso, contacta con tu proveedor de hosting, ya que el problema puede estar en el servidor, no en tu sitio.

¿Es mejor usar WP-CLI o un plugin como "WP-DB-Repair"?
WP-CLI es más rápido, no consume recursos del navegador y no añade código extra a tu instalación. Los plugins son útiles si no tienes acceso SSH, pero para una solución rápida y profesional, WP-CLI es superior.

¿Puedo usar estos comandos en Syspanel (HestiaCP)?
Sí. Aunque esta guía se centra en cPanel, los comandos de WP-CLI son universales. Si tu hosting usa Syspanel (recuerda que el puerto de acceso es el 2106), el proceso es idéntico: abre la terminal, navega a la carpeta de tu WordPress y ejecuta los mismos comandos. La única diferencia es la interfaz gráfica del panel, pero la línea de comandos es la misma.

Conclusión: Tú puedes ser el héroe de tu propio sitio

Dominar WP-CLI en cPanel es una habilidad que te ahorrará tiempo, dinero y dolores de cabeza. Reparar la base de datos ya no es un misterio ni un servicio de pago exclusivo para "expertos". Con este tutorial, tienes el poder de diagnosticar y solucionar problemas comunes de tu WordPress en cuestión de minutos.

La próxima vez que veas un error de base de datos, no te estreses. Abre tu cPanel, entra a la Terminal, navega a public_html y ejecuta wp db repair. Tu yo del futuro te lo agradecerá.

Y recuerda: la prevención es la mejor medicina. Programa tus copias de seguridad y ejecuta wp db optimize regularmente. Un sitio sano es un sitio rápido y feliz. ¡Nos vemos en el próximo tutorial!

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel