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

¿Cómo solucionar problemas de conexión a la base de datos en PrestaShop en Syspanel?

Actualizado el 22 de diciembre de 2025

¿Tu tienda PrestaShop se ha quedado en blanco o muestra un mensaje de error como "Cannot connect to database" o "Error de conexión a la base de datos"? No te preocupes, es una de las incidencias más comunes en tiendas online y, por suerte, casi siempre tiene solución. En esta guía extensa y paso a paso, te explicaré cómo diagnosticar y solucionar los problemas de conexión a la base de datos en PrestaShop cuando tu hosting está gestionado desde Syspanel (el panel de control que antes conocías como HestiaCP y al que accedes por el puerto 2106).

Vamos a desglosar el proceso desde lo más básico hasta soluciones avanzadas, para que puedas recuperar tu tienda lo antes posible. Recuerda que la clave está en la calma y en seguir cada paso en orden.


¿Qué significa el error "Error base datos PrestaShop Syspanel"?

Cuando tu tienda PrestaShop no puede conectarse a su base de datos MySQL, el sistema muestra un mensaje de error. Esto puede ocurrir por muchas razones: desde un cambio de contraseña hasta un problema en el servidor. Lo importante es que sepas que la base de datos sigue ahí, solo necesitamos restablecer la comunicación.

Los errores típicos que verás son:

  • "Cannot connect to database"
  • "Error de conexión a la base de datos"
  • "PrestaShop database error: Access denied for user"
  • Pantalla en blanco (white screen) sin ningún mensaje.

En Syspanel, la gestión de bases de datos es muy visual y sencilla, así que vamos a aprovecharla.


Paso 1: Accede a Syspanel y verifica el estado del servidor MySQL

Lo primero es asegurarnos de que el servicio de base de datos esté funcionando. A veces, el servidor MySQL se cae por mantenimiento o por falta de recursos.

  1. Inicia sesión en Syspanel
    Abre tu navegador y ve a https://tudominio.com:2106 (recuerda, el puerto es 2106). Introduce tu usuario y contraseña de administrador.

  2. Ve a la sección de Servicios
    En el menú lateral izquierdo, busca la opción "Servicios" o "Services". Allí verás una lista de todos los servicios del servidor.

  3. Busca "MySQL" o "MariaDB"
    En la lista, localiza el servicio de base de datos. Debería aparecer como "mysql" o "mariadb".

    • Si el estado es "running" (verde), el servicio está activo.
    • Si está "stopped" (rojo), haz clic en el botón "Start" o "Reiniciar" para activarlo.

[TIP]: Si después de reiniciar el servicio el error persiste, puede que el problema esté en la configuración de la conexión, no en el servicio.


Paso 2: Revisa las credenciales de la base de datos en el archivo de configuración

PrestaShop guarda los datos de conexión a la base de datos en un archivo llamado app/config/parameters.php. Si has cambiado la contraseña recientemente o has movido la tienda, este archivo puede tener datos incorrectos.

  1. Accede a los archivos de tu tienda
    Desde Syspanel, ve a "Archivos" > "Administrador de archivos" o usa un cliente FTP (como FileZilla). Navega hasta la carpeta raíz de tu PrestaShop (normalmente public_html o www).

  2. Abre el archivo app/config/parameters.php
    Localiza el archivo y ábrelo con un editor de texto (el propio administrador de archivos de Syspanel tiene un editor).

  3. Busca estas líneas
    Deberías ver algo parecido a esto:

    'database_host' => 'localhost',
    'database_port' => '',
    'database_name' => 'nombre_de_tu_bd',
    'database_user' => 'usuario_de_bd',
    'database_password' => 'contraseña_secreta',
    'database_prefix' => 'ps_',
    
    • database_host: Normalmente es localhost, a menos que tu base de datos esté en otro servidor.
    • database_name: El nombre exacto de la base de datos (lo creaste en Syspanel).
    • database_user: El usuario asociado a esa base de datos.
    • database_password: La contraseña actual.
  4. Compara con los datos de Syspanel
    Ve a "Bases de datos" en Syspanel. Allí verás la lista de bases de datos. Haz clic en el icono de "ojito" o "editar" para ver el usuario y la contraseña. Si no recuerdas la contraseña, puedes generar una nueva desde ahí.

[WARNING]: Si cambias la contraseña en Syspanel, debes actualizarla también en parameters.php o tu tienda dejará de funcionar.


Paso 3: Verifica que el usuario tenga permisos correctos sobre la base de datos

A veces, aunque el usuario y la contraseña sean correctos, el usuario no tiene permisos para acceder a la base de datos. En Syspanel, los permisos se asignan fácilmente.

  1. Ve a "Bases de datos" en Syspanel
    Haz clic en el nombre de la base de datos que usa tu PrestaShop.

  2. Revisa los usuarios vinculados
    Verás una tabla con los usuarios que tienen acceso. Asegúrate de que el usuario que usas en parameters.php aparezca aquí.

  3. Asigna todos los privilegios
    Si el usuario no tiene todos los permisos (o no aparece), haz clic en "Añadir usuario" o "Editar" y marca todas las casillas de privilegios (SELECT, INSERT, UPDATE, DELETE, etc.). También puedes seleccionar "Todos los privilegios".

[INFO]: En PrestaShop, el usuario necesita permisos completos sobre la base de datos para funcionar correctamente, especialmente para las operaciones de actualización y módulos.


Paso 4: Comprueba la conexión desde la línea de comandos (opcional pero útil)

Si eres un poco más técnico, puedes verificar la conexión directamente desde el servidor. Esto te ayudará a descartar problemas de red o de contraseña.

  1. Accede por SSH a tu servidor
    Desde Syspanel, ve a "Configuración avanzada" > "Acceso SSH" o usa un cliente como PuTTY.

  2. Ejecuta el comando de prueba
    Escribe:

    mysql -u usuario_de_bd -p -h localhost nombre_de_tu_bd
    

    Te pedirá la contraseña. Si la conexión es exitosa, verás el prompt de MySQL (mysql>). Si falla, te dirá el motivo exacto (por ejemplo, "Access denied for user").

  3. Si falla, revisa el error

    • "Access denied": Contraseña incorrecta o usuario sin permisos. Vuelve al Paso 2 y 3.
    • "Can't connect to MySQL server": El servicio MySQL no está corriendo o el host es incorrecto. Revisa el Paso 1.

Paso 5: Soluciona errores comunes de conexión MySQL PrestaShop

Aquí tienes los problemas más frecuentes y cómo resolverlos:

5.1. Error "Too many connections"

Ocurre cuando hay muchas conexiones simultáneas a la base de datos. Puede ser por un pico de visitas o por algún módulo mal configurado.

Solución desde Syspanel:

  1. Ve a "Servicios" y reinicia MySQL.
  2. Temporalmente, puedes aumentar el límite de conexiones editando el archivo de configuración de MySQL (my.cnf) y cambiando max_connections a un valor más alto (ej. 200).

5.2. Error "Table 'ps_configuration' doesn't exist"

Esto indica que la base de datos está corrupta o que faltan tablas. No te asustes, se puede reparar.

Solución:

  1. Desde Syspanel, ve a "Bases de datos" y selecciona tu base de datos.
  2. Busca la opción "Reparar" o "Repair" (normalmente está en el menú de acciones).
  3. Si no aparece, puedes usar phpMyAdmin (instálalo desde Syspanel en "Aplicaciones") y seleccionar todas las tablas, luego en el menú desplegable elige "Reparar tabla".

5.3. Error "Connection refused"

Suele deberse a que el servidor MySQL no escucha en el puerto correcto o está bloqueado por un firewall.

Solución:

  1. Verifica que en parameters.php el puerto esté vacío o sea 3306 (el puerto por defecto).
  2. Desde Syspanel, en "Servicios", asegúrate de que MySQL esté configurado para escuchar en 0.0.0.0 o 127.0.0.1 (según tu configuración).

Paso 6: Prueba la conexión con un script simple

Para estar 100% seguro de que los datos son correctos, puedes crear un pequeño archivo PHP de prueba.

  1. Crea un archivo llamado test_db.php en la raíz de tu tienda (desde el administrador de archivos de Syspanel).

  2. Pega este código (cambia los datos por los tuyos):

    <?php
    $host = 'localhost';
    $dbname = 'nombre_de_tu_bd';
    $user = 'usuario_de_bd';
    $pass = 'contraseña_secreta';
    
    try {
        $pdo = new PDO("mysql:host=$host;dbname=$dbname", $user, $pass);
        echo "Conexión exitosa a la base de datos.";
    } catch (PDOException $e) {
        echo "Error: " . $e->getMessage();
    }
    ?>
    
  3. Accede a tudominio.com/test_db.php desde tu navegador. Si ves "Conexión exitosa", el problema está en otro lado (por ejemplo, en la versión de PHP o en un módulo). Si ves un error, anótalo y revísalo.

[WARNING]: No olvides borrar este archivo después de la prueba, ya que expone tus credenciales.


Paso 7: Restablece la configuración de PrestaShop (último recurso)

Si todo lo anterior falla, puedes forzar a PrestaShop a regenerar su configuración de base de datos. Esto es un poco drástico, pero a veces funciona.

  1. Haz una copia de seguridad de tu base de datos y archivos (desde Syspanel, en "Bases de datos" > "Exportar").

  2. Elimina o renombra el archivo app/config/parameters.php (por ejemplo, a parameters.old.php).

  3. Vuelve a ejecutar la instalación de PrestaShop accediendo a tudominio.com/install. El instalador te pedirá los datos de la base de datos. Introduce los correctos y, cuando termine, no sobrescribas la base de datos existente (selecciona "Usar base de datos existente" si aparece).

[INFO]: Este método es útil si el archivo de configuración está corrupto. Asegúrate de que los datos que introduces son exactamente los mismos que tienes en Syspanel.


Preguntas frecuentes (FAQ)

¿Por qué aparece "Error base datos PrestaShop Syspanel" después de cambiar la contraseña?

Porque el archivo parameters.php sigue teniendo la contraseña antigua. Debes actualizarlo manualmente.

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

Sí, pero cada base de datos necesita permisos independientes. En Syspanel, puedes asignar el mismo usuario a varias bases de datos.

¿Qué hago si el servicio MySQL no arranca?

Revisa los logs del servidor en Syspanel (en "Registros" o "Logs"). Puede ser por falta de espacio en disco o por un error en la configuración. Contacta con tu proveedor de hosting si no puedes resolverlo.

¿Es seguro editar parameters.php manualmente?

Sí, siempre que tengas cuidado de no borrar otras líneas. Haz una copia de seguridad antes de modificarlo.

¿Cómo puedo saber si mi base de datos está corrupta?

Si ves errores como "Table doesn't exist" o "Repair table", usa la herramienta de reparación de Syspanel o phpMyAdmin.


Resumen y consejos finales

Los problemas de conexión a la base de datos en PrestaShop suelen resolverse en pocos minutos si sigues estos pasos en orden:

  1. Verifica que MySQL esté funcionando en Syspanel (Servicios).
  2. Comprueba las credenciales en app/config/parameters.php.
  3. Asegúrate de que el usuario tenga permisos sobre la base de datos.
  4. Prueba la conexión con un script simple.
  5. Si todo falla, repara o restaura desde una copia de seguridad.

Recuerda que Syspanel (con acceso por el puerto 2106) te ofrece herramientas visuales muy útiles para gestionar bases de datos, usuarios y servicios. Si alguna vez te sientes perdido, no dudes en consultar la documentación oficial de PrestaShop o contactar con el soporte de tu hosting.

[TIP]: Para evitar futuros problemas, programa copias de seguridad automáticas de tu base de datos desde Syspanel. Así, si algo sale mal, puedes restaurar en minutos.

Espero que esta guía te haya sido de ayuda. ¡Tu tienda volverá a funcionar en poco tiempo! Si tienes más dudas, recuerda que estamos aquí para ayudarte.

¿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