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

PrestaShop: Solucionar el error de conexión a la base de datos

Actualizado el 4 de abril de 2026

¡Hola! Soy tu técnico de soporte amigable. Si estás aquí, es probable que tu tienda PrestaShop esté mostrando un mensaje de error de conexión a la base de datos. No te preocupes, es un problema muy común y, aunque parezca grave, suele tener solución. En esta guía, voy a explicarte paso a paso cómo identificar la causa y solucionar el error de conexión a la base de datos en PrestaShop, pensando en ti, que quizás no eres un experto en sistemas. Vamos a ello.

¿Qué es el error de conexión a la base de datos en PrestaShop?

PrestaShop es un sistema de gestión de contenido (CMS) que utiliza una base de datos (normalmente MySQL o MariaDB) para almacenar toda la información de tu tienda: productos, pedidos, clientes, etc. Cuando tu tienda no puede comunicarse con esa base de datos, aparece un error. Puede ser algo tan simple como "Error de conexión a la base de datos" o un mensaje más técnico como "MySQL server has gone away" o "Cannot connect to database".

Este error puede ocurrir por muchas razones, desde un cambio de contraseña hasta un problema con el servidor. Lo importante es que no entres en pánico. Sigue los pasos que te daré y, en la mayoría de los casos, podrás resolverlo sin necesidad de un técnico.

Causas comunes del error de conexión a la base de datos

Antes de lanzarnos a soluciones, es útil entender qué puede estar pasando. 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.
  • Servidor de base de datos caído: MySQL o MariaDB no están funcionando en el servidor.
  • Problemas de permisos: El usuario de la base de datos no tiene permisos suficientes para acceder a ella.
  • Cambios en el hosting: Si has migrado tu tienda o cambiado de servidor, las credenciales pueden haber cambiado.
  • Archivo de configuración corrupto: El archivo app/config/parameters.php puede estar dañado o tener información incorrecta.
  • Sobrecarga del servidor: Demasiadas conexiones o un pico de tráfico pueden saturar la base de datos.
  • Firewall o bloqueo de puertos: El puerto de MySQL (por defecto 3306) puede estar bloqueado.

Paso 1: Identificar el tipo de error

Lo primero es leer el mensaje de error. PrestaShop suele mostrar un código o una descripción. Anótalo o haz una captura de pantalla. Algunos ejemplos:

  • "Error de conexión a la base de datos"
  • "MySQL server has gone away"
  • "Cannot connect to MySQL server"
  • "Access denied for user"

Cada uno apunta a una causa diferente, pero no te preocupes, los pasos que te daré cubren la mayoría.

Paso 2: Acceder al archivo de configuración

La mayoría de los errores de conexión se deben a que el archivo app/config/parameters.php tiene datos incorrectos. Para solucionarlo, necesitas acceder a tu servidor. Puedes hacerlo a través de:

  • cPanel: Busca el "Administrador de archivos".
  • FTP: Usa un cliente como FileZilla.
  • Syspanel (si usas HestiaCP): Accede a tu panel de control Syspanel en tu-dominio.com:2106 (puerto 2106). Allí podrás navegar por los archivos.

Una vez dentro, ve a la carpeta raíz de tu PrestaShop (normalmente public_html o www). Luego, abre la carpeta app/config y busca el archivo parameters.php. Ábrelo con un editor de texto (como Bloc de Notas o el editor del panel).

Dentro verás algo como esto:

<?php
return array(
    'parameters' => array(
        'database_host' => 'localhost',
        'database_port' => '',
        'database_name' => 'nombre_base_datos',
        'database_user' => 'usuario_base_datos',
        'database_password' => 'contraseña',
        'database_prefix' => 'ps_',
        // ... otros parámetros
    ),
);

Revisa estos valores cuidadosamente. Asegúrate de que coincidan con los datos de tu base de datos. Si no estás seguro, en tu panel de hosting (cPanel o Syspanel) suele haber una sección llamada "Bases de datos MySQL" donde puedes ver los nombres de las bases de datos y los usuarios.

[TIP] Si cambiaste la contraseña de la base de datos recientemente, este es el lugar donde debes actualizarla.

Paso 3: Verificar que MySQL esté funcionando

A veces el problema no está en las credenciales, sino en que el servicio de base de datos no está activo. Para comprobarlo:

  • En cPanel: Ve a "MySQL Databases" o "MySQL Services". Busca un botón para reiniciar o verificar el estado.
  • En Syspanel (HestiaCP): Ve a "Servicios" y busca MySQL o MariaDB. Debería estar en verde. Si está en rojo, puedes reiniciarlo desde ahí.
  • Por SSH (si tienes acceso): Escribe el comando sudo systemctl status mysql o sudo systemctl status mariadb. Si no está activo, usa sudo systemctl restart mysql.

Si el servicio está caído, al reiniciarlo tu tienda debería volver a funcionar.

Paso 4: Comprobar permisos del usuario de la base de datos

Incluso si las credenciales son correctas, el usuario puede no tener permisos para acceder a la base de datos. Esto suele pasar después de migraciones o restauraciones.

  • En cPanel: Ve a "MySQL Databases". Busca tu base de datos y el usuario asignado. Asegúrate de que tenga "Todos los privilegios" (ALL PRIVILEGES). Si no, asígnaselos.
  • En Syspanel (HestiaCP): Ve a "Bases de datos" y edita los permisos del usuario. Marca todos los privilegios.
  • Por SSH: Puedes usar comandos como GRANT ALL PRIVILEGES ON nombre_base_datos.* TO 'usuario'@'localhost'; y luego FLUSH PRIVILEGES;.

[WARNING] Si no estás seguro de cómo hacer esto, pide ayuda a tu proveedor de hosting. No quieres borrar datos accidentalmente.

Paso 5: Restaurar desde un backup (si todo falla)

Si después de revisar credenciales, permisos y servicios el error persiste, puede que el archivo parameters.php esté corrupto o que la base de datos tenga un problema. En ese caso, restaurar desde un backup suele ser la solución más rápida.

  • En cPanel: Usa "Backup" o "Restaurar copia de seguridad".
  • En Syspanel (HestiaCP): Ve a "Backups" y restaura la última copia de tu sitio.
  • Si tienes un backup manual: Reemplaza el archivo parameters.php por una versión anterior que funcione. También puedes restaurar la base de datos desde un archivo .sql.

Recuerda que si restauras un backup, perderás los cambios realizados después de la fecha del backup. Por eso es importante hacer copias de seguridad periódicas.

Paso 6: Probar la conexión manualmente

Para asegurarte de que el problema no es de PrestaShop sino de la base de datos, puedes probar la conexión manualmente. Crea un archivo PHP simple (por ejemplo, test_db.php) en la raíz de tu tienda con este contenido:

<?php
$link = mysqli_connect("localhost", "usuario", "contraseña", "nombre_base_datos");
if (!$link) {
    die("Error: " . mysqli_connect_error());
} else {
    echo "Conexión exitosa!";
}
mysqli_close($link);
?>

Sustituye localhost, usuario, contraseña y nombre_base_datos por los datos reales. Luego accede a tudominio.com/test_db.php. Si ves "Conexión exitosa!", el problema está en PrestaShop (quizás el archivo de configuración). Si ves un error, el problema es de la base de datos.

Elimina este archivo después de la prueba por seguridad.

Paso 7: Soluciones avanzadas (para SysAdmins)

Si eres un SysAdmin o tienes acceso a la línea de comandos, aquí tienes algunas soluciones adicionales:

  • Aumentar el límite de conexiones: Si el error es "Too many connections", edita el archivo de configuración de MySQL (/etc/mysql/my.cnf o /etc/my.cnf) y aumenta max_connections.
  • Revisar el log de errores: Busca en /var/log/mysql/error.log o /var/log/mariadb/error.log para ver detalles específicos.
  • Reparar la base de datos: Usa mysqlcheck -r -u usuario -p nombre_base_datos para reparar tablas corruptas.
  • Verificar el puerto: Asegúrate de que el puerto 3306 esté abierto en el firewall. En Syspanel (HestiaCP), puedes gestionar el firewall desde el panel.

Preguntas frecuentes (FAQ)

¿Por qué mi PrestaShop muestra "Error de conexión a la base de datos" después de cambiar la contraseña?

Porque el archivo app/config/parameters.php sigue teniendo la contraseña antigua. Actualízala en ese archivo.

¿Puedo solucionar el error sin acceder al servidor?

En algunos casos, si tu hosting tiene un panel como cPanel o Syspanel, puedes editar el archivo de configuración desde el administrador de archivos. Si no, necesitarás FTP o acceso SSH.

¿Qué hago si no recuerdo la contraseña de la base de datos?

En cPanel o Syspanel, puedes cambiar la contraseña desde la sección de bases de datos. Luego actualízala en el archivo parameters.php.

¿El error puede deberse a un plugin o tema?

Sí, a veces un módulo mal codificado puede saturar la base de datos, pero lo más probable es que sea un problema de credenciales o servicio.

¿Debo contactar a mi proveedor de hosting?

Si después de seguir todos estos pasos el error persiste, sí, contacta a tu proveedor. Puede ser un problema del servidor.

Conclusión

El error de conexión a la base de datos en PrestaShop es frustrante, pero casi siempre tiene solución. Recuerda que la clave está en revisar el archivo app/config/parameters.php, verificar que el servicio MySQL esté activo y comprobar los permisos del usuario. Si todo falla, restaura un backup o pide ayuda a tu hosting.

[INFO] Si usas Syspanel (HestiaCP), recuerda que el acceso es por el puerto 2106. Allí encontrarás herramientas para gestionar bases de datos y archivos fácilmente.

Espero que esta guía te haya sido útil. Si tienes más dudas, no dudes en dejar un comentario o contactar a tu soporte técnico. ¡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