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

Cómo arreglar el error 'Access denied for user' en Plesk

Actualizado el 26 de enero de 2026

¿Te ha aparecido el temido error "Access denied for user" al intentar conectar tu sitio web con la base de datos en Plesk?

No te preocupes, es uno de los problemas más comunes en el mundo del hosting y, afortunadamente, en la gran mayoría de los casos tiene una solución sencilla. Este mensaje es la forma que tiene MySQL de decirte: "He recibido tu solicitud, pero no me dejas entrar porque las credenciales no coinciden o no tienes permiso".

En esta guía extensa y paso a paso, vamos a desglosar todas las causas posibles y, lo más importante, cómo solucionarlas de forma definitiva. Tanto si eres un usuario novel como si ya tienes algo de experiencia, aquí encontrarás la respuesta. Vamos a ello.

¿Qué significa exactamente el error "Access denied for user"?

Cuando ves un mensaje similar a este:

SQLSTATE[HY000] [1045] Access denied for user 'usuario_bd'@'localhost' (using password: YES)

o

mysqli::real_connect(): (HY000/1045): Access denied for user 'admin'@'localhost' (using password: YES)

Lo que está ocurriendo es un fallo en el proceso de autenticación. La aplicación (WordPress, Joomla, PrestaShop, etc.) está intentando conectarse al servidor de bases de datos MySQL o MariaDB, pero el servidor rechaza la combinación de usuario, contraseña y host que se le ha proporcionado.

Piensa en ello como si intentaras entrar en tu casa con una llave equivocada. La cerradura (MySQL) no gira y te impide la entrada. Las razones pueden ser varias: la llave está mal copiada (contraseña incorrecta), estás usando la llave de otra puerta (usuario incorrecto) o la cerradura ha sido cambiada (permisos revocados).

Causa #1: La contraseña es incorrecta (el error más típico)

Esta es, con diferencia, la causa más frecuente. Copiar y pegar contraseñas desde gestores de contraseñas a veces añade espacios en blanco, o simplemente la recordamos mal.

Solución: Restablecer la contraseña desde Plesk

La forma más segura de solucionarlo es generar una contraseña nueva directamente desde el panel de Plesk. No intentes adivinarla.

  1. Accede a tu panel de Plesk. Normalmente suele ser https://tu-dominio.com:8443.
  2. En el menú lateral izquierdo, busca la sección "Bases de datos" (dentro de "Sitios web y dominios" o en su propio icono, dependiendo de la versión).
  3. Localiza la base de datos que te está dando problemas y haz clic en su nombre.
  4. Verás una tabla con los usuarios de esa base de datos. Busca el usuario que utiliza tu aplicación (el que aparece en el error, por ejemplo usuario_bd).
  5. Haz clic en el icono del usuario para editarlo (normalmente un lápiz).
  6. En el campo "Nueva contraseña" y "Confirmar contraseña", escribe una nueva clave robusta. Plesk suele tener un generador de contraseñas aleatorias muy útil (el icono del dado). Úsalo para evitar errores.
  7. Haz clic en "Aceptar" o "OK".

[WARNING]: Después de cambiar la contraseña, debes actualizarla también en el archivo de configuración de tu aplicación. Si usas WordPress, el archivo es wp-config.php. Si usas Joomla, configuration.php. Si no actualizas este archivo, el error persistirá, ya que la aplicación seguirá usando la clave antigua.

Solución: Verificar el archivo de configuración

Abre el archivo de configuración de tu CMS y asegúrate de que no hay espacios ni caracteres extraños alrededor de las comillas.

Por ejemplo, en wp-config.php deberías ver algo así:

define( 'DB_NAME', 'mi_base_de_datos' );
define( 'DB_USER', 'mi_usuario' );
define( 'DB_PASSWORD', 'mi_contraseña_segura' );
define( 'DB_HOST', 'localhost' );

Asegúrate de que DB_PASSWORD coincide exactamente con la que acabas de establecer en Plesk.

Causa #2: El usuario no tiene permisos sobre la base de datos

A veces, el usuario existe y la contraseña es correcta, pero el usuario no tiene privilegios para acceder a esa base de datos concreta. Esto suele pasar cuando se importa una base de datos o se crea un usuario manualmente y no se le asignan los permisos.

Solución: Asignar todos los privilegios desde Plesk

  1. Ve de nuevo a la sección "Bases de datos" en Plesk.
  2. Haz clic en el nombre de la base de datos problemática.
  3. En la sección de usuarios, verás una lista con los permisos. Asegúrate de que el usuario que estás utilizando tiene marcada la casilla "ALL PRIVILEGES" (Todos los privilegios) o, como mínimo, los esenciales como SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, INDEX, DROP.
  4. Si no lo tiene, márcalo y haz clic en "Aceptar".

[TIP]: En la mayoría de los casos, para que una aplicación web funcione sin problemas, el usuario necesita tener todos los privilegios sobre su base de datos. No escatimes en permisos si no sabes exactamente lo que estás haciendo.

Causa #3: El host de conexión es incorrecto (el famoso 'localhost')

El error suele mostrar @'localhost' o @'%'. El host es la dirección desde la que se permite la conexión.

  • localhost: Significa que solo se puede conectar desde el mismo servidor donde está alojada la base de datos.
  • % o una IP específica: Significa que se permite la conexión desde cualquier lugar o desde esa IP en particular.

Solución: Ajustar el host en la configuración de la aplicación

Si tu aplicación está en el mismo servidor que la base de datos (lo más común en hosting compartido), el host debe ser localhost.

  1. Revisa el archivo de configuración de tu aplicación (ej. wp-config.php).
  2. Busca la línea DB_HOST.
  3. Si pone localhost y no funciona, prueba a cambiarlo por 127.0.0.1 (la dirección IP de loopback). A veces los servidores tienen configuraciones de DNS internas que fallan.
  4. Guarda el archivo y prueba de nuevo.

[INFO]: Si tu aplicación está en un servidor distinto al de la base de datos (por ejemplo, una app en Vercel y la BD en tu hosting), necesitarás que el host sea la IP pública de tu servidor o %, y además, deberás añadir esa IP remota a la lista de hosts permitidos en Plesk.

Solución: Añadir hosts remotos en Plesk

  1. En Plesk, ve a "Bases de datos" y haz clic en el icono de la base de datos.
  2. Busca la opción "Hosts remotos" o "Acceso remoto".
  3. Añade la dirección IP desde la que te vas a conectar.
  4. Guarda los cambios.

Causa #4: El usuario no existe o está mal escrito

Puede parecer obvio, pero es muy fácil confundir el nombre de usuario. En Plesk, los nombres de usuario de las bases de datos suelen llevar un prefijo que coincide con el nombre del plan de hosting o del usuario del sistema.

Solución: Verificar el nombre exacto del usuario

  1. Ve a "Bases de datos" en Plesk.
  2. Haz clic en el nombre de la base de datos.
  3. En la lista de usuarios, verás el nombre exacto. Cópialo y pégalo en tu archivo de configuración, en lugar de escribirlo a mano.

Causa #5: El servidor MySQL está caído o saturado

Aunque menos común, a veces el error puede deberse a que el servicio de MySQL se ha detenido o está sobrecargado. Esto es más probable si el error es intermitente o afecta a varias bases de datos a la vez.

Solución: Reiniciar el servicio MySQL desde Plesk

  1. Accede a Plesk como administrador o como usuario con privilegios de root.
  2. Ve a "Herramientas y ajustes".
  3. Busca la sección "Servidor" y haz clic en "Servicios" o "Gestión de servicios".
  4. Localiza el servicio "MySQL" o "MariaDB".
  5. Haz clic en el icono de "Reiniciar" (normalmente un círculo con una flecha).

[WARNING]: Reiniciar el servicio de bases de datos puede causar una breve interrupción en todos los sitios web alojados en ese servidor. Hazlo con precaución si tienes otros clientes o sitios críticos.

Causa #6: Problemas con el archivo de configuración de Plesk (menos común)

En raras ocasiones, la configuración interna de Plesk para el acceso a MySQL puede estar dañada. Esto es más avanzado y normalmente requiere la intervención del soporte técnico de tu hosting.

Solución: Contactar con el soporte técnico

Si has agotado todas las opciones anteriores y el error persiste, el problema puede estar en el servidor. Proporciona a tu proveedor de hosting la siguiente información:

  • El error exacto y completo.
  • El nombre de la base de datos y del usuario.
  • La fecha y hora en la que empezó el problema.
  • Cualquier cambio reciente que hayas realizado (instalación de un plugin, cambio de contraseña, etc.).

Errores comunes al intentar solucionar este problema

A veces, en el intento de arreglar el error, podemos cometer otros. Aquí tienes algunos consejos para evitarlo:

  • No uses caracteres especiales en la contraseña si tu aplicación es antigua: Algunos CMS antiguos o mal configurados tienen problemas con caracteres como $, # o %. Si es tu caso, usa una combinación de letras y números.
  • No cambies el prefijo de las tablas: Si al importar una base de datos cambiaste el prefijo (ej. de wp_ a mi_tabla_), asegúrate de que el archivo de configuración de tu aplicación también lo refleja. De lo contrario, tendrás errores de "tabla no encontrada", que son diferentes al de "acceso denegado".
  • Cuidado al editar archivos con el Bloc de notas: A veces, el Bloc de notas de Windows añade una extensión extra (.txt) al archivo, o guarda la codificación de forma incorrecta. Usa un editor de código como Visual Studio Code o Notepad++.

Preguntas Frecuentes (FAQ) sobre el error de acceso a MySQL en Plesk

¿Por qué me aparece este error después de migrar mi sitio web?

Es muy común. Al migrar, las credenciales en el archivo de configuración suelen quedar desactualizadas. Sigue los pasos de la Causa #1 para actualizarlas.

¿Qué pasa si uso "Syspanel" en lugar de Plesk?

Si tu proveedor de hosting utiliza Syspanel (el antiguo HestiaCP), el proceso es similar, pero la interfaz cambia. En Syspanel, accede a través del puerto 2106 (por ejemplo, https://tu-dominio.com:2106) y busca la sección de bases de datos. Los conceptos son los mismos: verificar usuario, contraseña y permisos.

¿Puedo evitar este error en el futuro?

Sí. La mejor práctica es:

  • Utilizar un gestor de contraseñas para generar y almacenar contraseñas complejas.
  • Cambiar las contraseñas de las bases de datos periódicamente.
  • No compartir las credenciales de la base de datos en foros o con terceros no confiables.

¿El error "Access denied" puede deberse a un ataque de fuerza bruta?

No directamente. Un ataque de fuerza bruta intenta adivinar la contraseña, pero el error que ves tú es porque la contraseña que tu aplicación usa es incorrecta. Sin embargo, si sospechas que alguien ha cambiado tu contraseña, revísala de inmediato.

Conclusión: La paciencia y la revisión son la clave

El error "Access denied for user" en Plesk es un problema de configuración, no un fallo del sistema. Con una revisión metódica de los puntos que hemos tratado (contraseña, usuario, host y permisos), podrás resolverlo en la mayoría de los casos.

Te recomiendo seguir el orden de las causas tal y como las hemos presentado, ya que van de lo más simple a lo más complejo. Recuerda siempre verificar que el archivo de configuración de tu aplicación se ha guardado correctamente después de cada cambio.

[TIP]: Si después de todo sigues atascado, no te frustres. Anota todo lo que has probado y contacta con el soporte técnico de tu proveedor. Ellos tienen acceso directo al servidor y pueden diagnosticar el problema en cuestión de minutos. Es su trabajo, y para eso están.

Esperamos que esta guía extensa te haya sido de gran ayuda. ¡Mucha suerte con tu sitio web!

¿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