Cómo solucionar el error 'No se puede conectar a la base de datos' en PrestaShop (Syspanel)
¿Qué significa el error "No se puede conectar a la base de datos" en PrestaShop?
Cuando intentas acceder a tu tienda PrestaShop y te aparece el mensaje "No se puede conectar a la base de datos", significa que tu instalación de PrestaShop no logra establecer una comunicación con el servidor MySQL o MariaDB donde se almacenan todos tus productos, pedidos, clientes y configuraciones.
Este es uno de los errores más comunes en PrestaShop y suele aparecer tanto en la parte pública de la tienda como en el panel de administración. La buena noticia es que, en la mayoría de los casos, tiene solución y no implica perder tus datos.
Puede deberse a causas muy variadas: desde un cambio de contraseña de la base de datos hasta un fallo del servidor, pasando por archivos de configuración corruptos o problemas con el acceso a través de Syspanel (el panel de control que utiliza HestiaCP, y que se accede por el puerto 2106).
A lo largo de esta guía te explicaré paso a paso cómo diagnosticar y solucionar este error, incluso si no tienes mucha experiencia técnica. Vamos a ello.
¿Por qué aparece el error de conexión a la base de datos en PrestaShop?
Antes de lanzarnos a solucionar el problema, es importante entender qué lo causa. PrestaShop guarda un archivo llamado parameters.php en la carpeta app/config/ que contiene los datos de conexión a la base de datos: nombre de la base, usuario, contraseña y servidor.
Si cualquiera de estos datos es incorrecto, o si el servidor de bases de datos está caído o bloqueado, verás el temido mensaje de error.
Las causas más frecuentes son:
- Cambio de contraseña de la base de datos desde Syspanel sin actualizar el archivo de configuración de PrestaShop.
- El servicio MySQL/MariaDB está detenido o se ha reiniciado con errores.
- La base de datos ha sido eliminada o su nombre ha cambiado.
- El usuario de la base de datos no tiene permisos suficientes o ha sido eliminado.
- Problemas de permisos en el archivo
parameters.php. - El servidor de base de datos está saturado o bloqueado por seguridad.
- Migración de hosting o cambio de servidor sin actualizar la configuración.
Primeros pasos: verifica el estado de tu servidor y de Syspanel
Cuando aparece este error, lo primero que debes hacer es mantener la calma y comprobar si el problema es general o solo afecta a PrestaShop. Te recomiendo seguir este orden:
1. Comprueba si otros sitios web funcionan
Si tienes más de una web alojada en el mismo servidor, intenta acceder a ellas. Si también fallan, el problema es del servidor o de la base de datos en general, no solo de PrestaShop.
2. Accede a Syspanel para revisar el estado de los servicios
Syspanel es el panel de control que te permite gestionar tu hosting, y en este caso concreto hablamos del que utiliza HestiaCP. Para acceder a él, escribe en tu navegador:
https://tu-dominio.com:2106
[INFO] Recuerda que el puerto de acceso a Syspanel es el 2106. Si no lo recuerdas, esta es la forma correcta de acceder.
Una vez dentro, busca la sección de Servicios o Servicios del sistema. Ahí podrás ver si MySQL/MariaDB está activo. Si aparece en rojo o detenido, ese es el origen del problema.
3. Reinicia el servicio de base de datos desde Syspanel
En Syspanel, localiza el servicio de base de datos (MySQL o MariaDB) y haz clic en el botón de reiniciar. Esto suele resolver problemas temporales de conexión.
[WARNING] Si el servicio no se reinicia correctamente, anota el mensaje de error que aparece. Ese dato será muy útil si necesitas contactar con soporte técnico.
Solución 1: Verifica y actualiza el archivo parameters.php de PrestaShop
Esta es la causa más habitual del error "No se puede conectar a la base de datos", sobre todo después de cambiar la contraseña de la base de datos o de migrar el sitio.
¿Dónde está el archivo?
El archivo se encuentra en la ruta:
tu-dominio.com/app/config/parameters.php
¿Cómo saber si el archivo es correcto?
Accede a tu hosting por FTP o por el administrador de archivos de Syspanel, y abre el archivo parameters.php. Deberías ver algo parecido a esto:
'database_host' => 'localhost',
'database_name' => 'tu_basededatos',
'database_user' => 'tu_usuario',
'database_password' => 'tu_contraseña',
Pasos a seguir:
- Ve a Syspanel (puerto 2106) y revisa cuál es el nombre exacto de tu base de datos, el usuario y la contraseña actual.
- Compara esos datos con los que aparecen en
parameters.php. - Si no coinciden, edita el archivo con los datos correctos.
- Guarda los cambios y sube el archivo de nuevo al servidor.
- Intenta acceder a tu tienda.
[TIP] Antes de editar, haz siempre una copia de seguridad del archivo original por si algo sale mal.
Solución 2: Comprueba los permisos del archivo parameters.php
Si los datos son correctos pero el error persiste, es posible que el archivo tenga permisos demasiado restrictivos o demasiado abiertos.
Los permisos recomendados para parameters.php son 644 (lectura y escritura para el propietario, lectura para el resto).
Para cambiarlos desde Syspanel:
- Accede al administrador de archivos de Syspanel.
- Localiza
parameters.php. - Haz clic derecho y selecciona "Permisos" o "CHMOD".
- Introduce el valor 644 y guarda.
[WARNING] Nunca dejes los permisos en 777, ya que supone un riesgo de seguridad grave para tu tienda.
Solución 3: Verifica que la base de datos existe y tiene el nombre correcto
A veces, por error, se elimina la base de datos o se crea una nueva con otro nombre. Para comprobarlo:
- Entra en Syspanel (puerto 2106).
- Busca la sección de Bases de datos.
- Anota el nombre exacto de la base de datos y el usuario asociado.
- Compara con lo que aparece en
parameters.php.
Si la base de datos no existe, tendrás que crearla de nuevo e importar una copia de seguridad reciente.
[INFO] Si no tienes copia de seguridad, contacta con tu proveedor de hosting. A veces pueden recuperar bases de datos eliminadas desde copias internas.
Solución 4: Revisa si el usuario de la base de datos tiene permisos
En ocasiones, el usuario existe pero no tiene permisos para acceder a la base de datos. Esto puede pasar tras una migración o una restauración.
Desde Syspanel:
- Ve a la sección de Bases de datos.
- Localiza tu base de datos y el usuario asignado.
- Edita el usuario y asegúrate de que tiene todos los privilegios sobre la base de datos.
- Guarda los cambios y prueba de nuevo.
Solución 5: Limpia la caché de PrestaShop
A veces, el error persiste aunque la configuración sea correcta porque PrestaShop guarda en caché datos antiguos de conexión.
Para limpiar la caché manualmente:
- Accede por FTP a tu hosting.
- Borra el contenido de la carpeta
var/cache/(todos los archivos y subcarpetas). - También puedes borrar el contenido de
app/cache/si existe (en versiones antiguas). - Recarga tu tienda.
[TIP] Al borrar la caché, PrestaShop tardará unos segundos en regenerarla. No te preocupes si la primera carga es más lenta de lo normal.
Solución 6: Comprueba los logs de error del servidor
Si ninguna de las soluciones anteriores funciona, es hora de mirar los registros del servidor. Desde Syspanel puedes acceder a los logs de error de PHP y MySQL.
Busca errores como:
- "Access denied for user"
- "Unknown database"
- "Connection refused"
- "Too many connections"
Estos mensajes te darán pistas muy concretas sobre el problema real.
Solución 7: Revisa si el servidor de base de datos está bloqueado por IP
Algunos servidores de hosting tienen sistemas de seguridad que bloquean direcciones IP tras varios intentos fallidos de conexión.
Si tienes acceso a Syspanel, busca la sección de Seguridad o Firewall y verifica que tu IP no esté bloqueada.
[INFO] Si tu IP está bloqueada, puedes desbloquearla temporalmente desde Syspanel o contactar con soporte para que lo hagan.
Solución 8: Verifica que el puerto de conexión es correcto
PrestaShop se conecta a la base de datos normalmente a través del puerto 3306 (el estándar de MySQL). Sin embargo, algunos servidores usan puertos alternativos por seguridad.
En parameters.php, si ves una línea como:
'database_port' => '3306',
Asegúrate de que coincide con el puerto que usa tu servidor. Puedes consultarlo en Syspanel en la configuración de la base de datos.
Solución 9: Restaura una copia de seguridad reciente
Si has llegado hasta aquí y el error persiste, puede que haya un problema más profundo en la configuración o que algún archivo se haya dañado.
La opción más rápida suele ser restaurar una copia de seguridad reciente de tu tienda y de tu base de datos.
Desde Syspanel:
- Ve a la sección de Copias de seguridad.
- Restaura la copia más reciente de tu base de datos.
- Si también tienes copia de los archivos, restaura la que coincida con la fecha de la base de datos.
- Después de restaurar, limpia la caché de PrestaShop.
[WARNING] Esta operación sobrescribirá los datos actuales. Si has hecho cambios recientes, asegúrate de que no te importa perderlos o haz una copia de seguridad previa.
Preguntas frecuentes sobre el error de conexión a la base de datos en PrestaShop
¿Puedo perder mis datos si aparece este error?
No necesariamente. En la mayoría de los casos, los datos siguen intactos en la base de datos. El error solo indica que PrestaShop no puede acceder a ellos.
¿Es seguro editar el archivo parameters.php manualmente?
Sí, siempre que sepas lo que haces y hagas una copia de seguridad previa. Es un archivo de configuración estándar y editable.
¿Necesito conocimientos avanzados para solucionar este error?
No. Siguiendo esta guía paso a paso, la mayoría de usuarios sin experiencia técnica pueden resolver el problema. Si llegas a un punto donde no te sientes seguro, contacta con soporte.
¿Cuánto tiempo se tarda en solucionar?
Depende de la causa. Si es un cambio de contraseña, puedes resolverlo en 10 minutos. Si es un problema del servidor, puede llevar más tiempo.
¿Qué hago si nada de esto funciona?
Si has probado todas las soluciones y el error persiste, contacta con tu proveedor de hosting. Ellos tienen acceso directo al servidor y podrán diagnosticar el problema desde su lado.
Consejos finales para evitar este error en el futuro
Para que no vuelvas a encontrarte con el error "No se puede conectar a la base de datos" en PrestaShop, te recomiendo:
- Anota siempre los datos de conexión de tu base de datos en un lugar seguro.
- Si cambias la contraseña desde Syspanel, actualiza inmediatamente el archivo
parameters.php. - Realiza copias de seguridad periódicas de tu base de datos y de tus archivos.
- Mantén PrestaShop y sus módulos actualizados.
- No dejes los permisos de archivos sensibles en 777.
- Si migras de servidor, asegúrate de actualizar todos los datos de conexión.
Conclusión
El error "No se puede conectar a la base de datos" en PrestaShop es un problema común pero perfectamente solucionable. La clave está en diagnosticar correctamente la causa: revisar los datos de conexión, el estado del servicio, los permisos de archivos y la configuración de la base de datos desde Syspanel (recuerda, accesible por el puerto 2106).
La mayoría de las veces, el problema se resuelve actualizando el archivo parameters.php con los datos correctos o reiniciando el servicio de base de datos. Si has seguido todos los pasos de esta guía y el error persiste, no dudes en contactar con tu proveedor de hosting, que podrá ayudarte desde el servidor.
Espero que esta guía te haya sido de utilidad y que tu tienda vuelva a funcionar correctamente. Si te ha quedado alguna duda, repasa los pasos con calma o busca ayuda profesional. ¡Tu PrestaShop estará operativo en poco tiempo!
