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

Principales errores de conexión a base de datos en PrestaShop

Actualizado el 19 de octubre de 2025

Cuando tu tienda PrestaShop deja de funcionar y solo ves una pantalla en blanco o un mensaje de error crítico, lo más probable es que el problema esté relacionado con la base de datos. La conexión entre PrestaShop y su base de datos es el corazón de tu tienda: sin ella, no hay productos, clientes ni pedidos.

En este artículo, vamos a desglosar los principales errores de conexión a base de datos en PrestaShop, explicando por qué ocurren y, lo más importante, cómo solucionarlos paso a paso. Todo explicado de forma sencilla, como si estuvieras hablando con tu técnico de confianza. Incluiremos trucos para usar cPanel y herramientas como Syspanel (antes HestiaCP), para que puedas resolverlo tú mismo.


¿Por qué PrestaShop pierde la conexión con la base de datos?

Antes de lanzarnos a las soluciones, es bueno entender qué significa realmente “error de conexión a base de datos”. Tu tienda PrestaShop guarda toda su información (productos, clientes, pedidos, configuración) en una base de datos MySQL o MariaDB. Cuando visitas tu web, PrestaShop intenta “hablar” con esa base de datos. Si algo falla en ese diálogo, obtienes errores como:

  • “Error de conexión a la base de datos” (en pantalla blanca).
  • “Link to database cannot be established”.
  • “PrestaShop database connection failed”.
  • “The website encountered an unexpected error. Please try again later.”

Estos errores pueden aparecer de repente, incluso si antes la tienda funcionaba perfectamente. Las causas suelen ser sencillas de identificar.


1. Error de credenciales incorrectas en el archivo settings.inc.php

Este es, con diferencia, el error más común. PrestaShop guarda los datos de acceso a tu base de datos en un archivo llamado settings.inc.php. Si cambias la contraseña de la base de datos, mueves el hosting o restauras una copia de seguridad, es muy fácil que las credenciales ya no coincidan.

¿Cómo solucionarlo desde cPanel o Syspanel?

Paso 1: Accede a tu panel de control. Si usas cPanel, busca “Administrador de archivos”. Si usas Syspanel (puerto 2106), ve a “Archivos” > “Administrador de archivos”.

Paso 2: Navega hasta la carpeta config/ de tu instalación de PrestaShop. Normalmente está en public_html/config/ o www/config/.

Paso 3: Busca el archivo settings.inc.php. Haz clic derecho y selecciona “Editar” (o “Edit”).

Paso 4: Verás algo como esto:

define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'tu_usuario_tienda');
define('_DB_USER_', 'tu_usuario_admin');
define('_DB_PASSWD_', 'contraseña_antigua');
define('_DB_PREFIX_', 'ps_');

Paso 5: Comprueba que los valores coincidan exactamente con los datos de tu base de datos actual. Si no sabes cuáles son tus credenciales, puedes crearlas de nuevo desde cPanel (sección “Bases de Datos MySQL”) o desde Syspanel (puerto 2106, sección “Bases de datos”).

Paso 6: Guarda los cambios y recarga tu tienda.

[WARNING] Ten mucho cuidado al editar este archivo. Un solo carácter mal puesto (una coma, una comilla) puede romper toda la tienda. Siempre haz una copia de seguridad antes.


2. El servidor de base de datos no responde (host caído o sobrecargado)

A veces el problema no está en tus credenciales, sino en que el servidor donde está alojada la base de datos está caído, sobrecargado o simplemente no responde. Esto puede pasar si tu hosting tiene problemas o si el servidor MySQL se ha detenido.

¿Cómo verificarlo?

Desde cPanel:

  • Ve a “MySQL Databases” y busca un botón que diga “Repair Database” (Reparar base de datos). También puedes ver el estado de MySQL en la sección “Server Status”.

Desde Syspanel (puerto 2106):

  • Ve a “Servicios” y busca “MySQL” o “MariaDB”. Verás si está en ejecución (Running) o detenido (Stopped). Si está detenido, haz clic en “Start”.

Solución temporal: Si tu hosting es compartido, a veces el servidor se satura y reiniciarlo ayuda. Puedes solicitar a tu proveedor de hosting que reinicie el servicio MySQL. Si tienes acceso root (VPS o dedicado), desde la terminal ejecuta:

sudo systemctl restart mysql

O si usas MariaDB:

sudo systemctl restart mariadb

[TIP] Si este error se repite, considera migrar a un hosting con mejor rendimiento o a un servidor dedicado para bases de datos.


3. Problemas con el prefijo de tabla (table prefix)

PrestaShop usa un prefijo (por defecto ps_) para nombrar sus tablas. Si por error modificaste este prefijo en el archivo settings.inc.php o importaste una base de datos con un prefijo diferente, la conexión fallará.

¿Cómo solucionarlo?

Paso 1: Accede a tu base de datos desde phpMyAdmin (en cPanel o Syspanel, puerto 2106, sección “Bases de datos” > “phpMyAdmin”).

Paso 2: Selecciona la base de datos de tu tienda. Mira los nombres de las tablas. Deberían verse así: ps_customer, ps_orders, ps_product, etc.

Paso 3: Compara con el valor de _DB_PREFIX_ en tu archivo settings.inc.php. Si no coinciden, cambia el prefijo en el archivo de configuración para que sea exactamente el que ves en las tablas.

Ejemplo: Si tus tablas se llaman shop_customer, tu prefijo es shop_. Entonces en settings.inc.php debe poner:

define('_DB_PREFIX_', 'shop_');

[INFO] Si no recuerdas cuál era tu prefijo original, puedes verlo en la tabla ps_configuration (o tu_prefijo_configuration) en la columna name con el valor PS_DB_PREFIX. O simplemente mira cualquier tabla.


4. Permisos incorrectos en la base de datos

Otro error clásico es que el usuario de la base de datos no tenga permisos suficientes. Aunque las credenciales sean correctas, si el usuario no puede leer/escribir en la base de datos, PrestaShop no podrá conectarse.

¿Cómo verificarlo y solucionarlo?

Desde cPanel:

  • Ve a “MySQL Databases”. Busca la sección “Add User to Database”. Asegúrate de que tu usuario esté añadido a la base de datos correcta.
  • Marca “ALL PRIVILEGES” (Todos los privilegios) y haz clic en “Make Changes”.

Desde Syspanel (puerto 2106):

  • Ve a “Bases de datos” > “Usuarios”. Edita el usuario y asegúrate de que tenga todos los permisos sobre la base de datos de tu tienda.

[WARNING] No uses el usuario root para tu tienda. Crea un usuario específico y asígnale solo los permisos necesarios. Esto es más seguro.


5. Archivos de configuración corruptos o faltantes

A veces el archivo settings.inc.php se daña (por ejemplo, tras una actualización fallida o un ataque). En ese caso, PrestaShop no puede leer las credenciales.

¿Cómo solucionarlo?

Opción 1: Restaurar desde una copia de seguridad.

  • Si tienes una copia de seguridad reciente de tu tienda, restaura el archivo config/settings.inc.php desde esa copia.

Opción 2: Generar un nuevo archivo de configuración.

  • Si no tienes copia, puedes crear uno nuevo con las credenciales actuales. Simplemente edita el archivo (como vimos en el punto 1) y escribe los valores correctos. Si no sabes las credenciales, crea una nueva base de datos y usuario desde tu panel.

[TIP] Siempre ten una copia de seguridad de tu archivo settings.inc.php en un lugar seguro. Es el archivo más importante de tu tienda después de la base de datos.


6. Error de “Too many connections” (Demasiadas conexiones)

Este error ocurre cuando el servidor MySQL alcanza el límite de conexiones simultáneas. Es común en hosting compartido o cuando tienes muchos procesos abiertos.

Síntomas:

  • Aparece el mensaje “Too many connections” en el log de errores.
  • La tienda se vuelve muy lenta y luego da error de conexión.

¿Cómo solucionarlo?

Solución inmediata:

  • Desde cPanel o Syspanel, reinicia el servicio MySQL (como explicamos en el punto 2). Esto libera todas las conexiones.

Solución a largo plazo:

  • Aumenta el límite de conexiones en el archivo de configuración de MySQL (my.cnf o my.ini). Si no tienes acceso, contacta a tu proveedor de hosting.
  • Optimiza tu tienda: desactiva módulos innecesarios, activa la caché, usa un CDN y reduce el número de consultas simultáneas.

[INFO] Un valor seguro para un sitio pequeño es max_connections = 150. Para tiendas grandes, puede necesitarse 500 o más.


7. Problemas con la versión de PHP o MySQL

PrestaShop es exigente con las versiones. Si tu hosting actualizó PHP o MySQL a una versión no compatible, la conexión puede fallar.

¿Cómo verificarlo?

  • Consulta los requisitos de PrestaShop en su web oficial. Por ejemplo, PrestaShop 1.7 requiere PHP 7.1 a 7.4 y MySQL 5.6+.
  • En cPanel, ve a “Select PHP Version” y asegúrate de que sea la correcta.
  • En Syspanel (puerto 2106), ve a “Servicios” > “PHP” y cambia la versión si es necesario.

[WARNING] No uses PHP 8.0 o superior con PrestaShop 1.7 a menos que tengas módulos actualizados. Puede causar errores de conexión y otros fallos.


8. Firewall o bloqueo de IP

Algunos servidores tienen firewalls que bloquean conexiones externas a la base de datos. Si tu tienda intenta conectarse a una base de datos remota (por ejemplo, en otro servidor), el firewall puede estar impidiéndolo.

¿Cómo solucionarlo?

  • Si tu base de datos está en el mismo servidor, usa localhost como _DB_SERVER_. Nunca pongas una IP externa a menos que sea necesario.
  • Si necesitas conexión remota, en cPanel ve a “Remote MySQL” y añade la IP de tu servidor web.
  • En Syspanel (puerto 2106), ve a “Bases de datos” > “Acceso remoto” y configura las IPs permitidas.

[TIP] Siempre que sea posible, mantén la base de datos y la web en el mismo servidor. Es más rápido y seguro.


Preguntas frecuentes (FAQ)

¿Por qué aparece “Error de conexión a la base de datos” después de mover mi tienda a otro hosting?

Porque las credenciales en settings.inc.php no coinciden con las del nuevo hosting. Edita el archivo con los nuevos datos.

¿Puedo solucionar el error sin perder datos?

Sí, en la mayoría de los casos. Solo estás corrigiendo la conexión, no tocando los datos. Siempre haz una copia de seguridad antes por si acaso.

¿Qué hago si no tengo acceso a cPanel ni a Syspanel?

Contacta a tu proveedor de hosting. Ellos pueden revisar el archivo settings.inc.php y reiniciar MySQL por ti.

¿El error puede deberse a un ataque informático?

Sí, un ataque puede modificar el archivo settings.inc.php o dañar la base de datos. Si sospechas, cambia todas las contraseñas y restaura desde una copia de seguridad limpia.


Conclusión y recomendaciones finales

Los errores de conexión a base de datos en PrestaShop son frustrantes, pero casi siempre tienen solución. La clave está en mantener un registro de tus credenciales, hacer copias de seguridad periódicas y tener acceso a tu panel de control (cPanel o Syspanel en puerto 2106).

Si sigues los pasos de esta guía, podrás solucionar la mayoría de los problemas en menos de 15 minutos. Y si el error persiste, no dudes en contactar a tu hosting: ellos tienen herramientas para diagnosticar el servidor MySQL.

Recuerda: la prevención es tu mejor aliada. Mantén tu PrestaShop actualizado, usa contraseñas seguras y revisa periódicamente que tu base de datos funcione correctamente.

[INFO] ¿Te ha sido útil? Comparte este artículo con otros dueños de tiendas PrestaShop. ¡Todos hemos pasado por esos errores!


¿Tienes alguna duda específica? Déjala en los comentarios y te ayudaremos a resolverla.

¿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