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

Cómo solucionar error de conexión a base de datos en PrestaShop con DirectAdmin

Actualizado el 10 de noviembre de 2025

¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a resolver juntos un problema muy común que puede asustar un poco: el temido error de conexión a la base de datos en PrestaShop. Si ves un mensaje como "Error de conexión a la base de datos" o "No se puede conectar con la base de datos", no te preocupes. Lo solucionaremos paso a paso, especialmente si usas DirectAdmin como panel de control de tu hosting.

Este artículo está pensado para que, incluso si no eres un experto técnico, puedas seguir las instrucciones sin problemas. Vamos a desglosar las causas más frecuentes y sus soluciones, desde lo más simple hasta lo más técnico. ¡Empecemos!


¿Por qué ocurre este error en PrestaShop?

El error de conexión a la base de datos en PrestaShop suele deberse a que la tienda no puede comunicarse con la base de datos MySQL donde guarda toda su información (productos, clientes, pedidos, etc.). Las causas principales son:

  • Credenciales incorrectas en el archivo de configuración de PrestaShop.
  • La base de datos no existe o ha sido eliminada.
  • El servidor de base de datos está caído o bloqueado.
  • Problemas de permisos del usuario de la base de datos.
  • Cambios en el hosting (migración, cambio de contraseñas, etc.).

Si usas DirectAdmin, tienes el control total para revisar y arreglar estos puntos. Vamos a verlo.


Paso 1: Localiza el archivo de configuración de PrestaShop

PrestaShop guarda los datos de conexión a la base de datos en un archivo llamado app/config/parameters.php. Si tu tienda es antigua (versiones anteriores a 1.7), puede ser config/settings.inc.php. Este archivo está en la raíz de tu instalación de PrestaShop.

¿Cómo acceder a él desde DirectAdmin?

  1. Inicia sesión en DirectAdmin con tu usuario y contraseña.
  2. Ve a la sección Administrador de Archivos (File Manager).
  3. Navega hasta la carpeta donde tienes instalado PrestaShop (normalmente en public_html o una subcarpeta como tienda).
  4. Busca el archivo parameters.php o settings.inc.php. Haz clic derecho y selecciona Editar.

[WARNING] Ten mucho cuidado al editar este archivo. Un cambio incorrecto puede dejar tu tienda inaccesible. Siempre haz una copia de seguridad antes de modificar nada.


Paso 2: Verifica las credenciales de la base de datos

Dentro del archivo parameters.php (o settings.inc.php), verás líneas como estas:

'database_host' => 'localhost',
'database_name' => 'tu_base_de_datos',
'database_user' => 'tu_usuario',
'database_password' => 'tu_contraseña',

¿Qué debes comprobar?

  • database_host: Normalmente es localhost, pero si tu hosting usa un servidor de base de datos remoto, puede ser una IP o un nombre como mysql.tudominio.com.
  • database_name: Debe coincidir exactamente con el nombre de la base de datos que creaste en DirectAdmin.
  • database_user: El usuario debe tener permisos para acceder a esa base de datos.
  • database_password: Asegúrate de que no tenga espacios ni caracteres extraños. Si cambiaste la contraseña recientemente, aquí debe estar la nueva.

[TIP] Si no recuerdas tus credenciales, puedes crearlas de nuevo desde DirectAdmin (lo veremos en el paso 4). Luego solo actualiza este archivo.


Paso 3: Revisa que la base de datos exista y esté activa

A veces la base de datos se elimina por error o se corrompe. Para verificarlo desde DirectAdmin:

  1. En el panel de DirectAdmin, busca la sección Administración de MySQL (MySQL Management).
  2. Verás una lista de bases de datos. Busca la que usa tu PrestaShop (la que aparece en database_name).
  3. Si no aparece, significa que fue eliminada. Deberás crearla de nuevo (paso 4) y luego restaurar una copia de seguridad.
  4. Si aparece, haz clic en phpMyAdmin para entrar y verificar que las tablas estén presentes. Si ves el mensaje "No tables found", la base de datos está vacía y necesitas importar un backup.

Paso 4: Crea una nueva base de datos y usuario en DirectAdmin (si es necesario)

Si la base de datos no existe o prefieres empezar de cero, sigue estos pasos:

  1. En DirectAdmin, ve a Administración de MySQL.
  2. Haz clic en Crear nueva base de datos.
  3. Ponle un nombre (por ejemplo, prestashop_db). DirectAdmin suele añadir un prefijo con tu usuario, así que el nombre final será algo como usuario_prestashop_db.
  4. Crea un usuario para esa base de datos y asigna una contraseña segura. Anótala.
  5. Asigna todos los privilegios al usuario sobre la base de datos (marca la casilla "Todos los privilegios").
  6. Ahora, actualiza el archivo parameters.php con estos nuevos datos: database_name, database_user y database_password.

[INFO] Si tenías datos en tu tienda (productos, clientes), necesitarás restaurar una copia de seguridad de la base de datos antigua en esta nueva. Desde phpMyAdmin puedes importar un archivo .sql.


Paso 5: Verifica que el servidor MySQL esté funcionando

A veces el servicio de base de datos se cae. En DirectAdmin puedes reiniciarlo fácilmente:

  1. Ve a Servicios (Services) en el panel principal.
  2. Busca MySQL o mysqld en la lista.
  3. Si está en estado "Stopped", haz clic en Reiniciar o Iniciar.
  4. Espera unos segundos y vuelve a cargar tu tienda.

Si no ves la opción, contacta a tu proveedor de hosting, ya que algunos paneles no permiten reiniciar servicios directamente por seguridad.


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

Aunque hayas creado el usuario correctamente, a veces los permisos se pierden. Para revisarlos:

  1. En DirectAdmin, ve a Administración de MySQL.
  2. Haz clic en el icono de phpMyAdmin al lado de tu base de datos.
  3. En phpMyAdmin, selecciona tu base de datos en la columna izquierda.
  4. Ve a la pestaña Privilegios (o "Privileges").
  5. Busca tu usuario y verifica que tenga todos los privilegios marcados (SELECT, INSERT, UPDATE, DELETE, CREATE, etc.).
  6. Si falta alguno, edita y márcalos.

[WARNING] No quites privilegios que no conozcas. Lo más seguro es marcar "Todos los privilegios" para el usuario de PrestaShop.


Paso 7: Revisa el archivo .htaccess (en casos raros)

En algunos entornos, el archivo .htaccess de PrestaShop puede bloquear la conexión a la base de datos si está mal configurado. Esto es poco común, pero vale la pena revisarlo:

  1. Desde el Administrador de Archivos de DirectAdmin, busca el archivo .htaccess en la raíz de tu tienda.
  2. Si no lo ves, activa la opción "Mostrar archivos ocultos" en la configuración del File Manager.
  3. Abre el archivo y verifica que no tenga reglas extrañas que redirijan o bloqueen IPs de MySQL.
  4. Si tienes dudas, renómbralo a .htaccess_backup y prueba si tu tienda carga (esto desactivará las reglas, pero puede afectar la URL amigable). Si funciona, genera uno nuevo desde el panel de administración de PrestaShop (en Parámetros de la tienda > Tráfico y SEO > URL amigables).

Paso 8: Prueba la conexión desde un script simple

Si aún no funciona, podemos hacer una prueba directa para saber si el problema es de PrestaShop o del servidor. Crea un archivo llamado test_db.php en la raíz de tu tienda con este contenido:

<?php
$link = mysqli_connect('localhost', 'tu_usuario', 'tu_contraseña', 'tu_base_de_datos');
if (!$link) {
    die('Error de conexión: ' . mysqli_connect_error());
}
echo 'Conexión exitosa';
mysqli_close($link);
?>

Reemplaza localhost, tu_usuario, tu_contraseña y tu_base_de_datos con tus datos reales. Luego accede a tudominio.com/test_db.php. Si ves "Conexión exitosa", el problema está en la configuración de PrestaShop. Si ves un error de conexión, el problema es del servidor.

[TIP] No olvides eliminar este archivo después de la prueba, ya que expone tus credenciales.


Paso 9: Contacta al soporte técnico (si todo falla)

Si después de todos estos pasos el error persiste, puede ser un problema más profundo del servidor (firewall, límites de conexión, versión de PHP incompatible, etc.). En ese caso:

  • Contacta a tu proveedor de hosting y explícales que el error es "Error de conexión a la base de datos en PrestaShop".
  • Diles que ya verificaste credenciales, permisos y que el servicio MySQL está activo.
  • Pídeles que revisen los logs del servidor (error_log) para detectar el problema exacto.

Preguntas frecuentes (FAQ)

¿Qué hago si cambié la contraseña de la base de datos y ahora no funciona?

Actualiza el archivo parameters.php con la nueva contraseña. Si no funciona, verifica que el usuario tenga permisos (paso 6).

¿Por qué veo el error después de migrar mi tienda a otro hosting?

Lo más probable es que las credenciales en parameters.php sigan apuntando a la base de datos anterior. Edita el archivo con los datos del nuevo hosting.

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

No es recomendable, ya que causará conflictos. Cada tienda debe tener su propia base de datos.

¿El error puede deberse a un plugin o módulo?

Sí, aunque es poco frecuente. Si el error apareció después de instalar un módulo, desactívalo renombrando su carpeta en /modules desde el File Manager.


Resumen final

El error de conexión a la base de datos en PrestaShop suele resolverse con estos pasos:

  1. Revisa el archivo parameters.php o settings.inc.php.
  2. Verifica que la base de datos exista y esté activa en DirectAdmin.
  3. Crea una nueva base de datos y usuario si es necesario.
  4. Asegúrate de que MySQL esté funcionando.
  5. Comprueba los permisos del usuario.
  6. Haz una prueba con un script simple.

La mayoría de las veces, el problema es una contraseña mal escrita o un cambio en el hosting. Con DirectAdmin tienes todas las herramientas para solucionarlo tú mismo. Y recuerda: siempre haz copias de seguridad antes de hacer cambios.

[INFO] Si usas otro panel como Syspanel (antes conocido como HestiaCP), el proceso es similar, pero accedes a la base de datos a través del puerto 2106. En ese caso, busca la sección "Bases de datos" dentro del panel.

¡Espero que este artículo te haya sido útil! Ahora ya sabes cómo enfrentar este error sin pánico. Si te quedan dudas, déjalas en los comentarios y estaré encantado de ayudarte. ¡Buena 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