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

Cómo solucionar el error 'Cannot connect to the database' en PrestaShop con Plesk

Actualizado el 11 de septiembre de 2025

¡Hola! Si estás leyendo esto, es muy probable que hayas intentado entrar a tu tienda PrestaShop y te hayas encontrado con un mensaje bastante desagradable: "Cannot connect to the database" o, en español, "No se puede conectar a la base de datos". No te preocupes, es uno de los errores más comunes en el mundo del hosting y, en la gran mayoría de los casos, tiene una solución sencilla que puedes aplicar tú mismo sin necesidad de ser un experto.

En esta guía extensa y paso a paso, vamos a desglosar cómo solucionar el error de conexión a la base de datos en PrestaShop cuando usas Plesk como panel de control. Te explicaré desde las causas más probables hasta las soluciones más efectivas, con un lenguaje claro y directo para que puedas recuperar tu tienda online lo antes posible.

Vamos a ello.

¿Por qué aparece el error "Cannot connect to the database"?

Antes de lanzarnos a arreglar nada, es fundamental entender qué significa este mensaje. Imagina que tu tienda PrestaShop es una tienda física. Los archivos de tu tienda (las cajas, los estantes) son el código de PrestaShop, y la base de datos (el almacén trasero donde guardas el inventario, los clientes y los pedidos) es donde reside toda la información crítica.

El error de conexión significa que tu tienda (el código) no puede llegar al almacén (la base de datos). Las razones pueden ser varias, pero las más comunes son:

  1. Credenciales incorrectas: El nombre de usuario, la contraseña o el nombre de la base de datos que PrestaShop tiene guardados en su configuración son erróneos. Esto puede pasar después de una migración, un cambio de contraseña en Plesk o una restauración de una copia de seguridad.
  2. Servidor de base de datos caído: El servicio de MySQL o MariaDB en tu servidor Plesk se ha detenido o está sobrecargado.
  3. Problemas con el archivo de configuración: El archivo parameters.php de PrestaShop, que contiene los datos de conexión, está dañado, tiene permisos incorrectos o apunta a un servidor equivocado.
  4. Cambios en los permisos de usuario: El usuario de la base de datos ha perdido los privilegios necesarios para acceder a ella.
  5. Espacio en disco lleno: Si el disco duro del servidor está lleno, los servicios de base de datos pueden fallar al intentar escribir o leer información, provocando errores de conexión.

Primeros Pasos: Diagnóstico Rápido

No te saltes esta parte. A veces la solución es mucho más simple de lo que crees.

1. Verifica si el error es solo tuyo

A veces, el problema puede ser temporal o de caché.

  • Prueba con otro navegador o en modo incógnito. Si funciona, es un problema de caché local.
  • Prueba a acceder a tu panel de administración de Plesk. Si tampoco puedes entrar a Plesk, el problema es más grave y probablemente del servidor (caído, en mantenimiento, etc.). En ese caso, contacta con tu proveedor de hosting.

2. Revisa el estado del servicio de base de datos en Plesk

Plesk tiene una herramienta para ver el estado de los servicios. Vamos a comprobarlo:

  1. Inicia sesión en tu panel de Plesk.
  2. Ve a la sección "Herramientas y Ajustes" (en el menú de la izquierda, normalmente en la parte inferior).
  3. Busca el apartado "Servidor" o "Servicios" y haz clic en "Gestión de Servicios" (o "Services Management").
  4. Busca en la lista el servicio de MySQL o MariaDB.
  5. Verifica que su estado sea "activo" o "running". Si está detenido, intenta iniciarlo con el botón correspondiente.

[INFO]: Si el servicio no se inicia o se detiene solo, anota el mensaje de error que aparece. Este dato será de gran ayuda para tu proveedor de hosting si necesitas escalar el problema.


Soluciones Paso a Paso para el Error de Conexión

Si el servicio de base de datos está activo y el problema persiste, es hora de ponerse manos a la obra con las soluciones más técnicas.

Solución 1: Corregir las Credenciales en el Archivo parameters.php (La más común)

Este archivo es el "corazón" de la configuración de tu tienda. Contiene el nombre de la base de datos, el usuario y la contraseña. Si estos datos no coinciden con los que hay en Plesk, tendrás este error.

¿Cómo acceder al archivo?

  1. Ve a tu panel de Plesk.
  2. En el menú de la izquierda, busca tu dominio y haz clic en "Archivos" (o "File Manager").
  3. Navega a la carpeta httpdocs (o public_html, dependiendo de la configuración).
  4. Busca la carpeta app y entra en ella.
  5. Dentro de app, busca la carpeta config.
  6. Encuentra el archivo parameters.php. Haz clic derecho sobre él y selecciona "Editar" (o "Edit in Text Editor").

¿Qué debo buscar y cambiar?

Dentro del archivo, verás un array de PHP con varios parámetros. Busca la sección que dice 'database_host', 'database_name', 'database_user' y 'database_password'.

// Ejemplo de cómo se ve la sección de la base de datos
'database_host' => 'localhost',
'database_name' => 'tu_nombre_de_bd',
'database_user' => 'tu_usuario_bd',
'database_password' => 'tu_contraseña_bd',
'database_prefix' => 'ps_',

Ahora, vamos a validar estos datos:

  1. Ve a la sección de "Bases de Datos" en Plesk (dentro de tu dominio).
  2. Ahí verás el nombre exacto de tu base de datos y el usuario asociado a ella.
  3. Compara estos valores con los del archivo parameters.php. Deben ser EXACTAMENTE iguales, incluyendo mayúsculas y minúsculas.
  4. Si no recuerdas la contraseña, puedes cambiarla desde Plesk. Ve a la base de datos, haz clic en el usuario y elige la opción de "Cambiar contraseña". Una vez cambiada, actualiza el valor en parameters.php con la nueva contraseña.

[WARNING]: Al editar el archivo parameters.php, asegúrate de no dejar espacios extra ni comillas sin cerrar. Un solo carácter mal puesto puede romper toda la tienda. Si no te sientes seguro, haz una copia de seguridad del archivo antes de editarlo.

Solución 2: Verificar los Permisos del Usuario de la Base de Datos

A veces, el usuario correcto existe, pero no tiene permisos para acceder a la base de datos. Esto es más común después de una restauración de una copia de seguridad.

  1. En Plesk, ve a la sección "Bases de Datos".
  2. Haz clic en el nombre de tu base de datos.
  3. En la parte de "Usuarios de la base de datos", verás una lista de usuarios.
  4. Haz clic en el usuario correcto (el que debería estar usando PrestaShop).
  5. Asegúrate de que la casilla "Todos los privilegios" esté marcada. Si no, márcala y guarda los cambios.

Esto le dará al usuario el acceso total que necesita para que PrestaShop funcione correctamente.

Solución 3: El Servidor de Base de Datos no es localhost

En la mayoría de los casos, el database_host es localhost, pero no siempre es así. Algunos proveedores de hosting usan servidores de bases de datos externos.

  • ¿Cómo saberlo? En la sección de "Bases de Datos" de Plesk, a menudo se muestra el "Nombre del servidor" o "Host". Si no es localhost, copia ese valor exacto y pégalo en el database_host de tu archivo parameters.php.

[INFO]: Si tu hosting es compartido, es muy probable que sea localhost. Si tienes un VPS o un servidor dedicado, puede ser la IP del servidor o un nombre como mysql1.tuproveedor.com.

Solución 4: Comprobar el Espacio en el Disco Duro

Un disco lleno puede causar estragos. Si el servidor no tiene espacio para escribir, los servicios de base de datos fallarán.

  1. En Plesk, ve a "Herramientas y Ajustes".
  2. Busca la sección de "Información del Servidor" o "Estadísticas".
  3. Revisa el uso del disco duro. Si está al 90% o más, es muy probable que sea el culpable.

¿Cómo solucionarlo?

  • Elimina archivos temporales, copias de seguridad antiguas o logs que ya no necesites.
  • Vacía la papelera de reciclaje de tu servidor.
  • Si no sabes qué eliminar, contacta con tu proveedor de hosting para que te ayude a limpiar espacio.

Solución 5: Forzar la Regeneración de la Caché de PrestaShop

A veces, PrestaShop guarda configuraciones antiguas en su caché. Forzar su regeneración puede resolver el problema.

Método A: Desde el Panel de Administración (si puedes acceder)

  • Ve a Parámetros Avanzados > Rendimiento y haz clic en "Vaciar la caché".

Método B: Manualmente (si no puedes acceder al panel)

  1. Ve al administrador de archivos en Plesk.
  2. Navega a la carpeta httpdocs y busca la carpeta var o cache.
  3. Dentro de var/cache, puede haber subcarpetas como dev o prod. Elimina el contenido de estas carpetas (no las carpetas en sí, solo los archivos dentro).
  4. También puedes buscar archivos con extensiones .php que empiecen con class_ o container dentro de la carpeta cache y eliminarlos.

[TIP]: Si usas Syspanel (también conocido como HestiaCP) en otro servidor, el acceso a los archivos se hace por el puerto 2106, y el proceso sería similar: ir al gestor de archivos y limpiar la carpeta de caché de PrestaShop.


Solución Avanzada: Depuración con el Archivo defines.inc.php

Si has llegado hasta aquí y el error persiste, podemos activar el "modo de depuración" de PrestaShop para que nos muestre el error exacto en lugar de la página genérica.

  1. En el administrador de archivos de Plesk, navega a httpdocs/config/.
  2. Busca el archivo defines.inc.php.
  3. Ábrelo con el editor de texto.
  4. Busca la línea que dice define('_PS_MODE_DEV_', false); y cámbiala a define('_PS_MODE_DEV_', true);.
  5. Guarda el archivo y recarga tu tienda.

Ahora, en lugar del error genérico, verás un mensaje más detallado que te indicará la causa raíz, como por ejemplo:

  • Access denied for user 'usuario'@'localhost' -> Problema de credenciales o permisos.
  • Unknown database 'nombre_bd' -> El nombre de la base de datos es incorrecto.
  • Can't connect to MySQL server on 'localhost' -> El servidor de BD no está accesible.

Con esta información, podrás ir directamente a la solución correcta. Recuerda volver a poner _PS_MODE_DEV_ en false cuando hayas solucionado el problema para no exponer información sensible de tu tienda.


Preguntas Frecuentes (FAQ)

¿Por qué me aparece este error después de cambiar la contraseña en Plesk?

Es una causa muy común. Al cambiar la contraseña de la base de datos en Plesk, no se actualiza automáticamente en el archivo parameters.php de PrestaShop. Debes hacerlo manualmente siguiendo la Solución 1.

¿Puedo solucionar este error si no tengo acceso a Plesk?

Si no tienes acceso a Plesk, solo podrás intentar solucionarlo si tienes acceso por FTP o SSH. Podrías editar el archivo parameters.php a través de FTP. Si no tienes ninguna de estas opciones, contacta con tu proveedor de hosting y explica el error. Ellos podrán acceder a los archivos y al panel por ti.

¿Una actualización de PrestaShop puede causar este error?

Sí, a veces una actualización fallida o incompleta puede corromper el archivo parameters.php o cambiar la estructura de la base de datos, provocando el error. En este caso, intentar restaurar una copia de seguridad anterior suele ser la solución más efectiva.

¿Qué significa "Cannot connect to the database" en Syspanel?

Si tu panel de control es Syspanel (antes conocido como HestiaCP), el error es exactamente el mismo y las causas son las mismas. La única diferencia es que el acceso al panel se realiza a través del puerto 2106 (por ejemplo, https://tu-servidor:2106). Dentro del panel, la ruta para gestionar bases de datos y archivos será similar, aunque la interfaz sea distinta. Busca las secciones de "Base de Datos" y "Administrador de Archivos" para aplicar las mismas soluciones.


Resumen y Consejos Finales

El error "Cannot connect to the database" en PrestaShop con Plesk es un problema serio pero casi siempre solucionable. Para resumir, los pasos a seguir son:

  1. Comprueba el estado del servicio de MySQL/MariaDB en Plesk.
  2. Verifica las credenciales en el archivo app/config/parameters.php comparándolas con las de Plesk.
  3. Revisa los permisos del usuario de la base de datos.
  4. Comprueba el espacio en disco del servidor.
  5. Limpia la caché de PrestaShop.
  6. Activa el modo depuración para obtener más detalles sobre el error.

[TIP]: La prevención es la mejor cura. Siempre realiza copias de seguridad periódicas de tu tienda y de tu base de datos. Antes de hacer cualquier cambio importante (como actualizar módulos o cambiar contraseñas), guarda una copia de seguridad adicional. Así, si algo sale mal, podrás revertir los cambios rápidamente.

Espero que esta guía te haya sido de gran ayuda. Con un poco de paciencia y siguiendo estos pasos, tu tienda PrestaShop volverá a estar en línea en muy poco tiempo. ¡Mucha suerte!

¿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