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

Cómo solucionar el error 'No se pudo conectar a la base de datos' en PrestaShop (DirectAdmin)

Actualizado el 11 de noviembre de 2025

[INFO] Este artículo está pensado para usuarios de PrestaShop que utilizan el panel de control DirectAdmin. Si tu hosting usa otro panel, como cPanel o Syspanel (antes conocido como HestiaCP, accesible por el puerto 2106), los pasos pueden variar ligeramente, pero la lógica principal es la misma.

Encontrarte con el mensaje "No se pudo conectar a la base de datos" en tu tienda PrestaShop es uno de los sustos más comunes y, a la vez, más fáciles de resolver si sabes dónde mirar. No entres en pánico. Este error, en el 99% de los casos, no significa que hayas perdido tus productos, clientes o pedidos. Simplemente significa que tu tienda no puede hablar con el servidor donde se guarda toda esa información. Es como si intentaras abrir la puerta de tu trastero con la llave equivocada: la puerta está bien, pero no puedes acceder.

Vamos a desglosar, paso a paso y sin tecnicismos innecesarios, cómo solucionar el error conexión base datos PrestaShop DirectAdmin. Al final de esta guía, habrás aprendido a diagnosticar el problema y, con un poco de suerte, a dejar tu tienda online funcionando de nuevo en cuestión de minutos.

¿Por qué ocurre este error? Entendiendo el problema

Antes de lanzarnos a tocar cosas, es crucial entender qué significa exactamente este mensaje. En PrestaShop, la configuración de la conexión a la base de datos se guarda en un archivo llamado parameters.php, que se encuentra en la carpeta app/config/. Este archivo contiene cuatro datos clave:

  1. El host (la dirección del servidor de base de datos, normalmente localhost).
  2. El nombre de la base de datos.
  3. El usuario de la base de datos.
  4. La contraseña de ese usuario.

Cuando PrestaShop intenta arrancar, lee este archivo. Si alguno de esos datos es incorrecto, o si el servidor de bases de datos está caído, te mostrará el temido error. Las causas más habituales son:

  • Cambios recientes en el hosting: Si has migrado de servidor, renovado el dominio o el plan de hosting, es probable que las credenciales hayan cambiado.
  • Restauración de copias de seguridad: Si has restaurado una copia de seguridad de tu tienda en un servidor nuevo, el archivo de configuración puede contener los datos antiguos.
  • Cambio de contraseña: Quizás cambiaste la contraseña de la base de datos desde DirectAdmin y olvidaste actualizar el archivo de PrestaShop.
  • Servidor de bases de datos sobrecargado o caído: A veces el problema no es tuyo, sino del servidor. Puede estar realizando un mantenimiento o haber sufrido un pico de tráfico.
  • Corrupción del archivo parameters.php: Una edición manual incorrecta o un error al subir archivos por FTP puede dañar el archivo.

Primeros pasos: Diagnóstico rápido desde DirectAdmin

Para solucionar error PrestaShop, no necesitas ser un experto en programación. Solo tienes que ser metódico. Primero, vamos a verificar si el problema es general o específico de tu tienda.

1. Comprueba si el servidor de bases de datos está activo

DirectAdmin tiene una herramienta llamada "MySQL Management" o "phpMyAdmin". Si puedes acceder a esta herramienta, significa que el servidor de bases de datos está funcionando.

  1. Inicia sesión en tu panel de DirectAdmin.
  2. Busca el icono de "MySQL Management" o "phpMyAdmin".
  3. Si logras entrar y ves listadas tus bases de datos, el servidor está vivo. El problema está en la configuración de tu PrestaShop.

Si no puedes acceder, el problema es del servidor. En ese caso, contacta con tu proveedor de hosting y diles que no puedes acceder a phpMyAdmin. Es un problema de infraestructura, no de tu tienda.

2. Verifica tus credenciales actuales en DirectAdmin

Si el servidor está activo, el siguiente paso es asegurarnos de cuáles son las credenciales correctas. DirectAdmin te muestra esta información.

  1. En tu panel de DirectAdmin, ve a la sección "MySQL Management".
  2. Verás una lista de tus bases de datos. A menudo, los nombres son algo así como usuario_nombrebasededatos.
  3. Haz clic en el icono de "editar" o "lápiz" junto a la base de datos que usa tu tienda. Ahí podrás ver el nombre de la base de datos, el nombre de usuario asociado y tendrás la opción de cambiar la contraseña.
  4. Anota estos datos en un papel o bloc de notas. Son los que necesitaremos para el siguiente paso.

[WARNING] No cambies la contraseña todavía si no es necesario. Primero, vamos a verificar si el archivo de PrestaShop tiene los datos correctos. Cambiar la contraseña sin actualizar PrestaShop empeorará el problema.

La solución principal: Editar el archivo parameters.php

Este es el corazón de la solución para el error conexión base datos PrestaShop DirectAdmin. Vamos a abrir el archivo de configuración y a asegurarnos de que tiene los datos correctos. Para ello, necesitarás un cliente FTP (como FileZilla) o el administrador de archivos de DirectAdmin.

Opción A: Usando el Administrador de Archivos de DirectAdmin (Recomendado para principiantes)

Esta es la forma más segura y visual, ya que no necesitas programas externos.

  1. En DirectAdmin, busca la sección "File Manager" o "Administrador de Archivos".
  2. Navega hasta la carpeta donde está instalada tu tienda. Normalmente es domains/tudominio.com/public_html. Si tu tienda está en una subcarpeta, navega hasta ella.
  3. Dentro de public_html, entra en la carpeta app y luego en config.
  4. Busca el archivo llamado parameters.php. Haz clic derecho sobre él y selecciona "Edit" o "Editar". DirectAdmin abrirá un editor de texto.

Opción B: Usando FTP (FileZilla)

  1. Conecta a tu servidor usando las credenciales FTP que te proporcionó tu hosting.
  2. Navega a la misma ruta: public_html/app/config/.
  3. Descarga el archivo parameters.php a tu ordenador.
  4. Ábrelo con un editor de texto como el Bloc de Notas o, mejor aún, Notepad++ o Sublime Text.

Identificando y corrigiendo los datos

Una vez que tengas el archivo abierto, verás un montón de texto y código. No te asustes. Solo nos interesan unas líneas específicas. Busca los parámetros que empiezan por 'database_host', 'database_name', 'database_user' y 'database_password'. Se verán más o menos así (el contenido cambiará):

'database_host' => 'localhost',
'database_name' => 'tu_usuario_mi_tienda',
'database_user' => 'tu_usuario_mi_tienda',
'database_password' => 'LaContraseñaQueSea',

Ahora, compara estos valores con los que anotaste desde DirectAdmin en el paso anterior.

  • database_host: En el 99% de los casos en DirectAdmin, debe ser localhost. Si ves otra cosa, cámbialo a localhost. A veces puede ser una IP como 127.0.0.1, pero localhost es lo estándar.
  • database_name: Debe coincidir EXACTAMENTE con el nombre que viste en DirectAdmin. Los nombres suelen llevar el prefijo del usuario, por ejemplo, usuario_prestashop. Cualquier error tipográfico aquí romperá la conexión.
  • database_user: Debe coincidir EXACTAMENTE con el nombre de usuario de la base de datos. A menudo es el mismo que el nombre de la base de datos, pero no siempre.
  • database_password: Este es el punto más crítico. Debe ser la contraseña que tiene asignada el usuario en DirectAdmin.

¿Qué hago si los datos no coinciden?

  1. Corrige los valores en el archivo parameters.php para que coincidan con los de DirectAdmin.
  2. Guarda el archivo. Si lo estás editando en DirectAdmin, hay un botón "Save" arriba a la derecha. Si lo estás haciendo por FTP, súbelo de vuelta a la carpeta app/config/, reemplazando el antiguo.

[TIP] Si no estás seguro de la contraseña, la opción más segura es cambiar la contraseña desde DirectAdmin (en MySQL Management) y luego poner esa nueva contraseña en el archivo parameters.php. Así te aseguras de que ambos lados tienen la misma clave.

¿Y si el archivo está bien? Otras soluciones

Si después de verificar y corregir los datos el error persiste, el problema puede estar en la caché o en los permisos de los archivos.

3. Limpiar la caché de PrestaShop

PrestaShop guarda una copia de la configuración en archivos de caché. A veces, esta caché se corrompe y causa problemas, incluso si el archivo parameters.php es correcto.

  1. Desde el administrador de archivos de DirectAdmin o por FTP, navega a la carpeta var/cache en la raíz de tu instalación de PrestaShop.
  2. Dentro, encontrarás una o dos carpetas llamadas dev y prod (o cache).
  3. Elimina el contenido de estas carpetas. No borres las carpetas en sí, solo lo que hay dentro. Si ves archivos con extensión .php o .cache, bórralos.
  4. Intenta acceder a tu tienda de nuevo.

[WARNING] No borres el archivo .htaccess que pueda haber dentro de var/cache. Solo elimina los archivos internos.

4. Verificar los permisos de archivos y carpetas

Los permisos incorrectos pueden impedir que PrestaShop lea el archivo de configuración. En la mayoría de los casos, los permisos deben ser:

  • Carpetas: 755
  • Archivos: 644

Puedes verificar y cambiar estos permisos desde el administrador de archivos de DirectAdmin. Selecciona la carpeta app, haz clic derecho y elige "Change Permissions". Asegúrate de que esté en 755. Luego, ve al archivo parameters.php y verifica que esté en 644.

5. Revisar si la base de datos está llena o corrupta

A veces, la base de datos puede estar llena (alcanzó su límite de espacio) o tener tablas corruptas. Esto no es muy común, pero puede pasar.

  1. Entra en phpMyAdmin desde DirectAdmin.
  2. Selecciona tu base de datos de PrestaShop en el panel izquierdo.
  3. Abajo del todo, verás un enlace que dice "Check All" (Seleccionar todo) y un desplegable que dice "With selected:". Elige la opción "Repair table" (Reparar tabla).
  4. Ejecuta la reparación. Esto puede tardar unos segundos.

6. Verificar la versión de PHP

PrestaShop, como cualquier software, necesita una versión de PHP compatible. Si tu hosting actualizó la versión de PHP a una demasiado nueva (o demasiado antigua) para tu versión de PrestaShop, pueden surgir errores extraños, incluido el de la base de datos.

  1. En DirectAdmin, busca la sección "PHP Version Selector" o "PHP Settings".
  2. Asegúrate de que la versión de PHP sea compatible con tu versión de PrestaShop. Por ejemplo, PrestaShop 1.7 funciona bien con PHP 7.1 a 7.4. PrestaShop 8 necesita PHP 7.2 o superior. Si tienes una versión antigua (1.6), PHP 5.6 o 7.0 era lo suyo.
  3. Si no estás seguro, prueba a cambiar a una versión anterior (por ejemplo, de PHP 8.0 a 7.4) y mira si el error desaparece. Recuerda que puedes cambiarla de nuevo.

Preguntas Frecuentes (FAQ) sobre el error de conexión

Aquí tienes una recopilación de las dudas más comunes que nos llegan sobre este tema.

¿Por qué sigo viendo el error después de cambiar los datos en parameters.php?

Es casi seguro que es un problema de caché. PrestaShop no lee el archivo parameters.php directamente cada vez, sino que usa una versión compilada en var/cache. Asegúrate de haber vaciado el contenido de las carpetas dev y prod dentro de var/cache. Si el problema persiste, verifica que has subido correctamente el archivo editado a través de FTP y que no lo has guardado con una extensión adicional (como parameters.php.txt).

¿Puedo usar la misma base de datos para dos instalaciones de PrestaShop?

Técnicamente puedes, pero es altamente desaconsejable. Cada instalación necesita sus propias tablas. Si usas la misma base de datos, los datos se mezclarán y corromperán. Es como intentar usar una sola libreta para llevar las cuentas de dos negocios diferentes. Siempre crea una base de datos nueva para cada tienda.

El error dice "Error de conexión con la base de datos" pero no es el mensaje clásico, ¿qué hago?

A veces, el mensaje puede ser más detallado, como "Link to database cannot be established" o "The website encountered an error". En ese caso, el diagnóstico es el mismo. Sigue todos los pasos de la guía. Si el problema es solo con una parte de la tienda (por ejemplo, el panel de administración funciona pero la tienda no), el problema puede ser de permisos de archivos o de la caché.

¿Qué es el database_prefix y puede causar este error?

El database_prefix es un prefijo que se añade a las tablas de la base de datos (por ejemplo, ps_orders). Si este valor es incorrecto, PrestaShop no encontrará sus tablas y dará un error, aunque la conexión sea exitosa. Sin embargo, este error suele ser diferente y dice algo como "Table 'ps_orders' doesn't exist". Asegúrate de que este prefijo coincida con el que ves en las tablas de tu base de datos en phpMyAdmin. Si no lo has tocado, déjalo como está.

¿Puede un plugin o módulo causar este error?

Es muy raro, pero un módulo mal codificado podría intentar conectarse a una base de datos externa y fallar, mostrando un error que parece general. Para descartarlo, puedes desactivar temporalmente todos los módulos no nativos. Esto se hace editando el archivo config/settings.inc.php (en PrestaShop 1.6) o buscando la línea define('_PS_DISABLE_OVERRIDES_', false); en config/defines.inc.php y cambiándola a true para desactivar las sobreescrituras. Pero esto es un paso más avanzado. Si has llegado hasta aquí, el problema más probable es el de la caché o las credenciales.

Resumen y consejos finales

Para solucionar error PrestaShop, la clave está en la paciencia y en seguir un orden lógico. En resumen, tu plan de acción debe ser:

  1. Verifica que el servidor de BD está vivo (entra a phpMyAdmin).
  2. Anota las credenciales correctas desde DirectAdmin.
  3. Revisa y corrige el archivo app/config/parameters.php.
  4. Limpia la caché en var/cache/dev y var/cache/prod.
  5. Comprueba los permisos de archivos y carpetas.
  6. Repara las tablas de la base de datos desde phpMyAdmin.
  7. Revisa la versión de PHP en DirectAdmin.

Y si todo esto falla, no dudes en contactar con tu proveedor de hosting. Ellos tienen acceso a los logs del servidor y pueden ver si hay un error más profundo. Recuerda que un error de conexión a la base de datos no significa que hayas perdido tus datos. Es un problema de comunicación, no

¿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