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

Solución: Error de conexión a la base de datos MySQL en PrestaShop (DirectAdmin)

Actualizado el 23 de marzo de 2026

¡Entendido! Aquí tienes el artículo completo, optimizado para SEO y con todas las reglas de formato aplicadas.


¿Te ha aparecido el temido mensaje de "Error de conexión a la base de datos" en tu tienda PrestaShop? No te preocupes, es uno de los sustos más comunes para los administradores de tiendas online, pero también uno de los que tiene solución más rápida si sabes dónde mirar.

Este error suele aparecer de repente, a veces tras una mudanza de servidor, otras veces al intentar actualizar un módulo, o simplemente un día cualquiera al abrir tu tienda. La buena noticia es que, en la mayoría de los casos, no has perdido tus productos ni tus pedidos. Los datos siguen ahí, en el servidor; solo necesitas restablecer el "puente" entre PrestaShop y MySQL.

En esta guía, pensada para usuarios sin conocimientos técnicos profundos, vamos a desglosar paso a paso cómo solucionar el error conexión mysql prestashop, especialmente cuando tu tienda está alojada en un panel de control DirectAdmin. Vamos a ello.

¿Qué significa exactamente este error?

Piensa en tu tienda PrestaShop como un edificio de oficinas. Los archivos de tu tienda (las paredes, los muebles, la decoración) son el código PHP. Pero todos los datos importantes (los nombres de tus clientes, los precios de tus productos, tu historial de pedidos) están guardados en una caja fuerte gigante llamada Base de Datos MySQL.

El error de conexión significa que el "portero" (el archivo de configuración de PrestaShop) ha intentado abrir la puerta de esa caja fuerte, pero ha fallado. Las razones más comunes son:

  • Contraseña incorrecta: La llave ha cambiado o está mal escrita.
  • Usuario o nombre de base de datos incorrecto: Estás intentando abrir la caja fuerte equivocada.
  • Servidor de base de datos caído: El lugar donde está la caja fuerte está en obras.
  • Permisos insuficientes: El portero tiene la llave, pero no tiene permiso para girarla.
  • Archivos corruptos: El plano del edificio (el código) está dañado y no recuerda dónde está la puerta.

Vamos a diagnosticar y arreglar cada una de estas causas, empezando por las más sencillas.

Antes de empezar: Respira y prepárate

Para esta operación necesitarás dos cosas:

  1. Acceso a tu panel de control de Hosting (DirectAdmin): Normalmente se accede desde tudominio.com:2222. Ahí tienes las herramientas para gestionar la base de datos.
  2. Acceso al Administrador de Archivos (File Manager): También dentro de DirectAdmin, para editar un archivo de configuración.

[WARNING]: Este proceso implica editar archivos sensibles. Aunque es sencillo, te recomiendo hacer una copia de seguridad del archivo que vamos a tocar antes de modificarlo. Si algo sale mal, siempre puedes restaurarlo.

Solución Paso a Paso para el Error en DirectAdmin

Vamos a seguir un orden lógico, desde la revisión más simple a la más compleja.

Paso 1: Verifica que el servidor MySQL esté funcionando

A veces la solución es más tonta de lo que parece. El servidor de base de datos puede haberse reiniciado o caído por un pico de uso.

  1. Inicia sesión en DirectAdmin.
  2. Busca la sección "Administración de Servicios" o "System Services" (a veces está en el menú superior o en "Cuenta").
  3. Busca "MySQL" o "MariaDB" (es el motor de base de datos que usa MySQL).
  4. Verifica que su estado sea "Ejecutándose" o "Running". Si aparece "Detenido" o "Stopped", haz clic en el botón para iniciarlo.

[TIP]: Si no encuentras esta opción, contacta con tu proveedor de hosting. Ellos pueden reiniciar el servicio MySQL en segundos.

Paso 2: Localiza y revisa el archivo de configuración (parameters.php)

Este es el archivo que guarda la "llave" de tu base de datos. Si la contraseña o el usuario son incorrectos, este es el lugar a corregir.

  1. En DirectAdmin, abre el Administrador de Archivos (File Manager).
  2. Navega a la carpeta raíz de tu tienda PrestaShop. Normalmente es domains/tudominio.com/public_html o similar.
  3. Dentro de esa carpeta, entra en la carpeta app/config/.
  4. Busca el archivo parameters.php. Haz clic derecho sobre él y selecciona "Editar" (o "Edit").

Verás un contenido similar a este (no te asustes, es más fácil de lo que parece):

<?php
$parameters = array(
    'database_host' => 'localhost',
    'database_port' => '',
    'database_name' => 'tu_usuario_db',
    'database_user' => 'tu_usuario_db',
    'database_password' => 'TuContraseñaSecreta',
    'database_prefix' => 'ps_',
    // ... otros parámetros
);

Aquí es donde está el quid de la cuestión. Verifica que:

  • database_host: Normalmente es localhost, pero algunos hosts usan una dirección IP o un nombre de servidor específico. Consulta tu correo de bienvenida del hosting.
  • database_name: El nombre de tu base de datos. Debe coincidir EXACTAMENTE con el que ves en DirectAdmin.
  • database_user: El usuario de la base de datos. Debe coincidir EXACTAMENTE con el que ves en DirectAdmin.
  • database_password: Aquí está el error más común. Esta contraseña debe ser la que configuraste al crear la base de datos. A menudo, la gente confunde la contraseña del hosting con la de la base de datos. Son cosas diferentes.

[WARNING]: Si has cambiado la contraseña de la base de datos recientemente (desde DirectAdmin), debes actualizar este archivo con la nueva contraseña. Si no lo hiciste, este es el error.

Paso 3: Revisa las credenciales en DirectAdmin

Para asegurarte de que los datos que pusiste en el parameters.php son correctos, vamos a la fuente de la verdad.

  1. Ve a la sección "MySQL Management" en DirectAdmin.
  2. Verás una lista de tus bases de datos y los usuarios asociados.
  3. Compara el nombre de la base de datos y el usuario que ves en la lista con los que tienes en el archivo parameters.php.
  4. Si no recuerdas la contraseña, puedes cambiarla desde aquí. Haz clic en "Cambiar Contraseña" (Change Password) para tu usuario de base de datos.
  5. IMPORTANTE: Anota la nueva contraseña y actualízala en el archivo parameters.php que editamos antes.

[TIP]: Una buena práctica es usar una contraseña compleja pero que puedas guardar en un gestor de contraseñas. Evita usar el símbolo ' (comilla simple) o \ (barra invertida) en la contraseña, ya que pueden romper el archivo PHP.

Paso 4: Arreglar la base de datos PrestaShop (Reparar tablas)

A veces, el error no es de credenciales, sino de que algunas tablas de tu base de datos están corruptas. Esto puede pasar tras una caída del servidor o una importación fallida.

Para arreglar base de datos prestashop, podemos usar las herramientas nativas de MySQL.

  1. En DirectAdmin, entra en "MySQL Management".
  2. Busca tu base de datos y haz clic en "phpMyAdmin" (es una interfaz web para gestionar la base de datos).
  3. Se abrirá una nueva ventana. A la izquierda verás el nombre de tu base de datos. Haz clic en él.
  4. Verás una lista de todas las tablas (archivos internos) de tu base de datos. Todas empiezan con el prefijo ps_ (o el que hayas configurado).
  5. Para seleccionarlas todas, haz clic en la casilla de verificación en la parte inferior de la lista (Seleccionar todo).
  6. En el menú desplegable que aparece al final de la lista, selecciona "Reparar tabla" (o "Repair table").
  7. Confirma la acción. phpMyAdmin ejecutará un proceso de reparación. Esto puede tardar unos segundos o minutos, dependiendo del tamaño de tu tienda.

[INFO]: Este proceso es seguro y no borra datos. Solo intenta reconstruir los índices y corregir errores internos de las tablas.

Paso 5: Verifica los permisos del usuario de la base de datos

Un usuario puede tener la contraseña correcta, pero si no tiene permisos para acceder a la base de datos, el error persistirá.

  1. En DirectAdmin, ve a "MySQL Management".
  2. Busca la sección de "Privilegios de Usuario" o similar.
  3. Asegúrate de que tu usuario tiene TODOS LOS PRIVILEGIOS marcados (SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, etc.). Lo más fácil es marcar la casilla "ALL PRIVILEGES" (Todos los privilegios).
  4. Guarda los cambios.

Paso 6: El último recurso: Restaurar una copia de seguridad

Si has llegado hasta aquí y nada funciona, el problema puede ser más profundo. Quizás un archivo del núcleo de PrestaShop está dañado.

  • Opción A: Si tienes una copia de seguridad de los archivos de tu tienda, puedes intentar reemplazar solo la carpeta app/config/ con la versión de la copia de seguridad.
  • Opción B: Si tienes una copia de seguridad de la base de datos, puedes restaurarla desde phpMyAdmin (importar). Esto revertirá cualquier cambio dañino en los datos.

[WARNING]: Esta opción es la más invasiva. Si restauras una base de datos antigua, perderás los pedidos y clientes creados desde esa copia. Úsala solo si estás desesperado y tienes una copia reciente.

El problema del "localhost" en algunos hosts

A veces, el error conexion mysql prestashop no es por contraseña, sino porque el servidor de base de datos no está en localhost. En algunos entornos de hosting compartido, el host de la base de datos es un nombre como mysql.tudominio.com o una IP como 127.0.0.1.

  1. Revisa la información de tu cuenta de hosting en el correo de bienvenida.
  2. Si dice algo como "Servidor MySQL: mysql.tudominio.com", usa ese valor en database_host.
  3. A veces, usar 127.0.0.1 en lugar de localhost puede funcionar mejor, ya que evita la resolución de nombres DNS.

Preguntas Frecuentes (FAQ)

¿Por qué me sale este error después de cambiar la contraseña de mi hosting?

Porque la contraseña de la base de datos es independiente de la contraseña de tu panel de control. Al cambiar una, no se actualiza la otra automáticamente. Debes actualizar manualmente el archivo parameters.php con la nueva contraseña de la base de datos.

¿Puedo perder mis productos si hago una reparación de tablas?

No. La reparación de tablas solo corrige errores internos de estructura. No borra filas ni datos. Es un proceso seguro y recomendado.

¿Qué significa el prefijo ps_ en las tablas?

Es el prefijo que usa PrestaShop por defecto para sus tablas. Evita conflictos si tienes varias aplicaciones en la misma base de datos. Si tu tienda usa un prefijo diferente, aparecerá en el archivo parameters.php como database_prefix.

He probado todo y sigue sin funcionar, ¿qué hago?

Si has seguido todos los pasos y el error conexion mysql prestashop persiste, es hora de contactar con tu proveedor de hosting. Ellos tienen acceso a los logs del servidor y pueden ver el error exacto. Es posible que haya un problema de firewall o de configuración a nivel de servidor que solo ellos pueden solucionar.

¿Este error puede aparecer en otros paneles de control?

Sí, este error es genérico de PrestaShop y MySQL. Los pasos de editar parameters.php y usar phpMyAdmin son universales. La diferencia está en cómo accedes a esas herramientas. En Syspanel (el antiguo HestiaCP), el proceso es muy similar, pero el acceso al panel se realiza a través del puerto 2106 (ejemplo: tudominio.com:2106). La lógica de solución es idéntica: verificar credenciales y reparar tablas.

¿Cada cuánto tiempo debo hacer una copia de seguridad?

Te recomiendo hacer una copia de seguridad completa (archivos y base de datos) al menos una vez a la semana, o antes de realizar cualquier cambio importante como actualizar módulos o el núcleo de PrestaShop. DirectAdmin tiene herramientas para programar copias automáticas.


Con estos pasos, en el 90% de los casos, habrás resuelto el error. Recuerda que la paciencia es clave. Revisa cada paso con calma y, sobre todo, no te olvides de guardar los cambios en el archivo parameters.php antes de probar tu tienda de nuevo. ¡Mucha suerte con tu tienda!

¿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