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

Guía para solucionar el error de conexión a la base de datos en PrestaShop

Actualizado el 5 de enero de 2026

¿Tu tienda PrestaShop ha dejado de funcionar y ves un mensaje de error sobre la base de datos? No te preocupes, es uno de los problemas más comunes y, por suerte, casi siempre tiene solución. Esta guía te explicará paso a paso cómo diagnosticar y arreglar el error base de datos PrestaShop, desde lo más sencillo hasta soluciones más avanzadas.

¿Por qué ocurre una conexión fallida a la base de datos?

Antes de ponernos manos a la obra, es importante entender las causas más habituales. El error de conexión fallida suele deberse a:

  • Credenciales incorrectas: El usuario, la contraseña o el nombre de la base de datos han cambiado o están mal escritos en el archivo de configuración de PrestaShop.
  • Servidor de base de datos caído: El servicio MySQL/MariaDB no está funcionando en tu servidor.
  • Sobrecarga del servidor: Demasiadas conexiones simultáneas o un pico de tráfico pueden saturar la base de datos.
  • Corrupción de tablas: Un corte de luz, una actualización fallida o un plugin conflictivo pueden dañar las tablas de la base de datos.
  • Cambio de servidor o proveedor: Si has migrado recientemente tu tienda, es posible que los datos de conexión no se hayan actualizado correctamente.
  • Problemas de permisos: El usuario de la base de datos no tiene los permisos necesarios para acceder a ella.

Paso 1: Verifica el estado del servidor (lo más rápido)

Antes de tocar archivos, comprueba si el problema es general. Si tu tienda muestra el error, pero otras páginas web en el mismo hosting funcionan, el problema es específico de PrestaShop. Si nada funciona, contacta con tu proveedor de hosting.

[TIP] Si usas un panel de control como Syspanel (accesible por el puerto 2106), busca la sección "Servicios" o "Estado del servidor". Allí podrás ver si MySQL está en verde (funcionando) o rojo (detenido).

Paso 2: Localiza y edita el archivo de configuración settings.inc.php

Este es el archivo que contiene las credenciales de tu base de datos. Es el primer lugar donde debes buscar.

¿Dónde está el archivo?

El archivo se llama settings.inc.php y se encuentra en la carpeta config de tu instalación de PrestaShop. La ruta típica es: /public_html/config/settings.inc.php o /tu-dominio/config/settings.inc.php.

¿Cómo acceder a él?

  1. Usando un gestor de archivos (File Manager): Desde el panel de control de tu hosting (cPanel, Syspanel, etc.) busca la opción "Administrador de archivos" o "File Manager".
  2. Usando FTP: Conéctate a tu servidor con un cliente FTP como FileZilla.

¿Qué debo buscar y corregir?

Abre el archivo settings.inc.php con un editor de texto (nunca con Word o similar). Busca estas líneas:

define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'nombre_de_tu_base_de_datos');
define('_DB_USER_', 'usuario_de_tu_base_de_datos');
define('_DB_PASSWD_', 'contraseña_de_tu_base_de_datos');

Verifica que:

  • _DB_SERVER_: Normalmente es localhost, pero si tu base de datos está en un servidor remoto, debe tener la IP o el nombre del servidor.
  • _DB_NAME_: El nombre exacto de tu base de datos (suele tener un prefijo como tuusuario_nombrebd).
  • _DB_USER_: El nombre del usuario que tiene acceso a la base de datos.
  • _DB_PASSWD_: La contraseña correcta de ese usuario.

[WARNING] Si cambias la contraseña aquí, asegúrate de que también la hayas cambiado en el panel de control de tu base de datos (phpMyAdmin, por ejemplo). Si no coinciden, el error persistirá.

Paso 3: Reinicia el servicio de base de datos

A veces, el servicio MySQL se cuelga o se satura. Reiniciarlo suele resolver el problema de inmediato.

Si tienes acceso a Syspanel (puerto 2106):

  1. Inicia sesión en Syspanel.
  2. Busca la sección "Servicios" o "Estado del servidor".
  3. Localiza el servicio "MySQL" o "MariaDB".
  4. Haz clic en el botón "Reiniciar" o "Restart".

Si tienes acceso a SSH (terminal):

Si tu proveedor te da acceso root, puedes ejecutar (con cuidado):

sudo systemctl restart mysql
# o
sudo systemctl restart mariadb

Paso 4: Repara las tablas de la base de datos

Si los pasos anteriores no funcionan, es posible que algunas tablas estén dañadas. Puedes repararlas desde phpMyAdmin.

¿Cómo acceder a phpMyAdmin?

  1. Desde el panel de control de tu hosting, busca el enlace a phpMyAdmin (normalmente en la sección "Bases de datos").
  2. Selecciona la base de datos de tu PrestaShop (la misma que aparece en settings.inc.php).
  3. Marca todas las tablas (puedes usar el checkbox superior).
  4. En el menú desplegable "Con seleccionados", elige "Reparar tabla".

[INFO] Este proceso puede tardar unos segundos o minutos, dependiendo del tamaño de la base de datos. No cierres la ventana hasta que termine.

Paso 5: Aumenta el límite de conexiones (para usuarios avanzados)

Si el error aparece en momentos de mucho tráfico, puede deberse a que el servidor está limitando las conexiones simultáneas.

Temporalmente desde phpMyAdmin:

Ejecuta esta consulta SQL (reemplaza 150 por el número que necesites):

SET GLOBAL max_connections = 150;

[WARNING] Este cambio es temporal. Para hacerlo permanente, debes modificar el archivo de configuración de MySQL (my.cnf o my.ini), lo cual requiere acceso root al servidor. Si no sabes cómo hacerlo, pide ayuda a tu soporte técnico.

Paso 6: Verifica los permisos del usuario de la base de datos

A veces, al restaurar una copia de seguridad o migrar, los permisos del usuario se pierden.

Desde phpMyAdmin o la herramienta de tu hosting:

  1. Ve a la sección "Usuarios" de tu base de datos.
  2. Busca el usuario que usa PrestaShop (el mismo de settings.inc.php).
  3. Asegúrate de que tenga todos los privilegios sobre la base de datos (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.). Lo más seguro es marcar "Todos los privilegios".

Preguntas Frecuentes (FAQ)

¿Qué hago si después de todo esto el error sigue apareciendo?

Puede ser un problema más profundo, como un plugin conflictivo o una versión de PHP incompatible. Prueba a:

  • Deshabilitar todos los módulos: Renombra la carpeta /modules a /modules_old (esto los desactivará todos). Si la tienda funciona, reactívalos uno por uno hasta encontrar el culpable.
  • Verificar la versión de PHP: PrestaShop 1.6 funciona mejor con PHP 5.6 o 7.0, y PrestaShop 1.7 con PHP 7.1 o superior. Desde tu panel de hosting (Syspanel, cPanel) puedes cambiar la versión de PHP.

¿Puedo perder datos si reparo las tablas?

No, la reparación de tablas no elimina datos. Simplemente intenta corregir errores de estructura. Siempre es recomendable hacer una copia de seguridad antes, por si acaso.

¿El error "conexión fallida" puede deberse a un ataque?

Sí, es posible. Un ataque DDoS o un intento de fuerza bruta puede saturar la base de datos. Si sospechas de un ataque, contacta con tu proveedor de hosting inmediatamente.

¿Cómo hago una copia de seguridad de la base de datos antes de hacer cambios?

Desde phpMyAdmin:

  1. Selecciona tu base de datos.
  2. Haz clic en la pestaña "Exportar".
  3. Elige el método "Rápido" y formato SQL.
  4. Haz clic en "Continuar" y se descargará un archivo .sql. Guárdalo en un lugar seguro.

Resumen final

El error base de datos PrestaShop puede ser frustrante, pero siguiendo esta guía paso a paso podrás resolverlo en la mayoría de los casos. Recuerda:

  1. Empieza por lo simple: Verifica el estado del servidor y las credenciales en settings.inc.php.
  2. Reinicia el servicio de MySQL si es necesario.
  3. Repara las tablas desde phpMyAdmin si hay daños.
  4. Aumenta el límite de conexiones si es un problema de saturación.
  5. Revisa los permisos del usuario de la base de datos.

Si nada funciona, no dudes en contactar con el soporte técnico de tu hosting. Ellos tienen acceso a herramientas más avanzadas y podrán ayudarte a identificar la causa raíz. ¡No te rindas, tu tienda puede volver a funcionar en minutos!

¿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