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

Solucionar problemas de base de datos en PrestaShop desde cPanel

Actualizado el 19 de noviembre de 2025

¿Tu tienda PrestaShop ha dejado de funcionar de repente? Ves pantallas en blanco, errores de conexión o mensajes crípticos que hablan de "tablas" y "consultas". No entres en pánico. Lo más probable es que tengas un problema con la base de datos. Como técnico de soporte, te digo que es una de las incidencias más comunes y, por suerte, una de las más fáciles de solucionar si sabes cómo hacerlo.

En esta guía extensa y paso a paso, te voy a enseñar a reparar base datos PrestaShop desde cPanel, usando herramientas como phpMyAdmin. No necesitas ser un experto en programación; solo sigue las instrucciones al pie de la letra. Al final, tendrás tu tienda funcionando otra vez.

Vamos a cubrir desde los síntomas más habituales hasta las soluciones más efectivas, incluyendo cómo prevenir que vuelva a ocurrir. ¡Empecemos!

¿Por qué se daña la base de datos de PrestaShop?

Antes de ponernos manos a la obra, es bueno entender por qué ocurre esto. Una base de datos es como el cerebro de tu tienda: guarda productos, pedidos, clientes, configuraciones... Si se "daña", el cerebro no funciona bien.

Las causas más frecuentes son:

  • Cortes de energía o apagados bruscos del servidor. Si el servidor se apaga mientras se escribe información, los archivos de la base de datos pueden quedar corruptos.
  • Actualizaciones incompletas de PrestaShop, módulos o temas. A veces, una actualización se interrumpe y deja tablas en un estado inconsistente.
  • Errores en módulos o plugins. Un módulo mal codificado puede ejecutar consultas que dañen las tablas.
  • Problemas de espacio en disco. Si el servidor se queda sin espacio, la base de datos no puede escribir correctamente y se corrompe.
  • Ataques o inyecciones SQL. Aunque menos común, un ataque puede modificar o dañar tablas.

Síntomas comunes de una base de datos dañada

¿Cómo saber si el problema es la base de datos y no otra cosa? Estos son los síntomas más típicos:

  • Error "Cannot connect to database" (No se puede conectar a la base de datos). Aparece en la tienda o en el panel de administración.
  • Pantalla en blanco (White Screen of Death). Sin ningún mensaje de error.
  • Errores de MySQL específicos, como Table 'prueba.ps_product' doesn't exist o Error de sintaxis en la consulta.
  • Productos, pedidos o clientes que desaparecen o aparecen incompletos.
  • La tienda carga muy lento o se cuelga.
  • Error al intentar acceder a la configuración de un módulo.

Si reconoces alguno de estos síntomas, es muy probable que necesites reparar base datos PrestaShop.

Accediendo a cPanel y phpMyAdmin

Para solucionar el problema, primero tienes que entrar al panel de control de tu hosting. Aquí te explico cómo hacerlo.

Paso 1: Inicia sesión en cPanel

  1. Abre tu navegador y ve a la dirección de tu cPanel. Normalmente es algo como tudominio.com/cpanel o https://tuhosting.com/cpanel.
  2. Introduce tu nombre de usuario y contraseña de cPanel. Si no los tienes, contacta con tu proveedor de hosting.

[INFO] Si tu hosting usa Syspanel (el antiguo HestiaCP), el acceso es diferente. La URL será tudominio.com:2106 y usarás las credenciales que te proporcionó tu proveedor. Dentro de Syspanel, busca la sección de "Base de datos" o "phpMyAdmin".

Paso 2: Encuentra phpMyAdmin

Una vez dentro de cPanel, busca la sección "Bases de Datos". Allí verás un icono que dice "phpMyAdmin". Haz clic en él.

[WARNING] ¡Cuidado! phpMyAdmin es una herramienta muy potente. No modifiques nada que no entiendas completamente. Sigue estrictamente las instrucciones de esta guía.

Paso 3: Selecciona tu base de datos

Al abrir phpMyAdmin, verás una lista de bases de datos en el panel izquierdo. Busca la que corresponde a tu PrestaShop. Normalmente se llama algo como tudominio_prestashop o usuario_prestashop. Haz clic en su nombre.

En la parte derecha, verás una lista de todas las tablas de tu base de datos (ps_product, ps_customer, ps_orders, etc.). Ahora es donde empezamos a trabajar.

Método 1: Reparar tablas desde phpMyAdmin (La forma más fácil)

Esta es la primera y más sencilla opción para reparar base datos PrestaShop. A menudo soluciona el problema sin complicaciones.

Paso a paso:

  1. Selecciona todas las tablas. En la parte inferior de la lista de tablas, verás un enlace que dice "Seleccionar todo". Haz clic en él. Verás que todas las tablas se marcan con un check.
  2. Elige la opción "Reparar tabla" En el menú desplegable que dice "Con seleccionados:", justo al lado del botón "Sí", selecciona la opción "Reparar tabla".
  3. Ejecuta la reparación. Haz clic en el botón "Sí". phpMyAdmin comenzará a analizar y reparar las tablas una por una.

Verás una pantalla con los resultados. Busca mensajes como ok o La tabla está reparada. Si todo sale bien, ¡enhorabuena! Has solucionado el problema.

[TIP] Si el proceso se queda pillado o ves muchos errores, no te preocupes. Pasa al Método 2.

Método 2: Reparar desde la consola SQL (Para problemas más profundos)

A veces, la opción "Reparar tabla" no es suficiente. Necesitas ejecutar un comando SQL directamente. No te asustes, es muy sencillo.

Paso a paso:

  1. Ve a la pestaña "SQL" En la parte superior de phpMyAdmin, verás una pestaña que dice "SQL". Haz clic en ella.

  2. Escribe el comando de reparación. En el cuadro de texto que aparece, borra cualquier cosa que haya y escribe el siguiente comando:

    REPAIR TABLE `tu_tabla_a_reparar`;
    

    Pero, como no sabes qué tabla está dañada, puedes reparar todas las tablas de tu base de datos con un solo comando. Es más eficiente. Escribe esto:

    REPAIR TABLE `ps_product`, `ps_customer`, `ps_orders`, `ps_category`, `ps_address`, `ps_cart`, `ps_configuration`, `ps_connections`, `ps_connections_source`, `ps_contact`, `ps_currency`, `ps_customer_group`, `ps_customer_message`, `ps_customer_thread`, `ps_customization`, `ps_customization_field`, `ps_date_range`, `ps_delivery`, `ps_employee`, `ps_feature`, `ps_feature_product`, `ps_feature_value`, `ps_group`, `ps_group_reduction`, `ps_guest`, `ps_homeslider`, `ps_homeslider_slides`, `ps_image`, `ps_image_shop`, `ps_image_type`, `ps_lang`, `ps_linksmenutop`, `ps_manufacturer`, `ps_memcached_servers`, `ps_message`, `ps_message_readed`, `ps_meta`, `ps_module`, `ps_module_access`, `ps_module_country`, `ps_module_currency`, `ps_module_group`, `ps_module_preference`, `ps_module_shop`, `ps_order_carrier`, `ps_order_cart_rule`, `ps_order_detail`, `ps_order_history`, `ps_order_invoice`, `ps_order_invoice_payment`, `ps_order_message`, `ps_order_return`, `ps_order_return_detail`, `ps_order_slip`, `ps_order_slip_detail`, `ps_order_state`, `ps_orders`, `ps_pack`, `ps_page`, `ps_page_type`, `ps_pagenotfound`, `ps_product`, `ps_product_attachment`, `ps_product_attribute`, `ps_product_attribute_combination`, `ps_product_attribute_image`, `ps_product_carrier`, `ps_product_comment`, `ps_product_comment_criterion`, `ps_product_comment_criterion_category`, `ps_product_comment_criterion_product`, `ps_product_comment_criterion_value`, `ps_product_comment_grade`, `ps_product_comment_report`, `ps_product_comment_usefulness`, `ps_product_country_tax`, `ps_product_download`, `ps_product_group_reduction_cache`, `ps_product_lang`, `ps_product_sale`, `ps_product_shop`, `ps_product_supplier`, `ps_product_tag`, `ps_profile`, `ps_quick_access`, `ps_range_price`, `ps_range_weight`, `ps_referrer`, `ps_referrer_cache`, `ps_referrer_shop`, `ps_request_sql`, `ps_required_field`, `ps_risk`, `ps_role`, `ps_scene`, `ps_scene_category`, `ps_scene_products`, `ps_search_engine`, `ps_search_index`, `ps_search_word`, `ps_specific_price`, `ps_specific_price_rule`, `ps_specific_price_rule_condition`, `ps_specific_price_rule_condition_group`, `ps_state`, `ps_stock`, `ps_stock_available`, `ps_stock_movement`, `ps_stock_movement_reason`, `ps_store`, `ps_supplier`, `ps_supplier_lang`, `ps_tab`, `ps_tab_advice`, `ps_tab_lang`, `ps_tab_module_preference`, `ps_tag`, `ps_tag_count`, `ps_tax`, `ps_tax_rule`, `ps_tax_rules_group`, `ps_timezone`, `ps_zone`;
    

    [INFO] Este comando asume que el prefijo de tus tablas es ps_. Si tu PrestaShop usa otro prefijo (por ejemplo, prestashop_), cámbialo en el comando. Puedes ver el prefijo mirando los nombres de las tablas en la lista de la izquierda.

  3. Ejecuta el comando. Haz clic en el botón "Continuar" (o el icono de "Ejecutar") que está en la parte inferior derecha.

Verás una pantalla de resultados similar a la del método anterior. Busca los mensajes de "ok".

Método 3: Verificar y reparar con el comando CHECK TABLE

Este método es un poco más avanzado, pero a veces es necesario si la reparación directa falla.

Paso a paso:

  1. Ve a la pestaña "SQL" de nuevo.

  2. Escribe el comando de verificación. Primero, verifica el estado de las tablas:

    CHECK TABLE `tu_tabla`;
    

    O para todas las tablas (con el prefijo ps_):

    CHECK TABLE `ps_product`, `ps_customer`, `ps_orders`; -- (y así sucesivamente con todas las tablas)
    

    Esto te dirá si las tablas están "OK" o si tienen errores como "Corrupt".

  3. Si ves "Corrupt", ejecuta la reparación. Si el comando CHECK te muestra tablas corruptas, entonces ejecuta el comando REPAIR del método 2 para esas tablas específicas.

¿Qué hago si nada de esto funciona?

Si después de intentar los tres métodos sigues teniendo problemas, no te desesperes. Aún hay opciones.

Opción 1: Restaurar una copia de seguridad

Esta es la solución más segura y rápida si tienes una copia de seguridad reciente de tu base de datos.

  1. Ve a la sección "Bases de Datos" de cPanel y busca la opción "phpMyAdmin".
  2. Selecciona tu base de datos en el panel izquierdo.
  3. Ve a la pestaña "Importar" en la parte superior.
  4. Haz clic en "Seleccionar archivo" y elige el archivo SQL de tu copia de seguridad.
  5. Haz clic en "Continuar". phpMyAdmin importará la copia de seguridad y sobrescribirá la base de datos actual.

[WARNING] ¡Importante! Al restaurar una copia de seguridad, perderás todos los cambios realizados desde que se hizo esa copia (pedidos nuevos, productos añadidos, etc.). Asegúrate de tener una copia de seguridad muy reciente.

Opción 2: Contactar con el soporte técnico de tu hosting

Si no tienes copia de seguridad o los pasos anteriores te parecen demasiado técnicos, contacta con el soporte de tu proveedor de hosting. Ellos tienen herramientas más potentes y pueden reparar la base de datos por ti. Diles que necesitas reparar base datos PrestaShop desde cPanel y que ya has intentado los métodos básicos.

Previniendo futuros problemas de base de datos

Más vale prevenir que curar. Aquí tienes algunos consejos para evitar que esto vuelva a pasar:

  • Haz copias de seguridad periódicas. Configura tu hosting o usa un módulo de PrestaShop para hacer copias de seguridad automáticas de la base de datos (a diario o semanalmente).
  • Mantén PrestaShop, temas y módulos actualizados. Las actualizaciones suelen incluir correcciones de errores que pueden prevenir problemas de base de datos.
  • No instales módulos de fuentes no confiables. Un módulo mal codificado es una de las principales causas de corrupción.
  • Revisa el espacio en disco de tu servidor. Asegúrate de que siempre haya espacio libre suficiente.
  • Usa un hosting de calidad. Un buen hosting tiene servidores estables y con protección contra cortes de energía.

Preguntas Frecuentes (FAQ)

¿Qué es phpMyAdmin?

phpMyAdmin es una herramienta web gratuita que te permite administrar bases de datos MySQL de forma gráfica, sin necesidad de saber comandos SQL. Está disponible en la mayoría de los paneles de control como cPanel.

¿Perderé datos al reparar la base de datos?

No, el comando REPAIR TABLE solo corrige la estructura de las tablas, no borra datos. Sin embargo, siempre es recomendable hacer una copia de seguridad antes de cualquier operación.

¿Puedo usar estos métodos si mi hosting usa Syspanel?

Sí, el proceso es el mismo. Accede a Syspanel a través de tudominio.com:2106, busca la sección de bases de datos y luego haz clic en "phpMyAdmin". Una vez dentro, sigue los mismos pasos.

¿Qué hago si el error persiste después de reparar?

Prueba a restaurar una copia de seguridad. Si no tienes, contacta con el soporte técnico de tu hosting. También puedes intentar desactivar todos los módulos de PrestaShop (renombrando la carpeta /modules a /modules_old mediante FTP) para ver si el problema es causado por un módulo.

¿El error "Table doesn't exist" significa que perdí datos?

No necesariamente. A veces el error es porque la tabla está corrupta y no se puede leer. Repararla suele solucionarlo. Si el error persiste, podría ser que la tabla haya sido borrada accidentalmente, y necesitarías restaurar una copia de seguridad.

Conclusión

Reparar base datos PrestaShop desde cPanel usando phpMyAdmin es un proceso que, aunque suene técnico, es bastante sencillo si sigues los pasos correctos. Lo más importante es mantener la calma y actuar con método. Empieza siempre por la opción más simple (reparar tablas desde el menú) y, si no funciona, pasa a los comandos SQL.

Recuerda que la prevención es tu mejor aliada. Las copias de seguridad periódicas y un mantenimiento regular de tu tienda te ahorrarán muchos dolores de cabeza. Y si en algún momento te sientes perdido, no dudes en pedir ayuda a tu proveedor de hosting o a un profesional.

Espero que esta guía te haya sido de gran ayuda. ¡Ahora ve y repara esa base de datos! Tu tienda PrestaShop te lo agradecerá.

¿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