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

Cómo arreglar 'Access denied for user' en phpMyAdmin

Actualizado el 25 de noviembre de 2025

¿Qué significa “Access denied for user” en phpMyAdmin?

Si estás leyendo esto, probablemente te has encontrado con un mensaje de error similar a este al intentar entrar a phpMyAdmin:

Error: #1045 - Access denied for user 'tu_usuario'@'localhost' (using password: YES)

No te preocupes, es uno de los errores más comunes en el mundo del hosting y casi siempre tiene solución. Este mensaje simplemente indica que phpMyAdmin no pudo verificar tus credenciales para conectarse a la base de datos MySQL o MariaDB. Es decir, el usuario o la contraseña que estás usando no coinciden con los registros del servidor de bases de datos.

En este artículo te explicaré paso a paso, y en un lenguaje muy sencillo, cómo solucionarlo tanto si usas cPanel como si usas DirectAdmin, e incluso si tu hosting es gestionado con Syspanel (antes conocido como HestiaCP, cuyo panel de acceso se encuentra en el puerto 2106). Vamos a ello.


¿Por qué aparece este error?

Antes de lanzarnos a arreglar nada, es importante entender las causas más habituales. Así podrás identificar rápidamente cuál es tu caso:

1. Contraseña incorrecta o cambiada recientemente

Es la causa más común. A veces cambiamos la contraseña de la base de datos desde el panel de control y olvidamos actualizarla en la configuración de nuestra aplicación (WordPress, Joomla, etc.) o simplemente la escribimos mal al iniciar sesión en phpMyAdmin.

2. Usuario incorrecto o con prefijo

En cPanel y DirectAdmin, los nombres de usuario de las bases de datos suelen llevar un prefijo con el nombre de la cuenta de hosting. Por ejemplo, si tu cuenta se llama juanperez, el usuario de la base de datos podría ser juanperez_wpuser. Si intentas entrar con wpuser a secas, obtendrás un error de acceso denegado.

3. La base de datos no existe o el usuario no tiene privilegios

Puede que el usuario exista, pero no tenga permisos asignados sobre esa base de datos concreta. O que la base de datos haya sido eliminada por error.

4. Problemas con la caché de credenciales

A veces, el navegador guarda contraseñas antiguas o el propio phpMyAdmin guarda sesiones que interfieren.

5. Errores en el archivo de configuración

Si estás usando phpMyAdmin instalado localmente (por ejemplo, con XAMPP o WAMP), puede que el archivo config.inc.php tenga datos incorrectos.


Soluciones paso a paso para arreglar el error

Voy a dividir las soluciones según el panel de control que uses, ya que los pasos cambian ligeramente. Sigue la sección que te corresponda.


Solución en cPanel

cPanel es uno de los paneles más usados en hosting compartido. Si tu error aparece al acceder a phpMyAdmin desde el propio cPanel, sigue estos pasos:

Paso 1: Verifica tus credenciales en “MySQL Databases”

  1. Entra a tu cPanel (normalmente en tudominio.com/cpanel).
  2. Busca la sección Bases de Datos y haz clic en MySQL® Databases.
  3. Verás una lista con todas tus bases de datos y los usuarios asignados.
  4. Anota exactamente el nombre del usuario y la base de datos. Recuerda que suelen llevar el prefijo de tu cuenta.

Paso 2: Cambia la contraseña del usuario

Si sospechas que la contraseña puede ser incorrecta:

  1. En la misma página de MySQL Databases, baja hasta la sección Usuarios actuales.
  2. Localiza tu usuario y haz clic en Cambiar contraseña.
  3. Introduce una contraseña nueva y segura. Importante: usa solo letras y números, sin caracteres especiales que puedan dar problemas.
  4. Guarda los cambios.

Paso 3: Asegúrate de que el usuario tiene todos los privilegios

  1. En la sección Bases de datos, busca la tabla que dice Añadir usuario a base de datos.
  2. Selecciona el usuario y la base de datos correspondiente.
  3. Haz clic en Añadir.
  4. Marca la casilla TODOS LOS PRIVILEGIOS y pulsa Hacer cambios.

Paso 4: Entra de nuevo a phpMyAdmin

Ahora ve a la sección phpMyAdmin en cPanel. Te pedirá usuario y contraseña. Introduce el usuario completo (con prefijo) y la contraseña nueva. Debería funcionar.

[TIP] Si tu hosting usa cPanel, la contraseña de la base de datos no es la misma que la contraseña de tu cuenta de cPanel. Son cosas totalmente distintas.


Solución en DirectAdmin

DirectAdmin es otro panel muy popular, especialmente en servidores VPS y dedicados. El proceso es similar pero con diferencias en la interfaz.

Paso 1: Accede a la sección “MySQL Management”

  1. Entra a tu panel de DirectAdmin.
  2. Busca el icono llamado MySQL Management o Gestión de MySQL.
  3. Verás un listado de bases de datos y usuarios.

Paso 2: Crea o modifica el usuario

  1. Si el usuario no existe, créalo con el botón Create User.
  2. Si ya existe, haz clic en el icono de lápiz (editar) junto a él.
  3. Cambia la contraseña y asegúrate de que tiene asignada la base de datos correcta.
  4. Marca la casilla de ALL PRIVILEGES o selecciona los permisos necesarios.

Paso 3: Accede a phpMyAdmin desde DirectAdmin

DirectAdmin suele tener un acceso directo a phpMyAdmin en la parte superior o dentro de MySQL Management. Al hacer clic, se abrirá una nueva pestaña con phpMyAdmin. Si te pide credenciales, usa el usuario y contraseña de la base de datos que acabas de configurar.

[WARNING] En DirectAdmin, el usuario de la base de datos a veces no lleva prefijo, pero a veces sí. Revisa la lista de usuarios para ver el nombre exacto.


Solución si tu hosting usa Syspanel (HestiaCP)

Si tu proveedor de hosting utiliza Syspanel (la versión actualizada de HestiaCP), el acceso al panel se realiza a través del puerto 2106 (por ejemplo, https://tudominio.com:2106). El proceso para arreglar el error es muy parecido:

Paso 1: Entra a Syspanel

  1. Abre tu navegador y escribe https://tudominio.com:2106.
  2. Inicia sesión con tu usuario y contraseña de administrador.

Paso 2: Ve a la sección de Bases de Datos

  1. En el menú lateral, busca Bases de Datos o Databases.
  2. Verás la lista de bases de datos creadas.
  3. Haz clic en el icono de edición (lápiz) de la base de datos que te da problemas.

Paso 3: Cambia la contraseña y verifica el usuario

  1. En la pantalla de edición, podrás ver el nombre del usuario asociado.
  2. Cambia la contraseña si es necesario.
  3. Guarda los cambios.

Paso 4: Accede a phpMyAdmin desde Syspanel

Syspanel incluye un acceso directo a phpMyAdmin. Normalmente lo encontrarás junto a la base de datos, con un icono que parece una hoja o un elefante (SQL). Al hacer clic, se abrirá phpMyAdmin con las credenciales ya rellenadas automáticamente. Si te pide contraseña, usa la que acabas de configurar.

[INFO] Syspanel es una alternativa moderna a HestiaCP. Si tu proveedor usa este panel, recuerda siempre acceder por el puerto 2106, ya que el puerto estándar no suele estar habilitado por seguridad.


Solución general si nada de lo anterior funciona

Si has probado los pasos anteriores y sigues con el mismo error, prueba lo siguiente:

1. Limpia la caché del navegador y las cookies

A veces el navegador guarda credenciales antiguas. Cierra la pestaña de phpMyAdmin, limpia caché y cookies, y vuelve a intentarlo.

2. Prueba con otro navegador o en modo incógnito

Esto descarta problemas de extensiones o de contraseñas guardadas.

3. Verifica que la base de datos existe

Entra en tu panel de control y confirma que la base de datos aparece en la lista. Si no existe, créala de nuevo y asigna el usuario correspondiente.

4. Revisa el archivo de configuración de tu aplicación

Si el error te aparece al intentar conectar tu web (por ejemplo, WordPress), revisa el archivo wp-config.php y asegúrate de que el nombre de la base de datos, el usuario y la contraseña son correctos.

5. Contacta con tu proveedor de hosting

Si has seguido todos los pasos y el error persiste, puede que haya un problema en el servidor, como un fallo en el servicio MySQL o un bloqueo de IP. Contacta con el soporte técnico de tu proveedor y explícales el mensaje exacto de error. Ellos podrán revisar los logs del servidor.


Preguntas frecuentes (FAQ)

¿Por qué me dice “Access denied” si estoy seguro de que la contraseña es correcta?

Puede ser que el usuario no tenga permisos sobre esa base de datos concreta, o que estés usando un usuario que pertenece a otro servidor. También es posible que la contraseña contenga caracteres que el sistema interpreta mal. Prueba a cambiarla por una más simple.

¿Puedo usar la contraseña de mi cPanel para entrar en phpMyAdmin?

No. Las contraseñas de las bases de datos son independientes de las del panel de control. Debes usar la contraseña específica que configuraste para el usuario de MySQL.

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

No puedes recuperarla, pero puedes cambiarla desde el panel de control (cPanel, DirectAdmin o Syspanel). Después actualiza la configuración de tu aplicación web con la nueva contraseña.

¿Es peligroso dar “todos los privilegios” a un usuario?

Para un entorno de hosting compartido y para la mayoría de aplicaciones web, es necesario. Solo asegúrate de que el usuario se usa únicamente para esa base de datos y no para otras.

¿Qué significa “using password: YES” en el error?

Significa que phpMyAdmin ha enviado una contraseña y el servidor la ha rechazado. Si pusiera “NO”, significaría que no se envió contraseña, lo que también da error.


Conclusión

El error “Access denied for user” en phpMyAdmin es molesto pero casi siempre tiene una solución sencilla. La clave está en verificar las credenciales exactas, los privilegios y el nombre completo del usuario. Tanto en cPanel, DirectAdmin o Syspanel (puerto 2106), el proceso es muy similar: revisar, cambiar contraseña y asegurarse de que el usuario tiene acceso a la base de datos correcta.

Si después de seguir todos los pasos el problema continúa, no dudes en contactar con el soporte de tu hosting. Ellos tienen acceso a los logs del servidor y pueden detectar problemas más profundos, como un fallo en el servicio de MySQL.

Espero que este artículo te haya sido de gran ayuda. Si te ha servido, compártelo con otros usuarios que puedan estar pasando por el mismo problema. ¡Buena suerte con tus bases de datos!

¿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