🎨 Sysprovider Code
Sysprovider LogoWiki
🇪🇸Hosting español para ecommerce

Cómo solucionar problemas de conexión a base de datos en PrestaShop

Actualizado el 7 de febrero de 2026

¿Tu tienda PrestaShop está mostrando el temido error de conexión a la base de datos? No te preocupes, es un problema más común de lo que parece y, por suerte, casi siempre tiene solución. En esta guía completa, te explicaré paso a paso cómo identificar y solucionar el error base de datos PrestaShop, ya sea que estés usando un hosting compartido, un VPS o un panel como Syspanel (recuerda, acceso por puerto 2106). Vamos a desglosar las causas más frecuentes y las soluciones prácticas para que tu tienda vuelva a funcionar en minutos.


¿Por qué ocurre el error de conexión a la base de datos en PrestaShop?

Antes de lanzarnos a solucionarlo, es importante entender qué significa este error. Cuando ves un mensaje como "Error de conexión a la base de datos" o "Cannot connect to database", significa que PrestaShop no puede comunicarse con el servidor MySQL donde están guardados todos tus productos, clientes, pedidos y configuraciones. Las causas pueden ser varias:

  • Credenciales incorrectas: El usuario, contraseña o nombre de la base de datos han cambiado o están mal escritos.
  • Servidor MySQL caído o sobrecargado: El servicio de base de datos no está funcionando.
  • Archivo de configuración corrupto: El archivo app/config/parameters.php tiene datos erróneos.
  • Permisos de usuario incorrectos: El usuario de la base de datos no tiene los privilegios necesarios.
  • Problemas de red o firewall: El servidor web no puede alcanzar el servidor MySQL.
  • Migración o restauración fallida: Al mover la tienda, los datos no se actualizaron correctamente.

Vamos a ver cada una de estas situaciones y cómo resolverlas.


Paso 1: Verificar el estado del servidor MySQL

Lo primero es comprobar si el servicio de base de datos está activo. Si tu hosting es compartido, esto suele hacerse desde el panel de control (cPanel, Plesk o Syspanel). Si tienes un VPS o servidor dedicado, puedes usar la terminal.

Desde Syspanel (puerto 2106)

  1. Accede a Syspanel usando tudominio.com:2106 o la IP de tu servidor.
  2. Ve a Base de datos > Servidores MySQL.
  3. Busca el servidor que usa tu tienda y comprueba que su estado sea "Activo". Si está "Detenido", haz clic en Iniciar.

[TIP] Si no ves ningún servidor MySQL, puede que no esté instalado. En Syspanel, ve a Herramientas > Actualizar/Configurar y selecciona "Instalar MySQL".

Desde terminal (VPS/Linux)

sudo systemctl status mysql
# o
sudo systemctl status mariadb

Si el servicio no está corriendo, inícialo con:

sudo systemctl start mysql

Y habilítalo para que arranque automáticamente:

sudo systemctl enable mysql

Paso 2: Revisar el archivo de configuración de PrestaShop

El archivo app/config/parameters.php contiene las credenciales de la base de datos. Si está mal escrito, tu tienda no podrá conectar. Este es el paso más común para solucionar el conexión BD PrestaShop.

Cómo localizar y editar el archivo

  1. Accede a tu hosting por FTP (FileZilla, por ejemplo) o al administrador de archivos de Syspanel.
  2. Navega a la carpeta raíz de tu tienda (normalmente public_html o www).
  3. Abre la carpeta app/config/.
  4. Busca el archivo parameters.php. Si no existe, puedes crearlo desde la instalación, pero es más fácil restaurar una copia de seguridad.

Ejemplo de contenido correcto

<?php
return array(
    'parameters' => array(
        'database_host' => 'localhost',
        'database_port' => '',
        'database_name' => 'tu_base_de_datos',
        'database_user' => 'tu_usuario',
        'database_password' => 'tu_contraseña',
        'database_prefix' => 'ps_',
        'database_engine' => 'InnoDB',
        'database_collation' => 'utf8mb4_general_ci',
        // ... otros parámetros
    ),
);

[WARNING] Asegúrate de que database_host no sea localhost si tu base de datos está en un servidor remoto. En ese caso, usa la IP o el nombre del servidor MySQL.

Pasos para corregir

  1. Descarga una copia del archivo por seguridad.
  2. Edítalo con un editor de texto plano (no Word).
  3. Verifica que los valores coincidan con los datos de tu base de datos. Puedes obtenerlos desde Syspanel: ve a Base de datos > Bases de datos, selecciona la tuya y haz clic en Ver detalles.
  4. Guarda los cambios y sube el archivo de nuevo.

Paso 3: Comprobar 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 el servidor web. Esto es muy común cuando migras la tienda a un nuevo hosting.

Desde Syspanel

  1. Ve a Base de datos > Usuarios MySQL.
  2. Localiza el usuario que usa tu PrestaShop.
  3. Haz clic en Editar privilegios.
  4. Asegúrate de que tenga marcadas todas las opciones (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.) o, al menos, las básicas para funcionar.
  5. También verifica que el Host permita conexiones desde localhost o desde la IP de tu servidor web. Si es un hosting compartido, suele ser localhost o % (cualquier host).

[INFO] Si cambiaste de hosting, es posible que el usuario esté creado solo para un dominio anterior. En Syspanel, puedes crear un nuevo usuario y asignarlo a la base de datos.

Desde terminal (VPS)

mysql -u root -p
GRANT ALL PRIVILEGES ON tu_base_de_datos.* TO 'tu_usuario'@'localhost' IDENTIFIED BY 'tu_contraseña';
FLUSH PRIVILEGES;
EXIT;

Reemplaza tu_base_de_datos, tu_usuario y tu_contraseña con tus datos.


Paso 4: Verificar la integridad de la base de datos

Si los pasos anteriores no funcionan, puede que la base de datos esté corrupta o tenga tablas dañadas. Esto provoca el PrestaShop base datos problema más difícil de detectar.

Reparar tablas desde phpMyAdmin

  1. Accede a phpMyAdmin desde tu panel de control (en Syspanel, suele estar en Base de datos > phpMyAdmin).
  2. Selecciona la base de datos de tu tienda.
  3. Marca todas las tablas (clic en "Seleccionar todo").
  4. En el menú desplegable, elige Reparar tabla.
  5. Espera a que termine. Si alguna tabla no se repara, puede que necesites restaurar una copia de seguridad.

Desde terminal

mysqlcheck -u root -p --auto-repair --databases nombre_de_tu_base

Paso 5: Comprobar problemas de red y firewall

Si tu base de datos está en un servidor diferente al de tu tienda (por ejemplo, en un hosting separado), puede haber un bloqueo de red.

Verificar conectividad

Desde la terminal de tu servidor web, prueba:

ping direccion_del_servidor_mysql

Si no hay respuesta, el firewall puede estar bloqueando el puerto 3306 (el de MySQL). En Syspanel, ve a Servidor > Firewall y asegúrate de que el puerto 3306 esté permitido para la IP de tu servidor web.

[WARNING] Nunca abras el puerto 3306 a todo el mundo (0.0.0.0/0). Solo a la IP específica de tu tienda.


Paso 6: Restaurar una copia de seguridad

Si todo lo demás falla, la solución más segura es restaurar una copia de seguridad reciente de tu base de datos. Esto solucionará cualquier corrupción o cambio accidental.

Desde Syspanel

  1. Ve a Base de datos > Bases de datos.
  2. Selecciona tu base de datos y haz clic en Restaurar.
  3. Elige el archivo de backup (normalmente en formato .sql o .gz).
  4. Confirma la restauración.

Desde phpMyAdmin

  1. Accede a phpMyAdmin y selecciona tu base de datos.
  2. Haz clic en Importar.
  3. Selecciona el archivo de backup y ejecuta la importación.

[TIP] Siempre ten una copia de seguridad actualizada. Puedes programar backups automáticos en Syspanel desde Herramientas > Tareas programadas.


Paso 7: Reinstalar PrestaShop (solo como último recurso)

Si después de todos los pasos anteriores el error persiste, puede que la instalación de PrestaShop esté dañada. Reinstalar desde cero, pero conservando los datos de la base de datos, puede ser la solución.

Cómo hacerlo sin perder datos

  1. Descarga una copia limpia de PrestaShop desde la web oficial.
  2. Sube los archivos a tu servidor (sobrescribiendo los existentes, pero sin borrar la carpeta app/config/ ni img/).
  3. Ejecuta la instalación desde tudominio.com/install. Durante el proceso, selecciona “Actualizar” o “Reparar” en lugar de instalar desde cero.
  4. Introduce las credenciales de tu base de datos existente (las mismas que usabas).
  5. Sigue los pasos y, al final, elimina la carpeta install por seguridad.

[WARNING] Este paso puede ser riesgoso si no tienes experiencia. Si no estás seguro, contacta con soporte técnico.


Preguntas Frecuentes (FAQ)

¿Qué hago si veo "Error de conexión a la base de datos" después de mover mi tienda?

Revisa el archivo parameters.php y asegúrate de que los datos de la base de datos sean los del nuevo servidor. También verifica que el usuario tenga permisos desde la nueva IP.

¿Puedo usar el mismo usuario para varias bases de datos?

Sí, pero es mejor crear un usuario por cada base de datos para evitar conflictos. En Syspanel, puedes hacerlo fácilmente desde Base de datos > Usuarios MySQL.

¿Por qué mi base de datos aparece vacía en phpMyAdmin?

Puede que la base de datos esté corrupta o que no se haya restaurado correctamente. Intenta reparar las tablas o restaurar una copia de seguridad.

¿El error puede deberse a un plugin o módulo?

Sí, algunos módulos mal codificados pueden sobrescribir el archivo de configuración. Desactiva todos los módulos no esenciales temporalmente para probar.

¿Cómo sé si mi hosting tiene problemas con MySQL?

Contacta con el soporte de tu hosting. Pueden verificar si el servicio MySQL está funcionando correctamente en sus servidores.


Conclusión

El error base de datos PrestaShop puede ser frustrante, pero siguiendo estos pasos de forma ordenada, lo más probable es que lo resuelvas en pocos minutos. Recuerda siempre empezar por lo más simple: verificar que el servicio MySQL esté activo y que el archivo parameters.php tenga los datos correctos. Si nada funciona, no dudes en restaurar una copia de seguridad o pedir ayuda a tu proveedor de hosting.

Mantén siempre copias de seguridad actualizadas y, si usas Syspanel, aprovecha sus herramientas de gestión de bases de datos para facilitar el mantenimiento. ¡Tu tienda volverá a estar online en poco tiempo!

[INFO] Si después de todo esto el problema persiste, puede ser un error más profundo del servidor. No dudes en escalarlo al equipo técnico de tu hosting, indicando que ya has revisado los pasos básicos.

¿Necesitas ayuda?Son dos de nuestros técnicos, Agustín y Mikel, y están disponibles para resolver cualquier problema.

Hablar con ellos ahora
Agustín y Mikel