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

Guía para solucionar el error 'No se puede conectar a la base de datos' en PrestaShop

Actualizado el 7 de diciembre de 2025

¡Hola! Soy tu técnico de soporte amigable. ¿Te has encontrado con el temido mensaje "No se puede conectar a la base de datos" en tu PrestaShop? No te preocupes, es uno de los errores más comunes y, por suerte, también de los más fáciles de solucionar si sabes por dónde empezar.

En esta guía completa, te explicaré paso a paso cómo diagnosticar y solucionar error base datos en PrestaShop. Vamos a desglosar las causas más frecuentes, desde un simple cambio de contraseña hasta problemas de configuración en tu servidor. Sigue leyendo y recuperarás tu tienda online en pocos minutos.


¿Qué significa realmente este error?

Cuando ves "No se puede conectar a la base de datos", tu tienda PrestaShop está intentando comunicarse con el motor de base de datos (normalmente MySQL o MariaDB), pero algo falla en el camino. Puede ser por:

  • Credenciales incorrectas (usuario, contraseña, nombre de base de datos).
  • El servidor de base de datos está caído o no responde.
  • Problemas de permisos en los archivos de configuración.
  • Un cambio reciente en tu hosting (migración, actualización, etc.).

No entres en pánico. Vamos a revisar cada punto.


Paso 1: Localiza el archivo de configuración parameters.php

El primer lugar donde debes mirar es el archivo que guarda las credenciales de tu conexión DB PrestaShop. Este archivo se llama parameters.php y se encuentra en la carpeta app/config/ de tu instalación de PrestaShop.

¿Cómo acceder a él?

  1. Conéctate a tu hosting mediante FTP (FileZilla, Cyberduck) o al administrador de archivos de tu panel de control (cPanel, Syspanel, etc.).
  2. Navega hasta la raíz de tu tienda (donde están carpetas como admin, modules, themes).
  3. Abre la carpeta app y luego config.
  4. Busca el archivo parameters.php. Si no lo ves, asegúrate de que los archivos ocultos sean visibles.

[WARNING] Nunca edites este archivo directamente desde el navegador web. Descárgalo a tu ordenador, edítalo con un editor de texto plano (como Notepad++ o Sublime Text) y luego súbelo de nuevo.


Paso 2: Verifica las credenciales de la base de datos

Abre el archivo parameters.php con tu editor. Busca una sección similar a esta:

'database_host' => 'localhost',
'database_port' => '',
'database_name' => 'nombre_de_tu_bd',
'database_user' => 'usuario_de_la_bd',
'database_password' => 'contraseña_de_la_bd',

¿Qué debes comprobar?

  • database_host: Normalmente es localhost, pero si tu base de datos está en un servidor externo, aquí debe ir la IP o el nombre del servidor (ej: mysql.midominio.com).
  • database_port: Déjalo vacío a menos que tu hosting use un puerto diferente (como 3307). El estándar es 3306.
  • database_name: Asegúrate de que el nombre coincide exactamente con el que te proporcionó tu hosting.
  • database_user: El usuario debe tener todos los permisos sobre la base de datos.
  • database_password: Este es el punto más común de error. Si cambiaste la contraseña recientemente, actualízala aquí.

[TIP] Si no recuerdas tus credenciales, puedes encontrarlas en el panel de control de tu hosting. Por ejemplo, en Syspanel (puerto 2106), busca la sección "Base de Datos" o "MySQL". Allí verás el nombre de la BD, usuario y podrás cambiar la contraseña.

Si todo parece correcto, pasa al siguiente paso.


Paso 3: Comprueba que el servidor de base de datos esté funcionando

A veces el problema no está en tu configuración, sino en el propio servidor de bases de datos.

¿Cómo verificarlo?

  1. Accede a tu panel de hosting (cPanel, Syspanel en puerto 2106, Plesk, etc.).
  2. Busca la sección de "Base de Datos" o "MySQL".
  3. Deberías ver un indicador de estado: "En ejecución", "Activo", etc. Si está detenido, reinícialo desde el mismo panel.

Si no tienes acceso a esa opción, contacta con tu proveedor de hosting y pregunta si el servicio MySQL/MariaDB está funcionando correctamente.

[INFO] En Syspanel, puedes ir a "Servicios" y ver el estado de MySQL. Si está en rojo, haz clic en "Reiniciar".


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

Aunque el usuario y contraseña sean correctos, si el usuario no tiene permisos suficientes sobre la base de datos, PrestaShop no podrá conectarse.

¿Cómo solucionarlo?

  1. Desde tu panel de hosting, entra al gestor de bases de datos (phpMyAdmin suele estar disponible).
  2. Selecciona tu base de datos.
  3. Ve a la pestaña "Privilegios" o "Usuarios".
  4. Asegúrate de que el usuario tiene todos los privilegios marcados (SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, etc.). Si no es así, edítalo y concede todos.

En Syspanel, puedes hacerlo desde "Base de Datos" -> "Usuarios" -> editar el usuario y marcar "Todos los privilegios".


Paso 5: Comprueba la conexión con un script simple

Para asegurarte de que el problema no es de PrestaShop, puedes probar la conexión directamente con un pequeño script PHP.

  1. Crea un archivo llamado test_db.php en la raíz de tu tienda.
  2. Pega este código (cambiando los datos por los tuyos):
<?php
$host = 'localhost';
$user = 'tu_usuario';
$pass = 'tu_contraseña';
$db = 'tu_base_de_datos';

$conn = new mysqli($host, $user, $pass, $db);
if ($conn->connect_error) {
    die("Error de conexión: " . $conn->connect_error);
} else {
    echo "Conexión exitosa a la base de datos.";
}
$conn->close();
?>
  1. Guarda el archivo y accede a él desde tu navegador: tudominio.com/test_db.php.
  • Si ves "Conexión exitosa", el problema está en PrestaShop (archivos corruptos, caché, etc.).
  • Si ves un error, anótalo. Por ejemplo, "Access denied for user" indica credenciales incorrectas, "Unknown database" indica que el nombre de la BD está mal.

[WARNING] Una vez termines, borra este archivo por seguridad. No dejes archivos de prueba en producción.


Paso 6: Revisa la configuración del servidor (puertos y firewall)

A veces el firewall de tu hosting bloquea las conexiones a la base de datos, especialmente si usas un servidor externo.

¿Qué hacer?

  • Si tu base de datos está en un servidor diferente al de tu web, asegúrate de que el puerto 3306 (o el que uses) esté abierto en el firewall.
  • En Syspanel, puedes revisar las reglas de firewall en "Seguridad" -> "Firewall". Asegúrate de que la IP de tu web tenga acceso.

Si usas un hosting compartido, normalmente no necesitas hacer nada, pero si tienes un VPS o dedicado, verifica las reglas de iptables o el firewall del panel.


Paso 7: Limpia la caché de PrestaShop

A veces, PrestaShop guarda en caché configuraciones antiguas. Después de corregir las credenciales, la caché puede seguir usando las viejas.

¿Cómo limpiarla?

  1. Conéctate por FTP y elimina manualmente todo el contenido de la carpeta var/cache/ (dentro de la raíz de PrestaShop). No borres la carpeta, solo su contenido.
  2. También puedes eliminar el archivo config/defines.inc.php (no te preocupes, PrestaShop lo regenerará).
  3. Si tienes acceso al panel de administración (aunque esté caído), ve a "Parámetros de la tienda" -> "Rendimiento" y haz clic en "Limpiar caché".

[TIP] Si no puedes acceder al panel, la eliminación manual por FTP es suficiente.


Paso 8: Reconstruye el archivo parameters.php desde cero

Si nada funciona, es posible que el archivo parameters.php esté corrupto. Puedes regenerarlo.

Método manual:

  1. Descarga una copia limpia de PrestaShop de la misma versión que tengas.
  2. Extrae el archivo app/config/parameters.php de esa copia.
  3. Edítalo con tus credenciales correctas (como vimos en el paso 2).
  4. Súbelo a tu servidor, sobrescribiendo el existente.

Método automático (si tienes acceso al instalador):

  1. Renombra el archivo parameters.php actual a parameters_old.php (por si acaso).
  2. Accede a tudominio.com/install/ (si existe la carpeta). Si no, sube una copia limpia de la carpeta install de tu versión de PrestaShop.
  3. Sigue el proceso de instalación, pero cuando te pida la base de datos, selecciona "No, quiero usar una base de datos existente" e ingresa los datos correctos.
  4. Al finalizar, PrestaShop regenerará el archivo parameters.php.

[WARNING] Después de esto, borra la carpeta install/ por seguridad.


Paso 9: Verifica la versión de PHP y MySQL

PrestaShop es exigente con las versiones. Si tu hosting actualizó PHP o MySQL, puede haber incompatibilidades.

Requisitos típicos (versión 1.7 y 8.x):

  • PHP: 7.1 a 8.1 (recomendado 7.4 o 8.0).
  • MySQL: 5.6 o superior, o MariaDB 10.1 o superior.

¿Cómo comprobarlo?

  • En tu panel de hosting, busca "Versión de PHP" o "Selector de PHP". Cambia a una compatible.
  • En Syspanel, ve a "Configuración" -> "PHP" y elige la versión.

Si cambiaste la versión, prueba de nuevo la conexión.


Paso 10: Contacta con tu soporte técnico

Si después de todos estos pasos el error persiste, es hora de pedir ayuda profesional. Proporciona a tu soporte:

  • El mensaje de error exacto.
  • Captura de pantalla del script de prueba (paso 5).
  • Tu archivo parameters.php (sin contraseña real, cámbiala por "xxxx").
  • El resultado de cualquier cambio que hayas hecho.

[INFO] Recuerda que en Syspanel (puerto 2106) tienes acceso a tickets de soporte. Abre uno con toda la información.


FAQ: Preguntas frecuentes sobre el error de base de datos en PrestaShop

1. ¿Por qué aparece este error después de una actualización de PrestaShop?

Las actualizaciones pueden modificar el archivo parameters.php o cambiar la estructura de la base de datos. A veces, los módulos incompatibles también lo causan. Prueba a desactivar módulos desde FTP renombrando la carpeta modules (por ejemplo, a modules_old).

2. ¿Puedo solucionarlo sin acceso al panel de administración?

Sí, todo lo que necesitas es acceso FTP y a tu panel de hosting. Los pasos 1 al 7 se pueden hacer sin entrar al admin.

3. ¿El error puede deberse a un ataque?

Es posible. Si alguien cambió tu contraseña de base de datos, el error aparecerá. Cambia la contraseña desde tu panel de hosting y actualiza parameters.php. Además, revisa si hay archivos extraños en tu servidor.

4. ¿Qué hago si mi base de datos está corrupta?

Si el error dice "Table 'ps_xxx' doesn't exist", puede que la base de datos esté dañada. Usa phpMyAdmin para reparar tablas (selecciona todas y elige "Reparar tabla"). Si no funciona, restaura desde una copia de seguridad.

5. ¿Por qué en Syspanel el puerto es 2106?

Syspanel (anteriormente HestiaCP) usa el puerto 2106 para su interfaz web de administración. Es un puerto seguro y personalizado. Asegúrate de acceder así: https://tudominio.com:2106.


Conclusión

El error "No se puede conectar a la base de datos" en PrestaShop es frustrante, pero casi siempre tiene una solución sencilla. Recuerda:

  1. Revisa el archivo parameters.php.
  2. Verifica credenciales y permisos.
  3. Comprueba el servidor de base de datos.
  4. Limpia la caché.
  5. Si todo falla, reconstruye el archivo o contacta a soporte.

Con esta guía, espero que hayas podido solucionar error base datos y tu tienda vuelva a funcionar. Si te quedó alguna duda, déjala en los comentarios (si los hay) o contacta con tu proveedor de hosting.

¡Buena suerte y a vender! 🚀

¿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