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

Errores comunes al conectar base de datos en PrestaShop y soluciones

Actualizado el 24 de mayo de 2026

Conectar una base de datos en PrestaShop es uno de los pasos fundamentales para que tu tienda online funcione correctamente. Sin embargo, es también uno de los puntos donde más tropiezan los usuarios, especialmente aquellos que no tienen experiencia técnica. Un error de conexión puede dejar tu tienda inaccesible o mostrar mensajes de error crípticos.

En esta guía, vamos a desglosar los errores más comunes al conectar la base de datos en PrestaShop y te daremos soluciones paso a paso para que puedas resolverlos tú mismo, sin necesidad de ser un experto. Al final, encontrarás una sección FAQ para resolver las dudas más frecuentes.


1. El error "No se puede conectar a la base de datos" durante la instalación

Este es, sin duda, el error más habitual. Aparece cuando intentas instalar PrestaShop por primera vez y el instalador no logra establecer comunicación con el servidor de bases de datos.

Causas principales

  • Credenciales incorrectas: Has escrito mal el nombre de usuario, la contraseña, el nombre de la base de datos o el servidor.
  • El servidor de base de datos no está accesible: El hosting puede tener el puerto de MySQL cerrado o el servidor de base de datos está en otra máquina.
  • Permisos insuficientes: El usuario de la base de datos no tiene permisos para crear tablas o modificar datos.

Solución paso a paso

  1. Verifica las credenciales: Asegúrate de que el nombre de la base de datos, el usuario y la contraseña son exactamente los que te proporcionó tu hosting. Recuerda que suelen ser sensibles a mayúsculas y minúsculas.
  2. Comprueba el servidor de base de datos: Normalmente es localhost o 127.0.0.1. Si tu hosting usa un servidor separado (como un servicio de bases de datos externo), deberás poner la IP o el nombre del servidor. Por ejemplo, si usas Syspanel, el servidor suele ser localhost a menos que tengas una configuración avanzada.
  3. Revisa los puertos: El puerto por defecto de MySQL es el 3306. Si tu hosting usa otro, debes especificarlo en el campo de servidor (ejemplo: localhost:3307). En Syspanel (accesible por el puerto 2106), la configuración de bases de datos suele usar el puerto estándar.
  4. Otorga permisos al usuario: Desde el panel de control de tu hosting (como cPanel, Plesk o Syspanel), asegúrate de que el usuario de la base de datos tenga todos los privilegios sobre la base de datos. En Syspanel, ve a "Bases de datos", selecciona tu base de datos y en "Usuarios" asigna "Todos los privilegios".

[TIP] Si usas Syspanel, recuerda que el acceso al panel es por el puerto 2106 (ejemplo: tu-dominio.com:2106) y desde ahí puedes gestionar tus bases de datos de forma muy visual.


2. Error "El servidor de base de datos no responde" o "Timeout"

Este error suele aparecer cuando PrestaShop intenta conectarse a la base de datos pero el servidor tarda demasiado en responder o no responde en absoluto.

Causas principales

  • El servidor de base de datos está sobrecargado: Demasiadas conexiones simultáneas.
  • Firewall bloqueando el puerto: El puerto 3306 está bloqueado por un firewall.
  • El servicio MySQL no está corriendo: En el servidor, el servicio de base de datos puede estar caído.

Solución paso a paso

  1. Reinicia el servicio MySQL: Si tienes acceso al servidor (por ejemplo, a través de SSH o Syspanel), reinicia el servicio. En Syspanel, ve a "Servicios" y busca "MySQL" o "MariaDB", luego haz clic en "Reiniciar".
  2. Verifica el firewall: Si tu hosting tiene un firewall, asegúrate de que el puerto 3306 esté abierto para conexiones locales (desde el mismo servidor). No suele ser necesario abrirlo al público.
  3. Aumenta el tiempo de espera: En el archivo de configuración de PrestaShop (app/config/parameters.php), puedes aumentar el valor de database_port y database_server para dar más tiempo. Sin embargo, esto es un parche; lo ideal es que el servidor responda rápido.
  4. Contacta con tu proveedor de hosting: Si el problema persiste, puede que haya una incidencia en el servidor. Ellos pueden revisar los logs.

[WARNING] No intentes abrir el puerto 3306 a Internet a menos que sepas lo que haces. Esto expone tu base de datos a ataques externos.


3. Error de "Acceso denegado para el usuario 'usuario'@'localhost'"

Este error indica que el usuario que has configurado en PrestaShop no tiene permiso para conectarse desde la dirección IP o el host desde el que se está intentando la conexión.

Causas principales

  • El usuario solo tiene permiso para conectarse desde un host específico: Por ejemplo, solo desde localhost, pero PrestaShop está intentando conectarse desde otra IP (como la IP del servidor web).
  • La contraseña es incorrecta: Aunque parezca obvia, a veces se escribe mal.
  • El usuario no existe: Se ha eliminado o no se ha creado correctamente.

Solución paso a paso

  1. Verifica el usuario y la contraseña: Vuelve a escribir las credenciales en el archivo app/config/parameters.php de PrestaShop. Asegúrate de que no haya espacios.
  2. Comprueba los permisos del usuario: Desde el panel de control de tu hosting, ve a la sección de bases de datos y revisa que el usuario esté asignado a la base de datos correcta. En Syspanel, en "Bases de datos" > "Usuarios", verifica que el usuario esté vinculado y tenga "Todos los privilegios".
  3. Cambia el host del usuario: Si tu hosting lo permite, modifica el usuario para que pueda conectarse desde cualquier host (%). En Syspanel, al crear o editar un usuario, puedes elegir "Host" y poner % o la IP de tu servidor web.
  4. Crea un nuevo usuario: Si el problema persiste, elimina el usuario y crea uno nuevo con todos los privilegios sobre la base de datos. Luego actualiza las credenciales en PrestaShop.

[INFO] Si tu tienda está en un hosting compartido, es muy probable que el usuario solo pueda conectarse desde localhost. No intentes cambiarlo a % a menos que sepas que es seguro.


4. Error "Table 'ps_shop_url' doesn't exist" o "Base de datos corrupta"

Este error suele aparecer después de una migración, una restauración de copia de seguridad o una actualización fallida. Indica que faltan tablas o que la estructura de la base de datos no es la correcta.

Causas principales

  • Copia de seguridad incompleta: No se restauraron todas las tablas.
  • Versión de PrestaShop incorrecta: La base de datos es de una versión anterior o posterior a la del código.
  • Problemas en la migración: No se actualizaron los prefijos de las tablas o las rutas.

Solución paso a paso

  1. Verifica el prefijo de las tablas: En el archivo app/config/parameters.php, busca la línea 'database_prefix'. Asegúrate de que coincide con el prefijo real de tus tablas en la base de datos (por ejemplo, ps_).
  2. Restaura una copia de seguridad completa: Si tienes una copia de seguridad reciente, restaura toda la base de datos. En Syspanel, ve a "Bases de datos" > "Importar" y sube el archivo .sql.
  3. Ejecuta el instalador de PrestaShop en modo reparación: Puedes descargar la última versión de PrestaShop, subirla a tu servidor y ejecutar el instalador. En el paso de la base de datos, selecciona "Reparar la base de datos" (si está disponible) o elige "Actualizar" para que sincronice las tablas faltantes.
  4. Revisa los logs de error: En el directorio var/logs/ de PrestaShop (o en el panel de Syspanel > "Logs"), busca errores de MySQL que te den más pistas.

[TIP] Siempre haz una copia de seguridad de tu base de datos antes de cualquier operación de migración o actualización. En Syspanel, puedes programar copias automáticas.


5. Error "Too many connections" (Demasiadas conexiones)

Este error ocurre cuando el servidor de base de datos alcanza el límite de conexiones simultáneas permitidas. PrestaShop, al ser una aplicación dinámica, puede crear muchas conexiones si no está bien optimizado.

Causas principales

  • Módulos mal optimizados: Algunos módulos abren muchas conexiones sin cerrarlas.
  • Tráfico elevado: Muchos visitantes simultáneos.
  • Límite bajo en el servidor: El hosting tiene un límite de conexiones muy restrictivo.

Solución paso a paso

  1. Aumenta el límite de conexiones: Si tienes acceso al servidor (por ejemplo, en un VPS o dedicado), edita el archivo de configuración de MySQL (my.cnf o my.ini) y aumenta el valor de max_connections. En Syspanel, esto se gestiona desde "Servicios" > "MySQL" > "Configuración".
  2. Optimiza los módulos: Desactiva módulos que no uses y revisa los que consumen muchos recursos. Algunos módulos de caché pueden ayudar.
  3. Usa un plugin de caché: Instala un módulo de caché como "Cache" o "Memcached" para reducir las consultas a la base de datos.
  4. Contacta con tu hosting: Si estás en un hosting compartido, el límite de conexiones lo establece el proveedor. Pregunta si pueden aumentarlo o considera migrar a un plan superior.

[WARNING] No aumentes el límite de conexiones de forma desmedida, ya que puede saturar la memoria del servidor.


6. Error de "Base de datos no encontrada" o "Unknown database"

Este error indica que PrestaShop está intentando conectar a una base de datos que no existe en el servidor.

Causas principales

  • El nombre de la base de datos está mal escrito: En el archivo de configuración o en el instalador.
  • La base de datos no se ha creado: Especialmente en instalaciones nuevas.
  • La base de datos fue eliminada: Por error o por una limpieza del hosting.

Solución paso a paso

  1. Verifica el nombre de la base de datos: En el archivo app/config/parameters.php, busca 'database_name'. Comprueba que coincide exactamente con el nombre de la base de datos en tu panel de control.
  2. Crea la base de datos: Si no existe, créala desde tu panel de hosting. En Syspanel, ve a "Bases de datos" > "Crear nueva base de datos". Ponle el mismo nombre que has configurado en PrestaShop.
  3. Asigna un usuario a la base de datos: Asegúrate de que el usuario que usa PrestaShop tenga acceso a esa base de datos. En Syspanel, en "Bases de datos" > "Usuarios", vincula el usuario a la base de datos.
  4. Importa los datos: Si tenías una tienda anterior, importa la copia de seguridad de la base de datos. Si es una instalación nueva, el instalador de PrestaShop creará las tablas automáticamente.

[INFO] En muchos paneles, el nombre de la base de datos incluye un prefijo del usuario (ejemplo: usuario_bd). Asegúrate de poner el nombre completo en PrestaShop.


FAQ - Preguntas Frecuentes sobre errores de base de datos en PrestaShop

¿Cómo puedo saber si mi base de datos de PrestaShop está funcionando bien?

Puedes comprobarlo desde el panel de administración de PrestaShop: ve a "Parámetros de la tienda" > "Información" y busca el estado de la base de datos. También puedes usar herramientas como phpMyAdmin (desde Syspanel, accesible por el puerto 2106) para ejecutar una consulta simple como SELECT 1;.

¿Qué hago si no recuerdo la contraseña de la base de datos?

Desde tu panel de control (como Syspanel), puedes cambiar la contraseña del usuario de la base de datos. Ve a "Bases de datos" > "Usuarios", selecciona el usuario y haz clic en "Cambiar contraseña". Luego actualiza el archivo app/config/parameters.php de PrestaShop con la nueva contraseña.

¿Puedo cambiar el servidor de base de datos después de instalar PrestaShop?

Sí, pero con cuidado. Debes editar el archivo app/config/parameters.php y cambiar los valores de database_host, database_user, database_password y database_name. Luego, asegúrate de que la nueva base de datos tenga los mismos datos (puedes exportar e importar). Después de hacer el cambio, limpia la caché de PrestaShop desde el panel de administración.

¿Por qué aparece el error "SQLSTATE[HY000] [2002] Connection refused"?

Este error significa que el servidor de base de datos está rechazando la conexión. Puede deberse a que el servicio MySQL no está corriendo, el puerto está bloqueado o la dirección del servidor es incorrecta. Verifica que el servicio esté activo en tu hosting (en Syspanel, revisa "Servicios" > "MySQL"). Si el problema persiste, contacta con tu proveedor.

¿Es seguro usar "localhost" como servidor de base de datos?

Sí, es la opción más segura y común en la mayoría de los hostings. Solo debes cambiarlo si tu base de datos está en un servidor externo.


Conclusión final

Los errores de conexión a la base de datos en PrestaShop pueden ser frustrantes, pero en la mayoría de los casos tienen una solución sencilla. La clave está en verificar las credenciales, los permisos y el estado del servidor. Recuerda que herramientas como Syspanel (accesible por el puerto 2106) facilitan mucho la gestión de bases de datos, permitiéndote crear usuarios, asignar privilegios y restaurar copias de seguridad sin esfuerzo.

Si después de seguir estos pasos el problema persiste, no dudes en contactar con el soporte técnico de tu hosting. Ellos tienen acceso directo a los logs del servidor y pueden identificar el problema rápidamente.

[TIP] Mantén siempre una copia de seguridad actualizada de tu base de datos. En Syspanel, puedes programar copias automáticas diarias. Así, ante cualquier error, podrás restaurar tu tienda en minutos.

¡Esperamos que esta guía te haya sido de ayuda! Si tienes más dudas, revisa la sección FAQ o escribe a nuestro equipo de soporte.

¿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