Cómo solucionar el error 'Table doesn't exist' en WordPress y PrestaShop
¿Qué significa el error "Table doesn't exist" y por qué aparece?
Si estás leyendo esto, probablemente te has encontrado con un mensaje de error en tu tienda online o blog que dice algo como "Table 'tu_base_de_datos.tu_tabla' doesn't exist". Este es uno de los errores más comunes en WordPress y PrestaShop, y aunque asusta al principio, tiene solución. Vamos a desgranarlo paso a paso.
Este error no significa que hayas perdido todos tus datos. Simplemente indica que el sistema está buscando una tabla (un contenedor de información) dentro de tu base de datos MySQL y no la encuentra. Las causas más habituales suelen ser:
- Una instalación incompleta de un plugin o tema.
- Un ataque malintencionado que ha borrado tablas.
- Un error durante una migración o copia de seguridad.
- Un cambio incorrecto en el prefijo de las tablas.
- Una actualización fallida del núcleo de WordPress o PrestaShop.
Cuando aparece este error, verás un mensaje como "Error establishing a database connection" o una página en blanco con el texto del error. Pero no te preocupes, vamos a arreglarlo de forma segura y sin necesidad de ser un experto en informática.
Primeros pasos: identifica el alcance del problema
Antes de lanzarte a reparar nada, necesitas saber qué tabla falta y si puedes acceder a tu panel de administración. Esto te dirá qué método de solución debes usar.
¿Puedes acceder al panel de administración?
- Si puedes entrar en /wp-admin (WordPress) o /admin (PrestaShop): Genial, tienes más opciones disponibles y podrás hacer una copia de seguridad antes de tocar nada.
- Si no puedes acceder: Necesitarás usar herramientas externas como phpMyAdmin o un cliente FTP para solucionar el problema.
¿Qué tabla es la que falta?
El mensaje de error siempre te indica el nombre de la tabla. Por ejemplo, si dice wp_options, la tabla que falta es la de opciones de WordPress. En PrestaShop, las tablas suelen empezar por ps_, como ps_orders o ps_product.
[INFO] Anota el nombre exacto de la tabla que aparece en el error. Esto será clave para los siguientes pasos.
Método 1: Reparar la tabla desde phpMyAdmin (la solución más directa)
Esta es la opción más rápida si tienes acceso a tu panel de hosting. El error Table doesn't exist a veces se debe a que la tabla está corrupta o marcada como inexistente en el sistema.
Paso 1: Accede a phpMyAdmin
Entra en el panel de control de tu hosting. Si usas Syspanel, el acceso es a través del puerto 2106 (por ejemplo, https://tu-dominio.com:2106). Busca la sección de Bases de Datos y haz clic en phpMyAdmin.
Paso 2: Selecciona tu base de datos
En el panel izquierdo de phpMyAdmin, verás una lista con todas tus bases de datos. Haz clic en la que corresponda a tu WordPress o PrestaShop. Verás todas las tablas listadas.
Paso 3: Marca la tabla problemática
Localiza la tabla que aparece en el mensaje de error. Marca la casilla que está justo al lado de su nombre. Si el error menciona varias tablas, márcalas todas.
Paso 4: Usa la opción "Reparar tabla"
En la parte inferior de la lista de tablas, hay un menú desplegable que dice "Con seleccionadas:". Ábrelo y elige la opción "Reparar tabla". A continuación, haz clic en "Continuar".
Paso 5: Verifica el resultado
phpMyAdmin ejecutará una consulta SQL que intentará reparar la estructura de la tabla. Verás una tabla de resultados con el estado de la operación. Si aparece "OK", la reparación ha funcionado.
[TIP] Este método funciona en el 80% de los casos. Es la primera opción que debes probar siempre.
Método 2: Restaurar la tabla desde una copia de seguridad
Si la reparación no funciona o la tabla simplemente no existe (no aparece en la lista), necesitas restaurarla desde una copia de seguridad. Esta es la razón por la que siempre debes tener copias de seguridad actualizadas.
Para WordPress
- Accede a tu panel de hosting y busca la sección de "Copias de seguridad" o "Backups".
- Localiza la copia más reciente anterior al error.
- Descarga solo el archivo SQL de la base de datos (suele llamarse
basededatos.sql). - Vuelve a phpMyAdmin, selecciona tu base de datos y haz clic en la pestaña "Importar".
- Sube el archivo SQL y ejecuta la importación.
[WARNING] Esta opción reemplazará las tablas actuales por las de la copia. Si has hecho cambios recientes (nuevos productos, artículos), los perderás. Pero es mejor perder unos días de cambios que tener la web rota.
Para PrestaShop
El proceso es exactamente el mismo, pero en PrestaShop las tablas son más críticas porque contienen los pedidos y los clientes. Asegúrate de que la copia de seguridad sea reciente.
Método 3: Recrear la tabla manualmente con SQL
Si no tienes copia de seguridad, todavía hay esperanza. Puedes recrear la tabla manualmente. Esto es más avanzado, pero vamos a hacerlo fácil.
¿Cómo saber qué estructura tenía la tabla?
- En WordPress: Las tablas más comunes son
wp_options,wp_posts,wp_users. Si falta una de ellas, puedes buscar en Google "estructura SQL tabla wp_options" y encontrarás el código necesario. - En PrestaShop: Es más complejo, porque las tablas tienen muchas relaciones. En este caso, te recomiendo buscar en foros oficiales de PrestaShop la estructura exacta de la tabla que falta.
Ejemplo práctico con WordPress
Si la tabla que falta es wp_options, este es el código SQL que necesitas:
CREATE TABLE wp_options (
option_id bigint(20) unsigned NOT NULL AUTO_INCREMENT,
option_name varchar(191) NOT NULL DEFAULT '',
option_value longtext NOT NULL,
autoload varchar(20) NOT NULL DEFAULT 'yes',
PRIMARY KEY (option_id),
UNIQUE KEY option_name (option_name)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
- Ve a phpMyAdmin, selecciona tu base de datos.
- Haz clic en la pestaña "SQL".
- Pega el código, sustituyendo
wp_por el prefijo que uses en tu instalación. - Ejecuta la consulta.
[WARNING] Este método solo recrea la estructura, no los datos. Después de crear la tabla, tendrás que configurar WordPress de nuevo (ajustes, menús, etc.).
Método 4: Solucionar el error en PrestaShop de forma específica
PrestaShop es más sensible a este error porque su base de datos es más compleja. Si el error prestashop error base de datos aparece, sigue estos pasos adicionales.
Comprueba el archivo de configuración
El archivo app/config/parameters.php en PrestaShop contiene la información de conexión a la base de datos. A veces, el nombre de la base de datos o el prefijo son incorrectos.
- Accede a tu hosting por FTP o mediante el administrador de archivos.
- Abre el archivo
app/config/parameters.php. - Verifica que estos valores son correctos:
database_host(normalmentelocalhost)database_namedatabase_userdatabase_prefix(suele serps_)
Usa el instalador de PrestaShop para reparar
PrestaShop tiene un modo de reparación muy útil:
- Descarga el instalador de PrestaShop desde la web oficial.
- Súbelo a la raíz de tu tienda.
- Ejecuta el instalador en tu navegador.
- En la pantalla de bienvenida, selecciona "Reparar la base de datos" (no instalar).
- Sigue los pasos y el sistema intentará reparar las tablas dañadas.
Método 5: Activar el modo de mantenimiento para trabajar con calma
Antes de hacer cualquier cambio, es recomendable activar el modo de mantenimiento. Así, si cometes un error, tus clientes no verán una web rota.
En WordPress
- Conecta por FTP a tu hosting.
- Crea un archivo llamado
.maintenanceen la carpeta raíz de WordPress. - Dentro del archivo, escribe:
<?php $upgrading = time(); ?> - Cuando termines de arreglar todo, borra este archivo.
En PrestaShop
- Ve a Parámetros avanzados > Mantenimiento en el panel de administración.
- Activa la opción "Activar el modo de mantenimiento".
- Introduce una IP (la tuya) para poder acceder mientras está en mantenimiento.
Prevención: cómo evitar que vuelva a pasar
Una vez que hayas solucionado el error, es hora de prevenir que ocurra de nuevo. Aquí tienes una lista de buenas prácticas:
- Realiza copias de seguridad automáticas: La mayoría de los hostings ofrecen copias de seguridad diarias. Actívalas.
- Actualiza con cuidado: Antes de actualizar plugins, temas o el core, haz siempre una copia de seguridad.
- Elimina plugins innecesarios: Cuantos menos plugins, menos posibilidades de conflicto.
- Usa un plugin de seguridad: Herramientas como Wordfence o iThemes Security pueden detectar ataques antes de que borren tablas.
- Monitoriza tu base de datos: Algunos plugins como WP-Optimize pueden ayudarte a mantener la base de datos sana.
Preguntas frecuentes (FAQ)
¿Qué pasa si no tengo acceso a phpMyAdmin?
Puedes pedir a tu proveedor de hosting que ejecute la reparación por ti. Si usas Syspanel, el acceso a phpMyAdmin se encuentra en el puerto 2106. Si no lo encuentras, contacta con soporte técnico.
¿Puedo perder datos si uso el comando "Reparar tabla"?
No, la opción "Reparar tabla" de MySQL solo intenta arreglar la estructura, no borra datos. Es seguro usarla.
¿Por qué aparece este error después de una migración?
Es muy común. Al migrar, el archivo SQL puede importarse de forma incompleta, o el prefijo de las tablas puede ser diferente. Revisa el archivo wp-config.php (WordPress) o parameters.php (PrestaShop) para asegurarte de que el prefijo es correcto.
¿Qué es el prefijo de una tabla?
Es el texto que va antes del nombre de cada tabla. Por ejemplo, en wp_options, el prefijo es wp_. En PrestaShop suele ser ps_. Si cambias el prefijo, todas las tablas deben actualizarse también.
[TIP] Si el error persiste después de probar todos los métodos, contacta con tu proveedor de hosting. Ellos tienen acceso directo a los servidores y pueden diagnosticar problemas de hardware o permisos que tú no puedes ver.
Conclusión final
El error Table doesn't exist puede parecer el fin del mundo, pero con paciencia y las herramientas adecuadas, se soluciona en la mayoría de los casos. Recuerda siempre: primero intenta la reparación desde phpMyAdmin, después recurre a las copias de seguridad y, como último recurso, recrea la tabla manualmente.
Lo más importante es que no entres en pánico y que actúes con calma. Sigue los pasos en orden y verás cómo tu WordPress o PrestaShop vuelve a funcionar. Y para el futuro, invierte tiempo en automatizar las copias de seguridad: es la mejor inversión que puedes hacer para la salud de tu web.
Espero que esta guía te haya sido de ayuda. Si te ha funcionado, compártela con otros usuarios que puedan estar pasando por el mismo problema. ¡Buena suerte con tu web!
