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

Cómo solucionar el error 'Access denied for user' en cPanel y Plesk

Actualizado el 23 de enero de 2026

¡Hola! Si has llegado hasta aquí, es muy probable que te hayas encontrado con un mensaje de error bastante frustrante al intentar conectar tu sitio web o aplicación con su base de datos. Ver el texto "Access denied for user" puede ser desalentador, pero no te preocupes. En este artículo, vamos a desglosar paso a paso, y en un lenguaje muy claro, cómo solucionar este problema tanto en cPanel como en Plesk, los dos paneles de control de hosting más comunes del mundo.

Este error, conocido técnicamente como access denied mysql, es uno de los más frecuentes en el soporte técnico. La buena noticia es que, en el 90% de los casos, la solución es sencilla y no requiere conocimientos avanzados de programación. Solo necesitas paciencia y seguir esta guía al pie de la letra.

Vamos a ello. Respira hondo, porque en menos de lo que crees, tu web volverá a funcionar.

Entendiendo el Error "Access Denied for User"

Antes de lanzarnos a solucionar el error permisos mysql, es fundamental entender qué significa exactamente. Imagina que tu base de datos es una caja fuerte muy segura. Para abrirla, necesitas dos cosas: una llave (la contraseña) y el permiso del dueño (el usuario de la base de datos). El mensaje de error aparece cuando le das al sistema una llave incorrecta o cuando el usuario que intenta abrir la caja no tiene autorización para hacerlo en ese lugar específico.

El mensaje completo suele ser algo así:

Access denied for user 'usuario_bd'@'localhost' (using password: YES) o ... (using password: NO).

Este mensaje nos da pistas clave:

  • 'usuario_bd': Es el nombre de usuario que está intentando conectarse.
  • 'localhost': Es el host o servidor desde donde se intenta conectar. A veces aparece como 127.0.0.1 o un porcentaje % (que significa cualquier servidor).
  • using password: YES/NO: Nos indica si el sistema recibió una contraseña o no. Si dice YES, la contraseña fue rechazada. Si dice NO, significa que la aplicación no envió ninguna contraseña.

Ahora que sabemos leer el mensaje, vamos a las soluciones prácticas.

Solucionar el Error en cPanel (La Guía Paso a Paso)

cPanel es uno de los paneles más utilizados en el mundo del hosting compartido. Su interfaz es bastante amigable, pero a veces puede resultar confusa. Aquí tienes las causas más comunes y cómo arreglarlas.

1. Verifica tus Credenciales en Archivos de Configuración

El primer paso, y el más obvio, es asegurarte de que el nombre de usuario y la contraseña que estás usando en tu aplicación (WordPress, Joomla, etc.) son los correctos. A veces, al cambiar la contraseña en el panel, olvidamos actualizar el archivo de configuración del sitio.

Para ello, necesitas acceder al Administrador de Archivos de cPanel.

  • Busca la carpeta pública de tu sitio (normalmente llamada public_html).
  • Si usas WordPress, busca el archivo wp-config.php. Si usas otro CMS, puede ser config.php, settings.php, etc.
  • Haz clic derecho sobre el archivo y selecciona Editar.
  • Busca las líneas que dicen DB_NAME, DB_USER y DB_PASSWORD.

Aquí está el truco: El nombre de usuario en cPanel casi siempre lleva un prefijo. Si tu cuenta de cPanel se llama miusuario y creaste una base de datos llamada basedatos, el nombre real de la base de datos será miusuario_basedatos. Lo mismo ocurre con el usuario: miusuario_usuario.

[WARNING]: Asegúrate de que en el archivo de configuración, los nombres estén completos, incluyendo el prefijo. Es un error muy común olvidarlo, lo que provoca el cpanel access denied.

2. La Contraseña Correcta y el "Copiar y Pegar" Mágico

Las contraseñas de las bases de datos en cPanel suelen ser generadas automáticamente y son complejas. Un error típico es copiarlas mal o con un espacio extra al final.

  • Ve a la sección Bases de datos MySQL en cPanel.
  • Localiza tu usuario de base de datos.
  • Haz clic en Cambiar contraseña.
  • Genera una contraseña nueva (puedes usar el generador que te ofrece el propio cPanel).
  • IMPORTANTE: Copia esa contraseña en un bloc de notas temporal.
  • Ahora, edita tu archivo de configuración (el que vimos antes) y pega la contraseña directamente, sin espacios.
  • Guarda los cambios.

[TIP]: No escribas la contraseña a mano. Usa siempre "Copiar" y "Pegar" para evitar errores tipográficos.

3. El Problema del Host: "localhost" vs. Otros

En la mayoría de los casos, el host de la base de datos es localhost. Sin embargo, algunos proveedores de hosting utilizan un servidor de base de datos remoto (por ejemplo, mysql.midominio.com).

  • Revisa la información de bienvenida de tu hosting o el correo que te enviaron al contratar el servicio.
  • En cPanel, a menudo puedes encontrar el host de la base de datos en la sección Bases de datos MySQL, justo debajo de la lista de bases de datos. Suele decir algo como "Host de la base de datos: localhost" o un nombre similar.
  • Actualiza el archivo de configuración con el valor correcto.

4. Revisar los Privilegios del Usuario (El Error Permisos MySQL)

A veces, el usuario existe y la contraseña es correcta, pero el usuario no tiene permisos para acceder a la base de datos. Esto es un error permisos mysql clásico.

  • En cPanel, ve a Bases de datos MySQL.
  • En la sección Añadir usuario a la base de datos, verás una lista desplegable con tu base de datos y otra con tu usuario.
  • Selecciona el usuario y la base de datos correctos y haz clic en Añadir.
  • Te aparecerá una pantalla con una lista de privilegios (SELECT, INSERT, UPDATE, DELETE, etc.). Para una solución rápida y segura, marca la casilla TODOS LOS PRIVILEGIOS y haz clic en Hacer cambios.

[INFO]: Si estás usando una aplicación que solo necesita leer datos (SELECT) y no escribir, podrías solo darle ese privilegio. Pero para evitar futuros dolores de cabeza, es mejor darle todos los privilegios a menos que tengas una razón de seguridad muy específica.

5. Eliminar y Recrear el Usuario (Solución Nuclear)

Si has hecho todo lo anterior y el error persiste, es hora de la "solución nuclear".

  • Ve a Bases de datos MySQL.
  • En la sección de Usuarios MySQL, localiza tu usuario y haz clic en Eliminar.
  • Confirma la eliminación.
  • Ahora, crea un nuevo usuario con el mismo nombre (o uno nuevo) y una contraseña nueva.
  • Añade este nuevo usuario a tu base de datos con TODOS LOS PRIVILEGIOS.
  • Actualiza tu archivo de configuración con los nuevos datos.

Esto fuerza al sistema a crear un usuario completamente nuevo con permisos limpios, eliminando cualquier corrupción interna que pudiera haber.

Solucionar el Error en Plesk (La Guía Paso a Paso)

Plesk es otro panel muy popular, especialmente en servidores VPS y dedicados. Su interfaz es un poco más técnica, pero la lógica es la misma. Aquí tienes cómo abordar el plesk access denied.

1. Acceder al Administrador de Archivos y Verificar la Configuración

Al igual que en cPanel, el primer paso es revisar los archivos de configuración de tu aplicación.

  • En Plesk, ve a Sitios web y dominios.
  • Haz clic en Administrador de archivos para tu dominio.
  • Navega hasta la carpeta de tu sitio (normalmente httpdocs en lugar de public_html).
  • Encuentra el archivo de configuración (wp-config.php para WordPress, etc.) y edítalo.
  • Verifica los valores de DB_NAME, DB_USER y DB_PASSWORD.

En Plesk, el prefijo de usuario y base de datos es diferente. Si tu cuenta de sistema es usuario, el nombre de la base de datos podría ser usuario_bd o simplemente bd. Es crucial mirar los nombres exactos que aparecen en tu panel de Plesk.

2. Gestionar Usuarios y Bases de Datos desde el Panel

Plesk tiene una sección dedicada a bases de datos que es muy clara.

  • Ve a Sitios web y dominios y busca la sección Bases de datos.
  • Verás la lista de tus bases de datos. Haz clic en el nombre de la que te da problemas.
  • Se abrirá una ventana con la información de la base de datos. Aquí podrás ver el nombre exacto de la base de datos y el host (normalmente localhost).
  • En la parte de abajo, verás la lista de Usuarios asociados a esa base de datos.
  • Haz clic en el usuario que estás usando. Aquí puedes Cambiar la contraseña y, lo más importante, modificar los privilegios.

3. Asegurar los Privilegios del Usuario en Plesk

En Plesk, los privilegios se gestionan de forma más granular.

  • Después de hacer clic en tu usuario, verás una lista de todos los privilegios posibles.
  • Para una solución rápida, marca la casilla ALL PRIVILEGES (o "Todos los privilegios") que suele estar en la parte superior.
  • Si no la ves, asegúrate de marcar todas las casillas manualmente: SELECT, INSERT, UPDATE, DELETE, FILE, CREATE, ALTER, INDEX, DROP, etc.
  • Haz clic en Aceptar o OK para guardar los cambios.

[TIP]: Si tu aplicación solo necesita conectarse a una base de datos específica, asegúrate de que el usuario esté asignado a esa base de datos y no a otra. A veces, un usuario existe pero no está vinculado a la base de datos correcta, lo que provoca el access denied mysql.

4. Solución Rápida: Crear un Nuevo Usuario desde Cero

Al igual que en cPanel, si las cosas se ponen difíciles, lo mejor es empezar de cero.

  • En la sección de Bases de datos, haz clic en Añadir nuevo usuario.
  • Crea un nombre de usuario y una contraseña segura.
  • Una vez creado, ve a tu base de datos problemática.
  • En la sección de usuarios, haz clic en Añadir usuario y selecciona el usuario que acabas de crear.
  • Otórgale TODOS LOS PRIVILEGIOS.
  • Actualiza tu archivo de configuración con estos nuevos datos.

Consejos Generales y Preguntas Frecuentes (FAQ)

Aquí tienes una recopilación de los problemas más comunes y sus soluciones rápidas, que te servirán para cualquier panel de control.

¿Qué significa exactamente "Access denied for user 'x'@'localhost' (using password: YES)"?

Este es el mensaje más común. Significa que el sistema encontró al usuario x, pero la contraseña que se le proporcionó es incorrecta. Es un problema de autenticación. Vuelve a cambiar la contraseña en el panel y asegúrate de copiarla bien en tu archivo de configuración.

¿Y si el mensaje dice "(using password: NO)"?

Esto significa que tu aplicación está intentando conectarse sin enviar una contraseña. Esto suele ser un error en el archivo de configuración, donde el campo de contraseña está vacío o el código no lo está leyendo correctamente. Revisa que la variable DB_PASSWORD esté definida y tenga un valor entre comillas.

¿Qué hago si he cambiado la contraseña pero sigue sin funcionar?

A veces, los sistemas de caché de las aplicaciones guardan la conexión anterior. Si usas WordPress, puedes instalar un plugin de caché o simplemente reiniciar el servicio de PHP desde el panel de control (en cPanel o Plesk hay opciones para "Restart PHP"). Esto limpiará las conexiones antiguas.

¿El problema puede ser del servidor de la base de datos?

Sí, aunque es menos común. Si el servidor de base de datos está caído o sobrecargado, podrías ver errores similares. Verifica el estado del servicio desde tu panel de control o contacta con tu proveedor de hosting para que lo revisen.

¿Qué pasa si uso "Syspanel" (anteriormente HestiaCP)?

Si tu hosting utiliza el panel Syspanel, el proceso es muy similar. Accede a través del puerto 2106 (por ejemplo, https://tu-dominio.com:2106). Dentro, busca la sección de bases de datos. La lógica es idéntica: verifica el nombre exacto de la base de datos y el usuario, comprueba la contraseña y asegúrate de que el usuario tenga todos los privilegios sobre la base de datos correcta. Los pasos de solución de archivos de configuración son exactamente los mismos que en cPanel y Plesk.

Conclusión: Respira y Sigue los Pasos

El error "Access denied for user" es un dolor de cabeza, pero es completamente solucionable. La mayoría de las veces, se reduce a un error humano: una contraseña mal copiada, un nombre de usuario incompleto con el prefijo, o un usuario sin los privilegios adecuados.

Para resumir, sigue esta lista de verificación mental:

  1. Revisa el archivo de configuración: Nombres de base de datos y usuario completos y correctos.
  2. Restablece la contraseña en el panel de control y cópiala directamente en el archivo de configuración.
  3. Confirma el host: Normalmente es localhost, pero verifica que sea el que te indica tu proveedor.
  4. Verifica los privilegios: El usuario debe tener acceso a la base de datos específica y contar con los permisos necesarios (mejor todos).
  5. Si nada funciona, elimina y recrea el usuario desde cero.

Con estas soluciones, podrás resolver el cpanel access denied o el plesk access denied sin necesidad de ser un experto. Si después de intentarlo todo el error persiste, no dudes en contactar con el soporte técnico de tu hosting. Ellos tienen herramientas para revisar los registros del servidor y encontrar la causa raíz del problema.

¡Esperamos que este artículo te haya sido de gran ayuda y que tu web vuelva a estar en línea muy pronto!

¿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