Cómo solucionar el error de conexión a la base de datos en PrestaShop en Plesk
¡Hola! Soy tu técnico de soporte amigable. Si estás aquí es porque tu tienda PrestaShop te está mostrando un mensaje de error molesto relacionado con la base de datos. No te preocupes, es un problema muy común y, por lo general, tiene una solución sencilla. En esta guía completa y detallada, te explicaré paso a paso cómo solucionar el error de conexión a la base de datos en PrestaShop en Plesk.
Vamos a desglosar todas las causas posibles, desde las más simples (como un cambio de contraseña) hasta las más técnicas (como un servidor caído). Al final, serás capaz de diagnosticar y resolver este error tú mismo.
¿Por qué aparece este error y cómo identificarlo?
El error de conexión a la base de datos suele manifestarse de dos formas principales:
- En el front-end (tu tienda): Ves un mensaje como “Cannot connect to the database” o “Error de conexión a la base de datos”. La tienda se muestra en blanco o con un diseño muy básico.
- En el back-end (el panel de administración): No puedes acceder a tu panel de administración de PrestaShop (normalmente
/admin1234o similar) y ves el mismo error.
Este error significa que PrestaShop no puede comunicarse con el servidor de bases de datos (MySQL o MariaDB) que almacena toda la información de tu tienda: productos, clientes, pedidos, configuraciones, etc.
¿Por qué ocurre? Las causas más frecuentes son:
- Contraseña incorrecta: Has cambiado la contraseña de la base de datos en Plesk, pero no has actualizado el archivo de configuración de PrestaShop.
- Usuario o nombre de BD incorrectos: Al migrar o restaurar una copia de seguridad, los datos no coinciden.
- Servidor de BD caído: El servicio MySQL/MariaDB se ha detenido o está sobrecargado.
- Permisos incorrectos: El usuario de la base de datos no tiene todos los privilegios necesarios.
- Archivo de configuración dañado: El archivo
app/config/parameters.phpestá corrupto o con información errónea. - Problemas de caché o sesión: A veces, una caché obsoleta puede mostrar este error aunque la conexión sea correcta.
Paso 1: Lo primero, revisa el estado del servicio MySQL en Plesk
Antes de tocar nada de PrestaShop, asegurémonos de que el motor de base de datos está funcionando. En Plesk, es muy fácil comprobarlo.
### Cómo verificar el servicio MySQL en Plesk
- Inicia sesión en tu panel de Plesk.
- En el menú de la izquierda, busca la sección "Herramientas y ajustes" (o Tools & Settings).
- Dentro de esta sección, busca y haz clic en "Administrador de servicios" (o Services Management).
- Busca en la lista el servicio "MySQL" o "MariaDB" (depende de la versión).
- Verifica que su estado sea "en ejecución" (running). Si aparece como "detenido" (stopped), haz clic en el botón de iniciar (triángulo verde) o reiniciar (flecha circular).
[TIP] Si el servicio se detiene constantemente, puede ser un problema de recursos (memoria RAM insuficiente) o una configuración incorrecta. En ese caso, contacta con tu proveedor de hosting o con soporte técnico.
Si el servicio estaba detenido y lo iniciaste, prueba a cargar tu tienda de nuevo. Si el error persiste, continúa con el siguiente paso.
Paso 2: Localiza y verifica el archivo de configuración parameters.php
PrestaShop guarda los datos de conexión a la base de datos en un archivo llamado parameters.php. Si este archivo tiene información incorrecta, la conexión fallará.
### ¿Dónde está el archivo parameters.php?
Dentro del directorio raíz de tu instalación de PrestaShop, la ruta exacta es:
/httpdocs/app/config/parameters.php
Importante: No lo confundas con parameters.php dentro de /httpdocs/config/, que es un archivo antiguo de versiones anteriores.
### Cómo acceder y editarlo desde Plesk
- En Plesk, ve a "Sitios web y dominios".
- Busca tu dominio y haz clic en "Administrador de archivos" (icono de carpeta).
- Navega hasta la carpeta
httpdocs, luegoapp, luegoconfig. - Busca el archivo
parameters.php. Haz clic derecho sobre él y selecciona "Editar en el editor de texto". - Verás un contenido similar a este (con datos reales, claro):
<?php return array (
'parameters' =>
array (
'database_host' => 'localhost',
'database_port' => '',
'database_name' => 'tu_basededatos',
'database_user' => 'tu_usuario_bd',
'database_password' => 'tu_contraseña_secreta',
'database_prefix' => 'ps_',
'database_engine' => 'InnoDB',
...
),
);
### ¿Qué debes comprobar?
database_host: Casi siempre eslocalhost. Si tu base de datos está en un servidor externo, debe tener la IP o el nombre del host.database_name: Debe coincidir exactamente con el nombre de la base de datos que ves en Plesk (en la sección "Bases de datos" de tu dominio).database_user: Debe coincidir con el usuario asociado a esa base de datos.database_password: Esta es la causa más común del error. Si has cambiado la contraseña de la base de datos en Plesk, debes actualizarla aquí.
[WARNING] Ten mucho cuidado al editar este archivo. Un error tipográfico (una coma mal puesta, una comilla olvidada) puede romper tu tienda. Si no te sientes seguro, copia el contenido en un bloc de notas antes de editarlo.
### Cómo obtener los datos correctos desde Plesk
- En Plesk, ve a "Sitios web y dominios".
- Busca la sección "Bases de datos" (normalmente un icono de un cilindro de base de datos).
- Haz clic en el nombre de la base de datos que utiliza tu PrestaShop.
- En la nueva ventana, verás el nombre de la base de datos, el usuario y un botón para "Cambiar contraseña". Si no recuerdas la contraseña, puedes cambiarla aquí.
- Copia exactamente esos valores al archivo
parameters.php.
Una vez corregido, guarda los cambios y recarga tu tienda.
Paso 3: Prueba la conexión desde Plesk (phpMyAdmin)
A veces, el error puede ser más sutil. Podemos usar phpMyAdmin, la herramienta de administración de bases de datos incluida en Plesk, para probar la conexión directamente.
### Cómo acceder a phpMyAdmin en Plesk
- En Plesk, ve a "Sitios web y dominios".
- Busca la sección "Bases de datos" y haz clic en "phpMyAdmin" (icono de un elefante o similar).
- Se abrirá una nueva pestaña. Introduce el usuario y la contraseña de la base de datos que tienes en el archivo
parameters.php. - Si la conexión es exitosa, verás el panel de phpMyAdmin con las tablas de tu PrestaShop (listado de tablas con prefijo
ps_).
¿Qué hacer si no puedes iniciar sesión en phpMyAdmin?
- Error de acceso denegado: Significa que el usuario o la contraseña son incorrectos. Vuelve al paso 2 y asegúrate de que los datos en
parameters.phpcoinciden exactamente con los que usas para phpMyAdmin. - Error de base de datos desconocida: El nombre de la base de datos en
parameters.phpno existe. Ve a la sección "Bases de datos" en Plesk y verifica el nombre exacto.
[INFO] Si puedes acceder a phpMyAdmin pero tu tienda sigue dando error, el problema no es de credenciales. Puede ser un problema de permisos o de caché.
Paso 4: Verifica los permisos del usuario de la base de datos
A veces, el usuario tiene la contraseña correcta, pero no tiene todos los permisos necesarios para que PrestaShop funcione (como crear tablas, modificar datos, etc.).
### Cómo otorgar permisos completos desde Plesk
- En Plesk, ve a "Sitios web y dominios" > "Bases de datos".
- Haz clic en el nombre de tu base de datos.
- Busca la sección "Usuarios de bases de datos". Verás el usuario asociado.
- Haz clic en el icono de "Editar" (lápiz) junto al usuario.
- En la ventana que aparece, asegúrate de que todas las casillas de verificación (privilegios) estén marcadas. Si no, selecciona "Seleccionar todo" o marca manualmente opciones como
SELECT,INSERT,UPDATE,DELETE,CREATE,ALTER,INDEX,DROP, etc. - Haz clic en "Aceptar" para guardar los cambios.
Después de esto, recarga tu tienda. El error debería desaparecer.
Paso 5: Limpia la caché de PrestaShop (sin acceso al back-end)
Si los pasos anteriores no funcionan, es posible que PrestaShop tenga una caché corrupta que impide la conexión, incluso con los datos correctos. Como no podemos acceder al back-end, debemos hacerlo manualmente.
### Cómo borrar la caché manualmente desde el administrador de archivos
-
En Plesk, ve a "Sitios web y dominios" > "Administrador de archivos".
-
Navega hasta la carpeta
httpdocs. -
Busca y elimina (o renombra, para estar seguros) las siguientes carpetas y archivos:
- Carpeta
var/cache(dentro dehttpdocs): Esta es la principal. Elimínala por completo. PrestaShop la volverá a crear automáticamente. - Archivo
config/xml/themes.xmlyconfig/xml/themes/default.xml(si existen): A veces estos archivos se corrompen. - Carpeta
cache/smarty/compile: Elimina todo su contenido (pero no la carpeta en sí). - Carpeta
cache/smarty/cache: Elimina todo su contenido.
- Carpeta
-
Después de eliminar la carpeta
var/cache, recarga tu tienda.
[WARNING] Si tu tienda sigue sin funcionar después de borrar la caché, no te preocupes. A veces la caché se regenera con el mismo error. En ese caso, el problema es de configuración (vuelve al paso 2) o de permisos de archivos.
Paso 6: Verifica los permisos de archivos y carpetas (último recurso)
En casos extremos, los permisos de los archivos de PrestaShop pueden estar mal configurados, impidiendo que el script lea el archivo parameters.php.
### Permisos recomendados para PrestaShop en Plesk
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
- Archivo
parameters.php: 644 o 600 (más restrictivo)
### Cómo cambiar permisos desde el Administrador de archivos de Plesk
- Ve a "Sitios web y dominios" > "Administrador de archivos".
- Selecciona la carpeta
httpdocs(o la carpetaapp/config). - Haz clic en el botón "Permisos" (icono de candado o similar).
- Puedes cambiar los permisos de forma recursiva para toda la carpeta. Asegúrate de que los valores sean correctos.
- Si no sabes qué hacer, puedes usar la opción "Restablecer permisos" que ofrecen algunos paneles Plesk (a veces está en "Herramientas y ajustes" > "Restablecer permisos de sitios web"). Esta opción suele dejar todo en los valores correctos.
Preguntas Frecuentes (FAQ)
### ¿Qué hago si después de todo el error persiste?
Si has seguido todos los pasos (verificar servicio, corregir parameters.php, probar en phpMyAdmin, limpiar caché y revisar permisos) y el error sigue apareciendo, el problema puede ser más complejo:
- Error en el script de PrestaShop: Podría haber un error de código en un módulo o en el núcleo. Revisa los logs de error de PHP en Plesk (en "Sitios web y dominios" > "Registros").
- Problema de memoria del servidor: Si el servidor no tiene suficiente RAM, MySQL puede cerrar conexiones. Contacta con tu hosting.
- Corrupción de la base de datos: Puede que la base de datos esté dañada. Desde phpMyAdmin, puedes intentar reparar las tablas (selecciona todas las tablas y elige "Reparar tabla" en el menú desplegable).
### ¿Puedo usar una copia de seguridad para restaurar la base de datos?
Sí, es una excelente idea si sospechas que la base de datos está corrupta. En Plesk, ve a "Sitios web y dominios" > "Bases de datos", selecciona tu base de datos y usa la opción "Restaurar" para cargar una copia de seguridad reciente. Luego, asegúrate de que el archivo parameters.php coincida con los datos de esa copia.
### ¿Cómo evito este error en el futuro?
- Anota las contraseñas: Cuando crees o cambies una contraseña de base de datos, anótala inmediatamente y actualiza el archivo
parameters.php. - Haz copias de seguridad regulares: Tanto de los archivos como de la base de datos. Plesk te permite automatizarlo.
- Mantén PrestaShop actualizado: Las versiones antiguas tienen más bugs que pueden causar errores de conexión.
- No edites el
parameters.phpa mano si no es necesario: Siempre que puedas, usa el instalador de PrestaShop o herramientas de migración.
Conclusión
Solucionar el error base datos PrestaShop Plesk puede parecer abrumador al principio, pero como has visto, la mayoría de las veces se debe a un problema simple de contraseña o de nombre de base de datos. Siguiendo esta guía paso a paso, podrás diagnosticar y resolver el problema tú mismo en la mayoría de los casos.
Recuerda: Paciencia y método. Ve paso a paso, verifica cada punto y no te saltes ninguno. Si en algún momento te sientes perdido, no dudes en contactar con el soporte técnico de tu hosting, que tendrá acceso directo al servidor y podrá ayudarte más rápido.
Espero que esta guía te haya sido de gran ayuda. ¡Tu tienda volverá a funcionar en breve!
