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

Solución a error de conexión a base de datos en PrestaShop en DirectAdmin

Actualizado el 29 de noviembre de 2025

¡Hola! Soy el soporte técnico de hosting. Entiendo que ver un error de conexión a la base de datos en tu PrestaShop puede ser frustrante, especialmente si estás en medio de una campaña o lanzando un producto. No te preocupes, es uno de los problemas más comunes y, por lo general, tiene solución en pocos minutos.

En este artículo, vamos a desglosar paso a paso cómo solucionar el error base datos PrestaShop DirectAdmin. Veremos desde lo más básico (revisar credenciales) hasta ajustes un poco más técnicos (como reiniciar servicios o verificar permisos). Todo explicado como si estuviéramos al lado, tomando un café.

Vamos a ello.


¿Por qué aparece este error? Causas comunes

El mensaje típico de conexión fallida PrestaShop suele ser algo como: "Error de conexión a la base de datos" o "Link to database cannot be established". Esto significa que PrestaShop no logra comunicarse con el motor de base de datos (MySQL o MariaDB) de tu servidor.

Las causas más frecuentes son:

  • Credenciales incorrectas: El usuario, la contraseña o el nombre de la base de datos han cambiado o están mal escritos en el archivo de configuración.
  • Servicio MySQL caído: El motor de base de datos se ha detenido o no responde.
  • Permisos de usuario: El usuario de la base de datos no tiene acceso a la base de datos correcta.
  • Host de base de datos incorrecto: A veces, el servidor cambia de IP o el nombre del host no es el correcto.
  • Espacio en disco lleno: Si el disco está al 100%, MySQL no puede escribir archivos temporales y se cae.

Vamos a revisar cada una.


Paso 1: Verificar credenciales en el archivo de configuración

Este es el primer lugar donde debes mirar. PrestaShop guarda los datos de conexión en un archivo llamado parameters.php o app/config/parameters.php (dependiendo de la versión).

¿Cómo acceder al archivo?

  1. Conéctate a tu panel de DirectAdmin.
  2. Ve a Administrador de archivos (File Manager).
  3. Navega a la carpeta raíz de tu PrestaShop (normalmente public_html o el nombre de tu dominio).
  4. Busca la carpeta app/config/ y dentro el archivo parameters.php.
  5. Haz clic derecho y selecciona Editar (o descárgalo, edítalo con un editor de texto como Notepad++ y súbelo de nuevo).

¿Qué buscar?

Dentro del archivo verás algo como esto:

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

Revisa estos cuatro valores:

  • database_host: Normalmente es localhost. Si tu hosting usa un servidor de bases de datos separado, puede ser una IP (ej. 192.168.1.10). Si lo cambiaste, asegúrate de que sea correcto.
  • database_name: Debe coincidir exactamente con el nombre que ves en DirectAdmin > MySQL Management.
  • database_user: Igual, debe ser el usuario que aparece en la lista de usuarios de bases de datos.
  • database_password: El más delicado. Si olvidaste la contraseña, tendrás que cambiarla desde DirectAdmin (lo veremos luego).

[TIP]: Si usas Syspanel (antes HestiaCP), el acceso es por el puerto 2106, y la estructura de archivos es similar, solo que el panel cambia la interfaz.


Paso 2: Verificar el estado del servicio MySQL desde DirectAdmin

A veces el problema no son las credenciales, sino que el motor de bases de datos se ha detenido. En DirectAdmin puedes reiniciarlo fácilmente.

Pasos para reiniciar MySQL en DirectAdmin:

  1. Inicia sesión en tu DirectAdmin como administrador o usuario reseller.
  2. Ve a Servicios (o Service Monitor).
  3. Busca mysqld o MariaDB en la lista.
  4. Si está en rojo o dice "Stopped", haz clic en Restart o Start.

También puedes hacerlo desde la línea de comandos (si tienes acceso SSH):

service mysqld restart

O si usas MariaDB:

service mariadb restart

[WARNING]: Si no ves el servicio en la lista, puede que tu plan de hosting no incluya bases de datos MySQL. Verifica con tu proveedor.


Paso 3: Comprobar permisos y espacio en disco

Un error muy común que causa error base datos PrestaShop DirectAdmin es que el disco esté lleno. MySQL necesita espacio para escribir logs y archivos temporales.

¿Cómo verificar el espacio en DirectAdmin?

  1. Ve a Información del sistema o System Info.
  2. Busca el apartado Disk Usage.
  3. Si el porcentaje de uso es del 100% o muy cercano (95%+), libera espacio urgente.

¿Qué hacer si el disco está lleno?

  • Borra archivos temporales de tu PrestaShop: logs en /var/log/, caché en var/cache/ (puedes hacerlo desde el File Manager).
  • Vacía la papelera de reciclaje de DirectAdmin (a veces olvidamos que existe).
  • Contacta a tu proveedor de hosting para que te ayude a limpiar el servidor.

Paso 4: Restablecer la contraseña de la base de datos desde DirectAdmin

Si sospechas que la contraseña es incorrecta, lo mejor es cambiarla desde el panel.

Pasos:

  1. En DirectAdmin, ve a MySQL Management.
  2. Verás una lista de bases de datos. Haz clic en el icono de lápiz (editar) de la base de datos que usa tu PrestaShop.
  3. En la sección Usuarios asignados, verás el usuario. Haz clic en Cambiar contraseña.
  4. Escribe una nueva contraseña segura (usa mayúsculas, minúsculas y números).
  5. IMPORTANTE: Actualiza también el archivo parameters.php con la nueva contraseña.

[INFO]: Si cambias la contraseña, PrestaShop dejará de funcionar hasta que actualices el archivo de configuración. Haz ambos cambios de forma coordinada.


Paso 5: Verificar el host de la base de datos

A veces el proveedor de hosting cambia el servidor de bases de datos o usa un nombre diferente a localhost. Por ejemplo, puede ser mysql.tudominio.com o una IP.

¿Cómo saber cuál es el host correcto?

  1. Pregunta a tu soporte técnico (si tienes un plan compartido, suele ser localhost).
  2. Si tienes acceso a phpMyAdmin desde DirectAdmin, fíjate en la URL: suele ser algo como http://tudominio.com/phpmyadmin. El host que ves en la pantalla de inicio de phpMyAdmin es el que debes usar.
  3. También puedes crear un archivo PHP simple para probar:
<?php
$conexion = mysqli_connect("localhost", "tu_usuario", "tu_contraseña", "tu_base_datos");
if (!$conexion) {
    die("Error de conexión: " . mysqli_connect_error());
}
echo "Conexión exitosa";
?>

Guárdalo como test.php en la raíz de tu PrestaShop y ejecútalo desde el navegador. Si te da error, cambia localhost por 127.0.0.1 o el nombre que te indique tu hosting.


Paso 6: Reparar la base de datos desde phpMyAdmin

A veces la base de datos se corrompe (por ejemplo, por un corte de luz o una actualización fallida). Puedes repararla fácilmente.

Pasos:

  1. Desde DirectAdmin, ve a phpMyAdmin (suele estar en el menú de "Advanced" o "Extra Features").
  2. Selecciona la base de datos de tu PrestaShop (la que aparece en parameters.php).
  3. Marca todas las tablas (clic en "Check All").
  4. En el menú desplegable "Con selección:", elige Reparar tabla.
  5. Espera a que termine. Si hay errores graves, te lo indicará.

[TIP]: Si la reparación falla, puedes intentar Optimizar las tablas (es otra opción en el mismo menú). Si nada funciona, restaura desde un backup reciente.


Paso 7: Revisar logs de error de PrestaShop y MySQL

Si después de todo lo anterior el problema persiste, necesitas revisar los logs. Te darán pistas más precisas.

Logs de PrestaShop:

Ve a la carpeta var/logs/ dentro de tu instalación de PrestaShop. Busca archivos como prod.log o dev.log. Ábrelos y busca líneas con "database" o "SQL".

Logs de MySQL (si tienes acceso SSH):

tail -100 /var/log/mysql/error.log

O si usas MariaDB:

tail -100 /var/log/mariadb/mariadb.log

Los errores típicos que puedes ver:

  • "Access denied for user": Credenciales incorrectas.
  • "Can't connect to local MySQL server through socket": El servicio MySQL no está corriendo.
  • "Table 'xxx' is marked as crashed": Tabla corrupta, solución: reparar desde phpMyAdmin.

FAQ: Preguntas frecuentes sobre el error base datos PrestaShop DirectAdmin

1. ¿El error aparece después de migrar mi PrestaShop a otro hosting?

Sí, es muy común. Al migrar, cambian las credenciales y el host. Debes editar parameters.php con los nuevos datos. Si usas Syspanel, recuerda que el acceso es por el puerto 2106.

2. ¿Puedo solucionarlo sin acceso a DirectAdmin?

Si no tienes acceso al panel, contacta a tu proveedor de hosting. Ellos pueden reiniciar MySQL o verificar el espacio en disco. Sin embargo, para editar parameters.php necesitas al menos acceso FTP.

3. ¿Qué hago si borré la base de datos por error?

Si tienes un backup, restáuralo desde DirectAdmin > MySQL Management > Restore. Si no, contacta a soporte, pero es posible que pierdas los datos.

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

Sí, algunos módulos mal codificados pueden sobrescribir la configuración de la base de datos. Prueba a deshabilitar módulos recién instalados. Si no puedes acceder al back office, renombra la carpeta modules temporalmente (desde FTP) para desactivarlos todos.

5. ¿Cómo evito este error en el futuro?

  • Realiza backups periódicos de la base de datos.
  • No modifiques las credenciales a menos que sea necesario.
  • Mantén tu PrestaShop y módulos actualizados.
  • Revisa el espacio en disco cada cierto tiempo.

Resumen final

El error base datos PrestaShop DirectAdmin suele resolverse siguiendo este orden:

  1. Revisa parameters.php → credenciales correctas.
  2. Reinicia MySQL desde DirectAdmin o SSH.
  3. Libera espacio en disco si está lleno.
  4. Cambia la contraseña desde MySQL Management.
  5. Verifica el host (localhost vs IP).
  6. Repara tablas desde phpMyAdmin.
  7. Revisa logs para más detalles.

Si después de todo esto sigues con el problema, no dudes en contactar a tu proveedor de hosting. Como técnico de soporte, te diré que el 90% de las veces se resuelve con el paso 1 o el paso 2.

Espero que este artículo te haya sido de gran ayuda. ¡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