¿Qué significa el error 'Link to database cannot be established' en PrestaShop?
Este mensaje es uno de los fallos más críticos en PrestaShop, ya que interrumpe totalmente el funcionamiento de tu tienda tanto en el Front Office como en el Back Office. Ocurre cuando el núcleo de la aplicación intenta realizar una conexión con el motor de base de datos MySQL o MariaDB y la solicitud es rechazada o no recibe respuesta.
Causas principales de la pérdida de conexión con la base de datos
- Credenciales incorrectas (nombre de la base de datos, usuario, contraseña o host) tras una migración o cambio de hosting.
- El servicio MySQL/MariaDB ha dejado de ejecutarse o se ha colapsado por falta de memoria RAM en el servidor.
- Límite de conexiones simultáneas alcanzado por picos de tráfico o consultas lentas acumuladas.
- Tablas de la base de datos corruptas que impiden la inicialización correcta de las sesiones.
Método 1: Verificar las credenciales en el archivo parameters.php
La causa más frecuente surge tras mover la tienda de servidor o modificar usuarios en cPanel. Sigue estos pasos para comprobar los datos de acceso:
- Accede a los archivos de tu tienda mediante FTP o el Administrador de Archivos de tu panel de hosting.
- Navega hasta la ruta
/app/config/parameters.php(en PrestaShop 1.7 y versiones 8.x) o/config/settings.inc.php(en versiones 1.6). - Abre el archivo en modo edición y revisa cuidadosamente las siguientes líneas:
database_host,database_name,database_userydatabase_password. - Asegúrate de que
database_hosttenga el valor correcto; generalmente es127.0.0.1olocalhost, aunque ciertos proveedores exigen una IP externa o un subdominio específico. - Guarda los cambios y recarga tu tienda para verificar si el error ha desaparecido.
Método 2: Comprobar el estado del servicio de base de datos
Si las credenciales son válidas, el motor de base de datos podría haberse detenido por sobrecarga en el servidor:
- Si tienes un servidor VPS o dedicado con acceso SSH, ejecuta el comando
systemctl status mysqlosystemctl status mariadbpara verificar si el servicio está activo. - Si aparece como inactivo o con error, reinícialo ejecutando
sudo systemctl restart mysql. - Si utilizas un hosting compartido, ingresa a cPanel y comprueba el uso de recursos; si alcanzaste el tope de memoria física (RAM), contacta con tu soporte técnico para que reinicien el proceso o amplíen los límites.
Método 3: Reparar tablas dañadas desde phpMyAdmin
Un bloqueo o caída brusca del servidor puede corromper tablas clave del sistema, como las encargadas de gestionar sesiones o carritos:
- Inicia sesión en phpMyAdmin desde el panel de control de tu hosting.
- Selecciona la base de datos vinculada a tu tienda PrestaShop en la columna izquierda.
- Marca la casilla
Seleccionar todoubicada al final del listado de tablas. - En el menú desplegable que aparece junto a la casilla, selecciona la opción
Reparar la tabla(oRepair table). - Una vez finalizado el proceso de optimización y reparación, borra la caché del navegador y recarga tu sitio web.