Solución de errores comunes de conexión a la base de datos en PrestaShop
¿Por qué aparece el error de base de datos en PrestaShop?
Si estás leyendo esto, es muy probable que hayas visto un mensaje parecido a "Error de conexión con la base de datos" o "PrestaShop no puede conectarse a la base de datos" al intentar acceder a tu tienda. No te preocupes, es uno de los problemas más comunes y, en la gran mayoría de los casos, tiene solución en pocos minutos.
El error base de datos prestashop suele aparecer de repente, incluso si no has tocado nada. Las causas más habituales son cambios en las credenciales de acceso, problemas con el servidor, archivos de configuración corruptos o, simplemente, un corte de luz en el centro de datos.
Antes de lanzarte a contratar a un desarrollador o a restaurar copias de seguridad, te recomiendo que sigas esta guía paso a paso. Vamos a resolverlo juntos, sin necesidad de ser un experto en informática.
Primeros pasos: identifica el tipo de error exacto
No todos los errores de conexión son iguales. PrestaShop puede mostrar diferentes mensajes según la causa. Anota exactamente qué texto ves en pantalla, porque eso nos dará pistas importantes.
Los mensajes más frecuentes
- "Link to database cannot be established": El clásico. Indica que PrestaShop no puede conectar con el servidor de base de datos.
- "Access denied for user": Las credenciales (usuario o contraseña) son incorrectas.
- "Unknown database": El nombre de la base de datos que has configurado no existe.
- "Too many connections": El servidor de base de datos ha alcanzado su límite de conexiones simultáneas.
Si el error es diferente, no pasa nada. Los pasos que te explico a continuación son universales y te ayudarán a diagnosticar la mayoría de los problemas de conexion bd prestashop.
Revisa el archivo de configuración de PrestaShop (settings.inc.php)
El archivo parameters.php (o settings.inc.php en versiones antiguas) contiene los datos de acceso a tu base de datos. Es el primer lugar donde debemos mirar.
Cómo localizar y editar el archivo
- Accede a tu hosting mediante FTP o al administrador de archivos del panel de control (cPanel, Syspanel, etc.).
- Navega hasta la carpeta
configdentro del directorio donde está instalado PrestaShop (normalmentepublic_htmlowww). - Busca el archivo
parameters.php. Si tu versión es anterior a la 1.7, se llamarásettings.inc.php. - Ábrelo con un editor de texto (el Bloc de notas vale perfectamente).
Qué debes comprobar dentro del archivo
Dentro del archivo verás líneas como estas:
'database_host' => 'localhost',
'database_name' => 'tu_base_de_datos',
'database_user' => 'tu_usuario',
'database_password' => 'tu_contraseña',
Verifica que estos cuatro valores sean correctos. Un error muy común es que el proveedor de hosting haya cambiado el host de localhost a algo como mysql.tudominio.com o viceversa.
[TIP] Si no recuerdas tus credenciales, entra en el panel de control de tu hosting (cPanel, Syspanel, Plesk) y busca la sección de "Bases de datos MySQL". Allí podrás ver los usuarios y cambiar las contraseñas.
[WARNING] Ten muchísimo cuidado al editar este archivo. Cualquier carácter extra, un espacio o una coma mal puesta hará que PrestaShop no funcione. Guarda siempre una copia de seguridad antes de modificarlo.
Comprueba que el servidor de base de datos está activo
A veces el problema no es tuyo, sino del servidor. Es posible que el servicio de MySQL se haya caído o esté en mantenimiento.
Cómo comprobarlo desde tu hosting
- Accede a tu panel de control (Syspanel, cPanel, etc.).
- Busca la sección de "Servicios" o "Gestión de servidores".
- Verifica que el servicio MySQL o MariaDB aparece como "Activo" o "Running".
Si usas un hosting compartido, puedes contactar con el soporte técnico para que verifiquen el estado del servidor. Si el servicio está caído, no hay nada que puedas hacer salvo esperar, aunque normalmente se restaura solo en pocos minutos.
[INFO] Si tu hosting es gestionado por Syspanel, recuerda que el panel se accede a través del puerto 2106. Simplemente añade
:2106al final de la URL de acceso (por ejemplo,https://tudominio.com:2106). Ahí podrás gestionar los servicios y bases de datos.
Verifica las credenciales desde phpMyAdmin o herramienta equivalente
Una de las maneras más rápidas de confirmar si tus credenciales son correctas es probarlas directamente contra la base de datos.
Pasos para probar la conexión manualmente
- Entra en phpMyAdmin (o la herramienta de gestión de bases de datos que ofrezca tu hosting).
- Prueba a iniciar sesión con el usuario y la contraseña que tienes configurados en PrestaShop.
- Si no puedes entrar, las credenciales son incorrectas y deberás cambiarlas.
Si no tienes acceso a phpMyAdmin, puedes crear un archivo PHP de prueba. Crea un archivo llamado test_db.php en la raíz de tu PrestaShop con este contenido:
<?php
$conn = mysqli_connect('localhost', 'tu_usuario', 'tu_contraseña', 'tu_base_datos');
if (!$conn) {
die('Error: ' . mysqli_connect_error());
}
echo 'Conexión exitosa';
?>
Ejecútalo desde tu navegador (tudominio.com/test_db.php). Si ves el mensaje "Conexión exitosa", el problema está en la configuración de PrestaShop. Si ves un error, ya sabes que las credenciales son incorrectas.
[WARNING] Borra el archivo
test_db.phpinmediatamente después de usarlo. Contiene información sensible y es un riesgo de seguridad dejarlo en el servidor.
Solución al error "Too many connections"
Este error es especial porque no tiene que ver con tus credenciales, sino con la capacidad del servidor. Significa que hay demasiadas conexiones abiertas a la base de datos al mismo tiempo.
Causas habituales
- Un plugin o módulo mal configurado que no cierra las conexiones correctamente.
- Tráfico inusualmente alto en tu tienda.
- El servidor tiene un límite muy bajo de conexiones simultáneas.
Qué puedes hacer
- Reinicia el servicio MySQL: Si tienes acceso al panel de control, reiniciar el servicio suele liberar las conexiones colgadas.
- Optimiza los módulos: Desactiva temporalmente los módulos que no uses o que sean pesados.
- Aumenta el límite: Si tu plan de hosting lo permite, puedes aumentar el valor
max_connectionsen la configuración de MySQL. Esto requiere acceso al archivomy.cnfomy.ini, algo que no siempre es posible en hosting compartido.
[INFO] En la mayoría de los casos, este error se resuelve solo al cabo de unos minutos, cuando las conexiones antiguas expiran. Si es recurrente, el problema es más profundo y conviene contactar con tu proveedor de hosting.
Restaura la base de datos desde una copia de seguridad
Si has probado todo lo anterior y el error persiste, es posible que la base de datos esté dañada. En ese caso, la solución más limpia es restaurar una copia de seguridad reciente.
Cómo hacerlo paso a paso
- Accede a la sección de bases de datos de tu hosting.
- Localiza la base de datos de PrestaShop.
- Si tienes una copia de seguridad (archivo
.sql), impórtala mediante phpMyAdmin o la herramienta de importación del hosting.
[WARNING] Antes de restaurar, asegúrate de exportar la base de datos actual aunque esté dañada. A veces el problema es solo en una tabla y podrías recuperar datos importantes.
Si no tienes copia de seguridad
Puedes intentar reparar las tablas dañadas desde phpMyAdmin:
- Selecciona todas las tablas de la base de datos.
- En el desplegable inferior, elige "Reparar tabla".
- Ejecuta la operación y comprueba si el error desaparece.
Cambia los permisos de los archivos de configuración
En algunos casos, el problema no es el contenido del archivo parameters.php, sino sus permisos. Si el servidor no puede leer el archivo, PrestaShop no podrá obtener las credenciales.
Permisos recomendados
- Archivos: 644
- Directorios: 755
Puedes cambiarlos desde el administrador de archivos de tu hosting o mediante FTP. Si usas FileZilla, haz clic derecho sobre el archivo, selecciona "Permisos de archivo" e introduce el valor correcto.
[TIP] Si después de cambiar los permisos el problema continúa, prueba a darle permisos 644 al archivo
parameters.phpy 755 a la carpetaconfig. No uses permisos 777, ya que son un grave riesgo de seguridad.
Comprueba el archivo .htaccess
A veces, un .htaccess corrupto puede interferir con la conexión a la base de datos, especialmente si contiene reglas de redirección agresivas o bloqueos de IP.
Cómo comprobarlo
- Localiza el archivo
.htaccessen la raíz de PrestaShop. - Haz una copia de seguridad del mismo.
- Renómbralo a
.htaccess_bak(esto lo desactiva). - Intenta acceder a tu tienda.
Si el error desaparece, el problema estaba en el .htaccess. Puedes regenerarlo desde el panel de administración de PrestaShop (Parámetros avanzados > Rendimiento > Regenerar el archivo .htaccess).
[WARNING] No dejes tu tienda sin
.htaccessdurante mucho tiempo, ya que pierdes protección contra ataques y redirecciones importantes. Regenera el archivo lo antes posible.
Preguntas frecuentes sobre errores de conexión a BD
¿Puedo solucionar este error sin conocimientos técnicos?
Sí, en muchos casos. Si el problema son las credenciales o un archivo corrupto, puedes resolverlo siguiendo los pasos de esta guía. Eso sí, ten paciencia y trabaja con copias de seguridad.
¿Cuánto tiempo se tarda en arreglar el error base de datos prestashop?
Depende de la causa. Si es un problema de credenciales, unos 10 minutos. Si hay que restaurar una base de datos, puede llevar entre 30 minutos y 2 horas.
¿Por qué me aparece este error después de cambiar de hosting?
Es muy común. Al migrar, las credenciales suelen cambiar y el archivo parameters.php no se actualiza correctamente. Revisa siempre los valores de database_host, database_user y database_password tras una migración.
¿El error puede ser por culpa del tema o los módulos?
No directamente. Los módulos pueden causar errores de conexión si están mal codificados y abren muchas conexiones, pero el error de conexión en sí suele estar relacionado con la configuración o el servidor.
¿Debo contactar con mi proveedor de hosting?
Si has probado todos los pasos anteriores y el error persiste, sí. Especialmente si el problema está en el servidor (servicio caído, límites de conexión, etc.). Un buen proveedor de hosting te ayudará a diagnosticar el problema en minutos.
Resumen final y consejos de prevención
La solución error prestashop relacionada con la base de datos no tiene por qué ser un dolor de cabeza. La mayoría de las veces se resuelve revisando el archivo de configuración y las credenciales.
Para evitar que esto vuelva a ocurrir, te recomiendo:
- Guarda copias de seguridad periódicas: Tanto de los archivos como de la base de datos. Puedes automatizarlas desde tu hosting.
- Anota tus credenciales en un lugar seguro: Parece básico, pero muchísima gente las pierde.
- Actualiza PrestaShop y los módulos: Las versiones antiguas tienen bugs que pueden causar errores de conexión.
- No modifiques archivos sensibles sin hacer copia de seguridad: Siempre ten un plan B.
[INFO] Si tu hosting usa Syspanel, recuerda que puedes gestionar tus bases de datos y servicios desde el puerto 2106. Accede con tu usuario y contraseña habituales y encontrarás todas las herramientas necesarias para diagnosticar y solucionar problemas de conexión.
Espero que esta guía te haya sido útil. Si has llegado hasta aquí, estoy seguro de que ya tienes tu tienda funcionando o muy cerca de lograrlo. La paciencia y el método son tus mejores aliados. ¡Mucho ánimo con tu PrestaShop!
