Solución a error de conexión base de datos en PrestaShop con Syspanel
¿Tu tienda PrestaShop ha dejado de funcionar y ves un mensaje de error sobre la base de datos? No te preocupes, es uno de los problemas más comunes, pero también de los que tienen solución más rápida si sabes dónde mirar.
En este artículo, te voy a guiar paso a paso para solucionar el error base datos PrestaShop cuando usas Syspanel (el panel de control de tu servidor, antes conocido como HestiaCP). Recuerda que para acceder a Syspanel debes usar el puerto 2106 (ejemplo: tudominio.com:2106).
Vamos a convertir ese error en un recuerdo lejano. No necesitas ser un experto en programación, solo seguir las instrucciones al pie de la letra.
¿Por qué aparece este error en PrestaShop?
El mensaje típico 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 puede hablar con MySQL/MariaDB, que es donde guarda todos tus productos, clientes y configuraciones.
Las causas más frecuentes son:
- Credenciales incorrectas en el archivo de configuración de PrestaShop (
app/config/parameters.php). - La base de datos se ha caído o el servicio MySQL no está corriendo.
- El usuario de la base de datos no tiene permisos o ha sido eliminado.
- Cambios en la contraseña de la base de datos desde Syspanel.
- La IP del servidor ha cambiado o hay un problema de firewall.
- El disco duro del servidor está lleno, impidiendo que MySQL funcione.
No entres en pánico. Vamos a revisar cada punto.
Paso 1: Accede a Syspanel (puerto 2106)
Lo primero es entrar a tu panel de control. Abre tu navegador y escribe:
https://tudominio.com:2106
[INFO] Si no recuerdas la URL exacta de tu Syspanel, pregúntale a tu proveedor de hosting. El puerto 2106 es el estándar para el panel que usamos aquí.
Ingresa con tu usuario y contraseña de administrador del servidor (no los de PrestaShop, sino los de acceso a Syspanel).
Paso 2: Verifica que el servicio MySQL esté activo
Dentro de Syspanel, busca la sección "Servicios" o "Service Status". Normalmente está en el menú lateral izquierdo.
Ahí verás una lista de servicios (Apache, Nginx, MySQL, etc.). Busca MySQL o MariaDB.
- Si está en verde o dice "running", el servicio está activo. Pasa al siguiente paso.
- Si está en rojo o dice "stopped", haz clic en el botón de "Start" o "Reiniciar".
[WARNING] Si no puedes iniciarlo, puede que el disco esté lleno. Ve a la sección de "Server Stats" o "Uso de disco" para verificarlo. Si está al 100%, libera espacio (borra logs, backups antiguos, etc.) e intenta de nuevo.
Paso 3: Revisa las credenciales de la base de datos en PrestaShop
El archivo clave es app/config/parameters.php. Debes asegurarte de que los datos que contiene coinciden con los que creaste en Syspanel.
¿Cómo encuentro el archivo?
- Conéctate a tu servidor por FTP o usa el explorador de archivos de Syspanel.
- Ve a la carpeta raíz de tu tienda PrestaShop (normalmente
public_htmlowww). - Abre la carpeta
app, luegoconfig, y busca el archivoparameters.php.
¿Qué debo revisar?
Abre el archivo con un editor de texto (Bloc de notas, Sublime Text, etc.). Busca estas líneas:
'database_host' => 'localhost',
'database_port' => '3306',
'database_name' => 'nombre_de_tu_bd',
'database_user' => 'usuario_de_tu_bd',
'database_password' => 'contraseña_de_tu_bd',
[TIP] A veces
database_hostpuede ser una IP como127.0.0.1o incluso un nombre de servidor remoto. Si tu hosting es compartido, suele serlocalhost.
Ahora, compara estos datos con los que tienes en Syspanel.
Paso 4: Obtén los datos correctos desde Syspanel
Dentro de Syspanel, busca la sección "Bases de Datos" o "Databases".
Ahí verás una lista de todas las bases de datos que has creado. Busca la que corresponde a tu PrestaShop.
- Nombre de la base de datos: Anótalo exactamente, respetando mayúsculas y minúsculas.
- Usuario: Junto a la base de datos suele aparecer el usuario asociado. Si no, haz clic en "Editar" o "Administrar" para ver los detalles.
- Contraseña: Si no la recuerdas, puedes generar una nueva. Normalmente hay un botón "Cambiar contraseña".
[WARNING] Si cambias la contraseña desde Syspanel, DEBES actualizarla también en el archivo
parameters.phpde PrestaShop. Si no, el error persistirá.
Paso 5: Corrige el archivo parameters.php
Ahora que tienes los datos correctos, edita el archivo parameters.php con los valores exactos que viste en Syspanel.
Guarda los cambios y vuelve a cargar tu tienda. Si el error era por credenciales, ya debería funcionar.
Paso 6: Prueba la conexión manualmente (opcional pero útil)
Si aún tienes dudas, puedes hacer una prueba rápida desde Syspanel.
- Ve a "Bases de Datos" y haz clic en "phpMyAdmin" (o en "Acceder" al lado de tu base de datos).
- Se abrirá una ventana de phpMyAdmin. Si te pide usuario y contraseña, usa los mismos que anotaste.
- Si entras sin problemas, la base de datos responde bien. El problema está en PrestaShop.
- Si no puedes entrar, los datos de acceso son incorrectos. Vuelve al paso 4.
Paso 7: Revisa los permisos del usuario de la base de datos
A veces el usuario existe y la contraseña es correcta, pero no tiene permisos para acceder desde localhost (o desde la IP de tu servidor).
En Syspanel, dentro de la sección de bases de datos, busca la opción "Permisos" o "Hosts permitidos".
- Asegúrate de que el usuario tenga acceso desde
localhost(o127.0.0.1). - Si tu PrestaShop está en un servidor diferente al de la base de datos, necesitarás poner la IP del servidor web.
[INFO] En la mayoría de los casos, con
localhostes suficiente. Si tu hosting es compartido, el proveedor ya lo tiene configurado.
Paso 8: Limpia la caché de PrestaShop
A veces, aunque arregles la conexión, PrestaShop sigue mostrando el error porque tiene una caché obsoleta.
Para limpiarla manualmente:
- Conéctate por FTP a la carpeta raíz de tu tienda.
- Borra todo el contenido de la carpeta
var/cache(ocacheen versiones antiguas). No borres la carpeta, solo lo que hay dentro. - También puedes borrar el archivo
config/parameters.php(no, espera, no hagas eso). Mejor solo la caché.
[TIP] Si no tienes acceso FTP, puedes hacerlo desde Syspanel: ve a "Archivos" > "Explorador de archivos", navega hasta la carpeta
var/cachey elimina todo su contenido.
Paso 9: Verifica el archivo .htaccess (casos raros)
En muy contadas ocasiones, un .htaccess corrupto puede interferir con la conexión a la base de datos.
- Desde FTP o el explorador de Syspanel, renombra el archivo
.htaccessen la raíz de tu PrestaShop a.htaccess_backup. - Recarga tu tienda. Si funciona, el
.htaccesstenía algo malo. - Para regenerarlo, ve al back office de PrestaShop (si puedes acceder) a "Parámetros de la tienda" > "Tráfico y SEO" > "URLs amigables" y haz clic en "Guardar" (sin cambiar nada). Esto lo recrea automáticamente.
Preguntas Frecuentes (FAQ)
Aquí tienes las dudas más comunes que resuelven este problema:
¿Qué hago si el error persiste después de todo?
Reinicia el servicio MySQL desde Syspanel (Paso 2). A veces un simple reinicio soluciona bloqueos temporales.
¿Puedo cambiar el nombre de la base de datos sin perder datos?
Sí, pero es un proceso más complejo. Mejor no lo hagas a menos que sepas exportar e importar bases de datos. Si es necesario, contacta a tu soporte técnico.
¿El error "Too many connections" está relacionado?
Sí. Significa que hay demasiadas conexiones abiertas a la base de datos. Puedes aumentarlo en Syspanel editando el archivo de configuración de MySQL (/etc/mysql/my.cnf), buscando max_connections y subiendo el número. Luego reinicia MySQL.
¿Por qué Syspanel me pide puerto 2106?
Por seguridad, el panel de control no usa los puertos estándar (80, 443). El 2106 es el puerto por defecto para HestiaCP (Syspanel). No intentes cambiarlo a menos que sepas lo que haces.
¿Y si no tengo acceso a Syspanel?
Entonces el problema es de tu proveedor de hosting. Contacta con su soporte técnico y diles que tienes un error base datos PrestaShop y necesitan verificar el servicio MySQL y las credenciales.
Resumen rápido
- Accede a Syspanel (puerto 2106) y verifica que MySQL esté activo.
- Revisa las credenciales en
app/config/parameters.phpde PrestaShop. - Compara con los datos de la base de datos en Syspanel.
- Corrige el archivo si es necesario.
- Limpia la caché de PrestaShop.
- Reinicia MySQL si todo lo demás falla.
Con estos pasos, el 99% de los errores de conexión a base de datos en PrestaShop se solucionan. No te olvides de hacer copias de seguridad periódicas de tu base de datos desde Syspanel, por si acaso.
[TIP FINAL] Si después de todo esto el error sigue, puede que tu archivo
parameters.phpesté dañado o que el usuario de la base de datos haya sido eliminado. Crea un nuevo usuario desde Syspanel, asígnale todos los privilegios sobre la base de datos, actualiza el archivo y listo.
¡Espero que tu tienda vuelva a funcionar en pocos minutos!
