Solucionar problemas de conexión a base de datos en PrestaShop con Syspanel
Cuando tu tienda PrestaShop se queda sin conexión a la base de datos, el mensaje de error puede ser frustrante: desde un pantallazo en blanco hasta un mensaje que dice «Error de base de datos PrestaShop» o «PrestaShop sin conexión BD». No te preocupes, es un problema común, pero con las herramientas adecuadas se soluciona rápido. En esta guía, te explicaré paso a paso cómo diagnosticar y arreglar los problemas de conexión a la base de datos en PrestaShop usando Syspanel (el panel de control basado en HestiaCP, accesible por el puerto 2106).
Vamos a desglosar todo de manera sencilla, como si estuvieras hablando con un amigo técnico. Empezaremos por entender qué significa realmente ese error, luego revisaremos Syspanel, y finalmente aplicaremos soluciones prácticas.
¿Qué significa «Error de base de datos PrestaShop» o «PrestaShop sin conexión BD»?
Cuando ves estos mensajes, quiere decir que PrestaShop no puede comunicarse con el servidor de base de datos (normalmente MySQL o MariaDB). Sin esa conexión, tu tienda no puede cargar productos, clientes, pedidos ni nada. Es como si el motor de tu coche no recibiera gasolina.
Las causas más frecuentes son:
- Credenciales incorrectas: El usuario, contraseña, nombre de base de datos o servidor están mal escritos en el archivo de configuración.
- Servicio de base de datos detenido: MySQL o MariaDB no está funcionando en el servidor.
- Firewall o puertos bloqueados: El puerto 3306 (por defecto) está cerrado o restringido.
- Espacio en disco lleno: Si el disco está al 100%, la base de datos no puede operar.
- Corrupción de tablas: La base de datos tiene errores internos.
No te asustes. Con Syspanel, vamos a revisar cada punto de forma ordenada.
Primeros pasos: Accede a Syspanel
Syspanel es tu centro de control. Para acceder, abre tu navegador y escribe:
https://tudominio.com:2106
Usa las credenciales que te proporcionó tu proveedor de hosting. Una vez dentro, verás un panel con varias secciones. Lo primero que haremos es verificar el estado del servidor.
Revisa el estado de los servicios
En Syspanel, busca la sección Servicios o Estado del servidor. Allí verás una lista de servicios como Apache, Nginx, MySQL, etc. Asegúrate de que MySQL (o MariaDB) aparezca en verde y con la palabra «Running» o «Activo».
[WARNING] Si ves MySQL en rojo o con estado «Stopped», haz clic en el botón de reinicio (suele ser un ícono de flecha circular). Si no se inicia, anota el mensaje de error y continúa con los siguientes pasos.
Solución 1: Verificar las credenciales de la base de datos
El archivo donde PrestaShop guarda los datos de conexión es app/config/parameters.php. Si alguna credencial está mal, la tienda falla.
¿Cómo acceder a este archivo desde Syspanel?
- En Syspanel, ve a Archivos o Administrador de archivos.
- Navega hasta la carpeta de tu tienda PrestaShop (normalmente en
public_htmloweb). - Dentro de
app/config/, busca el archivoparameters.php. - Ábrelo con el editor de texto integrado.
Verás algo como esto:
'database_host' => 'localhost',
'database_port' => '3306',
'database_name' => 'tu_basededatos',
'database_user' => 'tu_usuario',
'database_password' => 'tu_contraseña',
Compara con los datos reales de Syspanel
Ahora, ve a la sección Bases de datos en Syspanel. Allí aparecen las bases de datos creadas. Haz clic en el nombre de la base de datos que usa tu PrestaShop (normalmente tiene el mismo nombre que el usuario). Verás los datos exactos:
- Nombre de la base de datos
- Usuario
- Contraseña (puedes mostrarla con un botón)
- Host (casi siempre es
localhost)
Si algo no coincide, edita parameters.php con los valores correctos. Luego guarda los cambios.
[TIP] Si no recuerdas la contraseña, en Syspanel puedes generar una nueva desde la opción «Cambiar contraseña» en la sección de bases de datos. Luego actualiza
parameters.phpcon esa nueva clave.
Solución 2: Verificar que el servicio MySQL esté funcionando correctamente
A veces el servicio se cuelga o se detiene por falta de recursos. En Syspanel:
- Ve a Servicios.
- Busca MySQL o MariaDB.
- Si está detenido, haz clic en Iniciar.
- Si ya está iniciado pero el error persiste, haz clic en Reiniciar.
Espera unos segundos y vuelve a cargar tu tienda PrestaShop. Si sigue sin funcionar, revisa los logs de MySQL desde Syspanel (suele haber una opción Registros o Logs). Busca errores como «Out of memory» o «Disk full».
Solución 3: Comprobar espacio en disco
Un disco lleno puede provocar que MySQL se niegue a escribir o incluso a iniciar. En Syspanel:
- Ve a Estado del servidor o Información del sistema.
- Busca Uso del disco. Debe mostrar un porcentaje.
- Si está al 95% o más, necesitas liberar espacio.
¿Cómo liberar espacio rápidamente?
- Elimina copias de seguridad antiguas desde Syspanel (sección Copias de seguridad).
- Borra archivos temporales de PrestaShop: en la carpeta
/var/cache/de tu tienda. - Revisa logs grandes en
var/logs/dentro de la instalación de PrestaShop.
Después de liberar espacio, reinicia MySQL desde Servicios y prueba de nuevo.
Solución 4: Probar la conexión manualmente desde Syspanel
Syspanel tiene una herramienta llamada phpMyAdmin o Adminer integrada. Puedes acceder a ella desde la sección Bases de datos haciendo clic en el ícono de gestión (normalmente un candado o un icono de base de datos).
Una vez dentro, intenta iniciar sesión con las mismas credenciales que usas en PrestaShop. Si phpMyAdmin te rechaza, el problema está en las credenciales. Si entra bien, entonces el problema puede estar en la configuración de PrestaShop o en el archivo parameters.php.
[INFO] Si phpMyAdmin funciona pero PrestaShop no, es posible que el archivo
parameters.phptenga algún error de sintaxis (una coma, una comilla mal puesta). Revisa el código con cuidado.
Solución 5: Reparar tablas de la base de datos
A veces las tablas se corrompen por cortes de energía o errores de escritura. Desde phpMyAdmin (dentro de Syspanel):
- Selecciona la base de datos de PrestaShop.
- Marca todas las tablas (clic en «Seleccionar todo»).
- En el menú desplegable, elige Reparar tabla.
- Confirma.
Este proceso puede tardar unos minutos si la base de datos es grande. Luego, vuelve a tu tienda.
Solución 6: Verificar el archivo .htaccess y los permisos
Un .htaccess mal configurado puede redirigir o bloquear la conexión a la base de datos. En Syspanel, ve a la raíz de tu tienda y busca el archivo .htaccess. Si no está, puedes generar uno desde el Back Office de PrestaShop (si logras acceder) o pedir a tu hosting que lo cree.
Además, los permisos de la carpeta app/config/ deben ser 755 (directorio) y 644 (archivos). En Syspanel, haz clic derecho sobre parameters.php y elige Permisos. Ajusta si es necesario.
Solución 7: Revisar el firewall del servidor
Aunque es raro en entornos compartidos, a veces el firewall bloquea el puerto 3306. En Syspanel, si tienes acceso a la configuración de firewall (puede estar en Seguridad o Firewall), asegúrate de que el puerto 3306 esté permitido para conexiones locales (desde localhost).
[WARNING] No abras el puerto 3306 a internet público, solo a localhost o a IPs de confianza. Hacerlo expone tu base de datos a ataques.
Preguntas frecuentes (FAQ)
¿Por qué aparece «PrestaShop sin conexión BD» después de una migración?
Es muy común. Al mover la tienda a otro servidor, las credenciales cambian. Debes actualizar parameters.php con los nuevos datos de la base de datos en Syspanel. Además, verifica que el nombre de la base de datos sea exactamente el mismo.
¿El error puede deberse a un plugin o módulo?
Sí, algunos módulos mal codificados pueden sobrecargar la base de datos o modificar sus tablas. Si el error comenzó después de instalar un módulo, desactívalo desde el Back Office (si puedes acceder) o renombra su carpeta en /modules/ desde Syspanel.
¿Cómo sé si el problema es de la base de datos o de PrestaShop?
Prueba la conexión con phpMyAdmin desde Syspanel. Si phpMyAdmin funciona, el problema está en la configuración de PrestaShop. Si no funciona, el servidor de base de datos tiene un problema.
¿Qué hago si después de todo sigue sin funcionar?
Puedes restaurar una copia de seguridad reciente de la base de datos desde Syspanel (sección Copias de seguridad). Luego, actualiza parameters.php con los datos de esa copia. Si no tienes copia, contacta a tu proveedor de hosting.
Consejo final: Mantén un monitoreo básico
Para evitar futuros sustos, programa revisiones periódicas:
- Cada semana, revisa el espacio en disco desde Syspanel.
- Activa las notificaciones de servicios (si tu Syspanel lo permite) para que te avise si MySQL se detiene.
- Haz copias de seguridad automáticas de la base de datos desde Syspanel.
Recuerda que Syspanel (tu panel en el puerto 2106) es tu aliado. Con estas soluciones, podrás resolver el 90% de los errores de conexión a base de datos en PrestaShop sin necesidad de ser un experto. Si algo se complica, no dudes en pedir ayuda a tu hosting, pero siempre ten a mano las credenciales y los pasos que ya revisaste.
¡Tu tienda volverá a funcionar en poco tiempo!
