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

Solución a problemas de conexión a base de datos en PrestaShop (Syspanel)

Actualizado el 1 de septiembre de 2025

¡Hola! Soy tu técnico de soporte amigable. 😊 Hoy vamos a resolver uno de los problemas más comunes (y frustrantes) que puedes encontrar al gestionar tu tienda PrestaShop: el temido error de conexión a la base de datos.

No te preocupes, es más fácil de solucionar de lo que parece. Vamos paso a paso, como si lo hiciéramos juntos. Al final de este artículo, sabrás exactamente qué hacer.

¿Qué significa este error y por qué aparece?

Cuando ves un mensaje como "Error de conexión a la base de datos" o "Cannot connect to database" en tu PrestaShop, básicamente significa que tu tienda no puede comunicarse con el "almacén" donde guarda todos sus datos (productos, clientes, pedidos, etc.). Es como si tu tienda no tuviera la llave para abrir su propio almacén.

Las causas más habituales de este error base datos PrestaShop suelen ser:

  • Datos de conexión incorrectos: El usuario, la contraseña, el nombre de la base de datos o el servidor (host) que tienes configurado en PrestaShop no son los correctos.
  • El servidor de base de datos está caído o saturado: Temporalmente, el servicio de MySQL/MariaDB (el motor de la base de datos) puede estar detenido o recibiendo demasiadas peticiones.
  • Problemas de permisos: El usuario de la base de datos no tiene permisos suficientes para acceder o modificar los datos.
  • Archivos de configuración corruptos o modificados: El archivo app/config/parameters.php (o el antiguo config/settings.inc.php) que guarda los datos de conexión puede haberse dañado o tener cambios no deseados.
  • Cambios en el hosting: Si has migrado de servidor, cambiado contraseñas o modificado la configuración de tu panel de control (como Syspanel), los datos antiguos ya no sirven.

Vamos a solucionarlo. Lo primero es identificar dónde estamos.

Primer paso: Accede a tu panel de control (Syspanel)

Para hacer la mayoría de estas comprobaciones, necesitas entrar a tu panel de control de hosting. En nuestro caso, usamos Syspanel. Es tu centro de control para gestionar todo lo relacionado con el servidor.

[TIP] Recuerda que la dirección de acceso a Syspanel es: https://tudominio.com:2106 o la IP de tu servidor seguida de :2106. Por ejemplo: https://192.168.1.100:2106.

Una vez dentro, busca la sección que se llame "Base de Datos" o "Bases de Datos". Ahí verás listadas todas las bases de datos que tienes creadas. Anota el nombre exacto de la base de datos que usa tu PrestaShop, así como el usuario asociado.

Segundo paso: Verifica y corrige los datos de conexión

Aquí está la clave. Vamos a asegurarnos de que los datos que tiene PrestaShop coinciden con los que tiene Syspanel.

### 1. Encuentra el archivo de configuración

Tu tienda guarda los datos de conexión en un archivo. Dependiendo de la versión de PrestaShop, la ruta es:

  • PrestaShop 1.7 y 8.x: [raíz_de_tu_tienda]/app/config/parameters.php
  • PrestaShop 1.6 y anteriores: [raíz_de_tu_tienda]/config/settings.inc.php

[WARNING] Ten mucho cuidado al editar este archivo. Un solo carácter mal puesto (una coma, una comilla) puede romper toda la tienda. Si no te sientes seguro, pide ayuda a tu soporte técnico.

### 2. Conéctate por FTP o al administrador de archivos de Syspanel

Necesitas acceder a los archivos de tu web. Puedes usar un cliente FTP (como FileZilla) o el Administrador de Archivos que viene incluido en Syspanel (normalmente en la sección "Web" o "Avanzado").

### 3. Descarga y edita el archivo

Descarga el archivo parameters.php (o settings.inc.php) a tu ordenador. Ábrelo con un editor de texto plano (como el Bloc de Notas, nunca Word). Busca las líneas que se parecen a estas:

// En parameters.php (PrestaShop 1.7/8)
'database_host' => 'localhost',
'database_port' => '',
'database_name' => 'nombre_de_tu_bd',
'database_user' => 'usuario_de_tu_bd',
'database_password' => 'contraseña_de_tu_bd',
// En settings.inc.php (PrestaShop 1.6)
define('_DB_SERVER_', 'localhost');
define('_DB_NAME_', 'nombre_de_tu_bd');
define('_DB_USER_', 'usuario_de_tu_bd');
define('_DB_PASSWD_', 'contraseña_de_tu_bd');

### 4. Compara con los datos de Syspanel

Ahora vuelve a Syspanel, a la sección de Bases de Datos. Verás algo como esto:

  • Nombre de la Base de Datos: miusuario_nombrebd
  • Usuario: miusuario_nombreusuario
  • Servidor (Host): Normalmente es localhost, pero a veces puede ser una IP o un nombre como mysql.tudominio.com.
  • Contraseña: (No se muestra, tendrías que haberla guardado al crearla o puedes cambiarla desde Syspanel).

[INFO] El Host casi siempre es localhost si la web y la base de datos están en el mismo servidor. Si tu hosting es externo o usas un servicio de bases de datos separado, el host será diferente. Syspanel te lo indica claramente.

Si los datos no coinciden, corrígelos en el archivo. El database_host o _DB_SERVER_ debe ser exactamente el que ves en Syspanel.

### 5. Guarda y sube el archivo

Guarda los cambios en el archivo y súbelo de nuevo a tu servidor, sobrescribiendo el antiguo.

Tercer paso: Comprueba que el servicio de base de datos esté activo

A veces, el problema no son los datos, sino que el motor de base de datos (MySQL/MariaDB) se ha detenido.

### 1. Accede al terminal de Syspanel (SSH)

Syspanel suele incluir un acceso a terminal o consola. Busca una opción que se llame "Terminal" o "SSH". Si no lo ves, puedes usar un programa como PuTTY para conectarte.

### 2. Verifica el estado del servicio

Una vez en la terminal, escribe el siguiente comando y pulsa Enter:

systemctl status mysql

o, si tu sistema usa MariaDB:

systemctl status mariadb

Verás un mensaje largo. Busca la palabra "active (running)". Si ves "inactive (dead)" o "failed", el servicio está caído.

### 3. Reinicia el servicio

Para solucionarlo, escribe:

systemctl restart mysql

o

systemctl restart mariadb

Después, vuelve a comprobar el estado con el comando anterior. Deberías ver "active (running)". Ahora prueba a cargar tu tienda.

[TIP] Si el servicio se cae a menudo, puede ser un problema de recursos del servidor (mucha memoria o CPU). Contacta con tu proveedor de hosting para que lo revise.

Cuarto paso: Verifica los permisos del usuario de la base de datos

Si los datos son correctos y el servicio está activo, el problema puede ser que el usuario no tenga permisos para acceder a la base de datos.

### 1. Accede a la herramienta de gestión de BD en Syspanel

En Syspanel, busca "phpMyAdmin" o "Gestor de Bases de Datos". Es una herramienta web que te permite manejar las bases de datos fácilmente.

### 2. Inicia sesión con los datos de la base de datos

Usa el mismo usuario y contraseña que pusiste en el archivo de configuración de PrestaShop.

Si no puedes iniciar sesión ni siquiera aquí, el problema son los permisos o la contraseña.

### 3. Reasigna permisos (si es necesario)

Desde Syspanel, en la sección de Bases de Datos, suele haber una opción para "Gestionar permisos" o "Añadir usuario a base de datos". Asegúrate de que el usuario tiene marcados todos los privilegios (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.). Lo más seguro es marcar "Todos los privilegios" o "ALL PRIVILEGES".

### 4. Cambia la contraseña (último recurso)

Si todo lo demás falla, desde Syspanel puedes cambiar la contraseña del usuario de la base de datos. Anota la nueva contraseña y luego actualízala en el archivo parameters.php o settings.inc.php como vimos en el paso 2.

Quinto paso: Revisa los logs de error de PrestaShop

A veces, el error de conexión es solo un síntoma de otro problema. Los logs de PrestaShop pueden darte pistas muy valiosas.

### 1. Activa el modo debug de PrestaShop (si puedes acceder al panel de admin)

Si aún puedes entrar al back office de tu tienda, ve a Parámetros Avanzados > Rendimiento y activa el "Modo Depuración" o "Debug Mode". Esto hará que los errores se muestren en pantalla.

### 2. Revisa los logs desde el panel de admin (si puedes acceder)

En Parámetros Avanzados > Logs, verás un historial de errores. Busca entradas que contengan "database", "SQL", "conexión" o "connect".

### 3. Si no puedes acceder al admin, revisa los logs del servidor

A través de Syspanel, busca la sección "Logs" o "Registros". Ahí suele haber logs de errores del servidor web (Apache/Nginx) y de la base de datos. Busca archivos como error.log o mysql.log. Son archivos de texto que puedes leer con el Administrador de Archivos.

Preguntas Frecuentes (FAQ)

Aquí tienes las dudas más comunes que resolvemos en el soporte técnico.

### ¿Por qué veo "Error de conexión a la base de datos" después de migrar mi tienda?

Es el error más típico. Al migrar, los datos de conexión (servidor, usuario, contraseña) cambian. Debes editar el archivo app/config/parameters.php (o config/settings.inc.php) con los nuevos datos que te proporciona tu nuevo hosting o Syspanel. Es el paso 2 de esta guía.

### ¿Qué hago si he olvidado la contraseña de la base de datos?

No pasa nada. Desde Syspanel, ve a la sección de Bases de Datos, busca tu base de datos y el usuario. Deberías ver un botón o enlace que ponga "Cambiar contraseña" o "Reset password". Pon una nueva contraseña segura, anótala y luego actualiza el archivo de configuración de PrestaShop.

### ¿El "host" de la base de datos siempre es "localhost"?

No siempre. En la mayoría de los alojamientos compartidos o VPS básicos, sí, porque la web y la BD están en la misma máquina. Pero si tu base de datos está en un servidor diferente (por ejemplo, un servicio de base de datos en la nube), el host será una dirección IP o un nombre de dominio (como mysql.tudominioweb.com). Syspanel te muestra el host correcto en la sección de Bases de Datos.

### ¿Puedo solucionar el error sin tener que editar archivos manualmente?

Sí, existe una forma más sencilla si aún puedes acceder al panel de administración de tu tienda (back office). Ve a Parámetros Avanzados > Base de Datos (o un nombre similar). Allí podrás introducir los nuevos datos de conexión sin tocar archivos. Si el error es tan grave que no te deja entrar al admin, entonces tocar el archivo es la única opción.

### ¿Qué significa "privilégios insuficientes" en el error de base de datos?

Significa que el usuario que usa PrestaShop no tiene permiso para hacer una acción concreta (por ejemplo, crear una tabla, borrar un registro, etc.). Esto pasa a menudo después de una migración o restauración. La solución es ir a Syspanel, a la gestión de permisos de la base de datos, y asegurarte de que el usuario tiene todos los privilegios (ALL PRIVILEGES) sobre esa base de datos.

Resumen y conclusión

Hemos visto que un error base datos PrestaShop no es el fin del mundo. Siguiendo estos pasos, en la mayoría de los casos lo solucionarás en pocos minutos:

  1. Accede a Syspanel (recuerda, puerto 2106).
  2. Verifica los datos de conexión en el archivo parameters.php o settings.inc.php y compáralos con los de Syspanel.
  3. Comprueba que el servicio MySQL/MariaDB esté activo desde la terminal de Syspanel.
  4. Revisa los permisos del usuario en la base de datos desde Syspanel.
  5. Consulta los logs si el error persiste para obtener más pistas.

Si después de todo esto el problema continúa, no dudes en contactar con tu equipo de soporte técnico. A veces, el problema está en el servidor (firewall, límites de conexión, etc.) que solo el administrador del sistema puede resolver.

Espero que esta guía te haya sido de gran ayuda. ¡Mucho éxito con tu tienda PrestaShop! 🚀

¿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