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

Solucionar el error 'PrestaShop no se conecta a la base de datos' en DirectAdmin

Actualizado el 5 de diciembre de 2025

¡Entendido! Aquí tienes el artículo completo, optimizado para SEO y con el formato solicitado.


Imagina que estás trabajando tranquilamente en tu tienda online, y de repente, al intentar acceder al panel de administración de PrestaShop, te encuentras con un mensaje críptico que menciona un error con la base de datos. Es un momento de pánico, lo sé. Pero respira hondo. Este es uno de los errores más comunes en el mundo del hosting y, por suerte, casi siempre tiene una solución clara y paso a paso.

En este artículo, vamos a desglosar de forma sencilla y didáctica cómo solucionar el temido error de conexión a la base de datos en PrestaShop cuando tu sitio está alojado en un servidor con panel de control DirectAdmin. No necesitas ser un experto en informática para seguir esta guía; solo necesitas paciencia y acceso a tu panel de control.

Vamos a ello. Te explicaré las causas más habituales y, lo más importante, cómo resolverlas una por una.

¿Por qué ocurre este error? Entendiendo el problema

Antes de lanzarnos a solucionar el error base de datos PrestaShop DirectAdmin, es crucial entender qué significa. PrestaShop es un programa que necesita guardar y leer información constantemente (productos, pedidos, clientes, configuraciones). Toda esa información se almacena en un "almacén" llamado base de datos (MySQL o MariaDB).

Cuando tu tienda no puede hablar con ese almacén, muestra el error de conexión. Las causas suelen ser pocas y muy concretas. Las clasificaremos en tres grandes grupos:

  1. Datos de acceso incorrectos: Es como si intentaras abrir tu casa con la llave equivocada. PrestaShop tiene guardado un "usuario" y una "contraseña" para entrar a la base de datos. Si esos datos no coinciden con los que tiene el servidor, el acceso se deniega.
  2. Archivos de configuración corruptos o desactualizados: PrestaShop guarda esos datos de acceso en un archivo llamado parameters.php. Si este archivo tiene información antigua o se ha dañado, la conexión falla.
  3. Problemas en el servidor de base de datos: El "almacén" en sí mismo puede estar apagado, sobrecargado o tener un fallo. Esto es menos común, pero también puede pasar.

A continuación, vamos a diagnosticar y solucionar cada uno de estos puntos. Te recomiendo seguir los pasos en orden, ya que vamos de lo más simple a lo más complejo.

Paso 1: Verifica el estado del servidor MySQL/MariaDB en DirectAdmin

Este es el primer paso. A veces, el problema no es tuyo, sino del servidor. En DirectAdmin, podemos comprobar rápidamente si el servicio de base de datos está activo.

### Cómo comprobar el servicio en DirectAdmin

  1. Inicia sesión en tu panel de DirectAdmin.
  2. Busca la sección "Servicios del Sistema" o "System Services" en el menú principal (a menudo en la parte inferior o en la barra lateral).
  3. Busca en la lista los servicios llamados MySQL o MariaDB.
  4. Verifica que el estado sea "Running" (en ejecución) o que tenga una marca de verificación verde. Si aparece en rojo o dice "Stopped" (detenido), el problema es ese.

[WARNING] Si el servicio está detenido, no intentes reiniciarlo desde tu panel de usuario. Es posible que no tengas permisos para ello. En este caso, contacta a tu proveedor de hosting y diles: "El servicio MySQL/MariaDB está detenido en mi servidor, ¿pueden reiniciarlo?". Ellos lo solucionarán en menos de un minuto.

Si el servicio está activo y aún así tienes el error, continúa con el siguiente paso.

Paso 2: Localiza y revisa el archivo de configuración de PrestaShop

El archivo parameters.php es el corazón de la conexión. Se encuentra en la carpeta app/config/ de tu instalación de PrestaShop. Necesitamos asegurarnos de que contiene la información correcta.

### ¿Cómo acceder al archivo?

Tienes dos opciones: usar el Administrador de Archivos de DirectAdmin o un cliente FTP como FileZilla. Para esta guía, usaremos el Administrador de Archivos, que es más visual y no requiere programas externos.

  1. En DirectAdmin, busca el icono "Administrador de Archivos" (File Manager).
  2. Navega hasta la carpeta donde está instalado tu PrestaShop. Normalmente es public_html o una subcarpeta dentro de esta (ej. public_html/tienda).
  3. Dentro de esa carpeta, entra en la carpeta app, luego en config.
  4. Ahí verás el archivo parameters.php. Haz clic derecho sobre él y selecciona "Editar" o "Edit".

### ¿Qué debo buscar dentro del archivo?

El archivo tendrá un aspecto similar a este (aunque con más líneas). Busca las líneas que empiezan por 'database_host', 'database_name', 'database_user' y 'database_password'.

<?php
return [
    'parameters' => [
        'database_host' => 'localhost',
        'database_name' => 'tu_usuario_bd',
        'database_user' => 'tu_usuario_bd',
        'database_password' => 'tu_contraseña_secreta',
        // ... otras líneas
    ],
];

[INFO] En la mayoría de los servidores, la dirección del host (database_host) es localhost. Sin embargo, algunos proveedores usan direcciones como 127.0.0.1 o incluso un nombre de servidor específico. Si tu hosting te ha dado un host concreto para la BD, ese será el que debes usar. Si no estás seguro, localhost es la opción estándar y más común.

Ahora, anota los valores que aparecen en este archivo: el nombre de la base de datos, el usuario y la contraseña. Los necesitarás para el siguiente paso.

Paso 3: Verifica los datos de la base de datos en DirectAdmin

Ahora que tienes los datos del archivo, debemos comprobar si son correctos. Vamos a la sección de gestión de bases de datos de DirectAdmin.

### Comprobando las credenciales

  1. Vuelve al panel principal de DirectAdmin.
  2. Busca la sección "Gestión de Bases de Datos MySQL" o "MySQL Management".
  3. Verás una lista de todas tus bases de datos. Presta mucha atención a los nombres. Debe existir una base de datos cuyo nombre coincida exactamente con el 'database_name' de tu archivo parameters.php.
  4. Haz clic en el pequeño icono de "lápiz" o "editar" al lado de esa base de datos.
  5. Aquí verás el usuario asignado a esa base de datos. Comprueba que coincida con el 'database_user' de tu archivo.

[WARNING] Es muy común que el nombre de la base de datos y el usuario sean idénticos o muy similares. Asegúrate de que coinciden al 100%, incluyendo mayúsculas, minúsculas y prefijos. Un solo carácter diferente causará el error.

### El problema de la contraseña y los privilegios

Aquí viene la parte más delicada. DirectAdmin no te muestra la contraseña de la base de datos. Solo puedes cambiarla. Si sospechas que la contraseña en tu archivo parameters.php es incorrecta, la solución más segura es cambiarla desde DirectAdmin y actualizar el archivo.

  1. En la misma pantalla de edición de la base de datos, busca la opción para "Cambiar Contraseña".
  2. Establece una contraseña nueva y segura. Guárdala en un lugar seguro.
  3. IMPORTANTE: Asegúrate de que el usuario tiene "TODOS LOS PRIVILEGIOS" (ALL PRIVILEGES). En DirectAdmin, a menudo hay una casilla o lista para marcarlos. Si no estás seguro, selecciona la opción de dar todos los privilegios.

### Actualizar el archivo parameters.php

Ahora, vuelve al archivo parameters.php que tenías abierto en el editor.

  1. Reemplaza el valor de 'database_password' con la nueva contraseña que acabas de establecer.
  2. Guarda los cambios (Ctrl+S o el botón de guardar).

Después de este paso, intenta acceder a tu tienda. Si el problema era la contraseña o los privilegios, esto lo habrá solucionado.

[TIP] Si tras cambiar la contraseña y actualizar el archivo el error persiste, es posible que tu servidor tenga una caché de configuraciones. A veces, forzar la regeneración de la caché de PrestaShop ayuda. Puedes intentar renombrar la carpeta var/cache (dentro de la carpeta principal de PrestaShop) a var/cache_old usando el Administrador de Archivos. PrestaShop creará una nueva automáticamente al cargar la página. Esto es seguro y no borra datos importantes.

Paso 4: Comprobar el host de la base de datos (¿Es realmente 'localhost'?)

Aunque parezca un detalle menor, es una causa muy frecuente del error. No todos los servidores usan localhost. Algunos usan una dirección IP o un nombre de dominio interno.

### ¿Cómo saber cuál es mi host de BD?

  1. Revisa el correo de bienvenida que te envió tu proveedor de hosting cuando contrataste el servicio. A menudo incluye los datos de conexión a la base de datos.
  2. Entra en el panel de phpMyAdmin desde DirectAdmin. A menudo, hay un icono que dice "phpMyAdmin" o "Gestión de BD". Una vez dentro, en la parte superior, verás la dirección del servidor (por ejemplo, localhost o mysql.tudominio.com).
  3. Si has accedido a phpMyAdmin correctamente desde DirectAdmin, es muy probable que el host sea localhost. Pero si tu proveedor usa un sistema de hosting externo (como un servidor de bases de datos separado), la dirección será diferente.

Si has confirmado que el host no es localhost, actualiza el valor de 'database_host' en tu archivo parameters.php con el valor correcto.

Paso 5: Verifica los permisos de los archivos (Permisos de carpeta)

A veces, el problema no es la conexión en sí, sino que PrestaShop no puede escribir o leer el archivo de configuración correctamente. Esto se debe a los "permisos" de los archivos, que son reglas que indican quién puede leer, escribir o ejecutar cada archivo.

### Ajustando los permisos

  1. En el Administrador de Archivos de DirectAdmin, navega a la carpeta app/config/.
  2. Asegúrate de que el archivo parameters.php tenga permisos de lectura y escritura para el usuario del servidor. Los permisos más comunes y seguros son 644 o 664.
  3. Haz clic derecho sobre el archivo y selecciona "Cambiar Permisos" o "Change Permissions".
  4. Marca las casillas para que el propietario tenga lectura y escritura, y el grupo tenga lectura (y a veces escritura). El valor numérico debería ser 644 o 664.

[INFO] No te obsesiones con los números exactos. En la interfaz de DirectAdmin, verás casillas para "Lectura", "Escritura" y "Ejecución" para el Propietario, el Grupo y Otros. Asegúrate de que al menos el Propietario tenga la casilla de "Lectura" y "Escritura" marcadas.

Soluciones adicionales y preguntas frecuentes (FAQ)

A veces, incluso después de todos estos pasos, el problema persiste. Aquí tienes algunas preguntas frecuentes y consejos extra.

### ¿Qué pasa si he editado el archivo y ahora tengo un error de sintaxis?

Esto es más común de lo que parece. Si al editar parameters.php has borrado una coma o una comilla sin querer, PrestaShop fallará. El archivo debe ser un código PHP válido.

[WARNING] Si al intentar abrir tu tienda ves un error de "PHP Parse error" en lugar del error de base de datos, significa que has roto la sintaxis del archivo. No entres en pánico. Vuelve a editar el archivo y asegúrate de que todas las líneas terminen con una coma (excepto la última antes del cierre del array) y que todas las cadenas de texto estén entre comillas simples. Si tienes una copia de seguridad del archivo original, restáurala.

### ¿Puede ser un problema del puerto de conexión?

En la mayoría de los casos, no. MySQL usa el puerto 3306 por defecto, y DirectAdmin lo configura así. No deberías necesitar cambiar el puerto a menos que tu proveedor te indique explícitamente uno diferente.

### Mi tienda está en un servidor con Syspanel (HestiaCP), ¿esto aplica?

Este artículo está enfocado en DirectAdmin. Si tu hosting usa Syspanel (el antiguo HestiaCP), el proceso es similar pero la interfaz cambia. Para acceder al panel de Syspanel, la URL suele ser https://tu-dominio.com:2106. Dentro de Syspanel, busca las secciones de "Base de Datos" y "Archivos" para realizar pasos equivalentes a los descritos aquí. La lógica de solucionar error MySQL PrestaShop es idéntica, pero la navegación es diferente.

### He probado todo y sigo sin conexión

Si has verificado el servicio, las credenciales, los permisos y el host, y el error persiste, el problema puede estar en un nivel más profundo del servidor.

  1. Revisa los logs de error: En DirectAdmin, busca la sección "Logs de Errores" o "Error Logs". Los mensajes de error de PHP o MySQL te darán pistas más concretas sobre el fallo.
  2. Contacta a tu proveedor: Es el momento de abrir un ticket de soporte. Explícales claramente: "Tengo un error base de datos PrestaShop DirectAdmin. He verificado que el servicio MySQL está activo, he comprobado las credenciales en parameters.php y coinciden con las de DirectAdmin, y los permisos son correctos. El error persiste. ¿Pueden revisar los logs del servidor?". Esto les ahorrará tiempo y te ayudará a ti.

Conclusión: Resumen de la solución

Solucionar el error de que PrestaShop no conecta BD DirectAdmin puede parecer abrumador, pero como has visto, es un proceso lógico y secuencial. La clave está en verificar los datos de acceso y la salud del servicio de base de datos.

Para que no te pierdas, aquí tienes un resumen rápido:

  1. Comprueba que MySQL/MariaDB esté en ejecución en DirectAdmin.
  2. Abre tu archivo app/config/parameters.php y anota los datos de conexión.
  3. Compara esos datos con los de DirectAdmin (nombre de BD y usuario).
  4. Si es necesario, cambia la contraseña en DirectAdmin y actualízala en el archivo parameters.php.
  5. Verifica que el host sea correcto (normalmente localhost).
  6. Comprueba los permisos del archivo parameters.php (644 o 664).

Siguiendo estos pasos, resolverás el problema en el 90% de los casos. La próxima vez que veas ese error, ya no será un misterio, sino un problema con una solución clara y a tu alcance. ¡Mucha suerte con tu tienda!

¿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