El Error MySQL 1045 suele producirse cuando intentas acceder a tu base de datos MySQL a través de WordPress. La petición será denegada si el servidor no cree que estés autorizado a realizar la acción. Por ejemplo, puede que estés utilizando una contraseña incorrecta o que no tengas los permisos necesarios.

Afortunadamente, hay muchas formas de solucionar el Error MySQL 1045. Por ejemplo, puedes restablecer tu contraseña, comprobar los permisos de usuario y verificar el puerto.

En este post, echaremos un vistazo más de cerca al Error 1045 de MySQL y discutiremos algunas causas comunes. A continuación, te guiaremos a través de cuatro métodos para solucionar el error. ¡Empecemos ya!

¿Qué Es el Error 1045 de MySQL?

Este error se presenta de varias formas, pero a lo largo de este post, nos referiremos a él como Error 1045 de MySQL. Sin embargo, el error también puede presentarse como «Error 1045 (28000) access denied for user root localhost”»:

Un ejemplo del error 1045 de MySQL
Error 1045 de MySQL

Normalmente, verás el Error MySQL 1045 cuando intentes acceder a la base de datos MySQL a través de WordPress. MySQL es el sistema de base de datos que se utiliza para añadir, acceder y gestionar contenido en tu sitio web WordPress.

Otras bases de datos populares que utilizan MySQL son MariaDB y SQLite. MongoDB, por otro lado, es una base de datos NoSQL sin esquema, por lo que no encontrarás el error 1045 al utilizarla.

Cuando encuentres este mensaje de error, indica que no estás autorizado a acceder a la base de datos desde localhost. Por ejemplo, puede que estés utilizando una contraseña o un nombre de usuario incorrectos, o que no tengas suficientes permisos.

¿Cuáles Son las Causas del Error 1045 de MySQL?

Estas son algunas de las principales causas del Error 1045 de MySQL:

  • Permisos insuficientes. No se te concederá acceso a la base de datos MySQL si no tienes los permisos de WordPress necesarios.
  • El usuario no existe. También verás el error si no estás registrado como usuario en el servidor. En este caso, la base de datos simplemente no sabe de tu existencia.
  • Credenciales de acceso incorrectas. La causa del error puede ser algo tan simple como utilizar una contraseña y un nombre de usuario incorrectos. Esto puede ocurrir a menudo si tienes varios servidores, ya que es fácil confundir las contraseñas.
  • Host incorrecto. Si no especificas el host con el que conectarte, MySQL intentará conectarse a localhost. Mientras tanto, podría estar intentando conectarse a un host o puerto diferente.
  • Interferencia de Bash. Los caracteres especiales de la contraseña pueden ser convertidos por Bash. Sin embargo, puedes encerrar la contraseña entre comillas simples para evitarlo.
  • Sin SSL. Para acceder a la base de datos, puede que se necesite Secure Sockets Layer (SSL), pero puede que no tengas un certificado SSL válido.

Una vez que hayas identificado la causa del Error MySQL 1045, estarás en mejores condiciones para aplicar la solución correcta. Entonces, podrás borrar el mensaje de error y volver al trabajo.

Cómo Solucionar el Error MySQL 1045 (4 Métodos)

Ahora que sabes un poco más sobre el Error 1045 de MySQL, veamos cuatro métodos sencillos para solucionarlo.

1. Comprueba que el Usuario Tiene los Privilegios Necesarios

Una de las principales causas del Error 1045 de MySQL es que el usuario «root» no tiene los permisos necesarios. Por tanto, lo primero que debes hacer es comprobar el estado de estos privilegios.

Puedes comprobar los permisos del usuario abriendo tu terminal e introduciendo lo siguiente:

ssh username@ipaddress

Tras conectarte correctamente, añade el siguiente comando desde el prompt de MySQL:

mysql -uroot -p

A continuación, introduce este comando para conceder todos los privilegios:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED BY 'password';

También puedes comprobar los privilegios de usuario utilizando phpMyAdmin. En este caso, tendrás que acceder a tu cuenta de alojamiento y hacer clic en la pestaña Cuentas de Usuario.

Si eres cliente de Kinsta, el proceso es un poco diferente. Una vez que hayas accedido a tu panel de control, ve a Sitios de WordPress y elige el sitio del que quieras comprobar los permisos. A continuación, en la pestaña Información, desplázate hasta Acceso a la base de datos:

Abre phpMyAdmin desde tu panel de MyKinsta
phpMyAdmin en el panel de MyKinsta

Aquí, haz clic en el botón Abrir phpMyAdmin. Tendrás que introducir tu nombre de usuario y contraseña para acceder a la base de datos. A continuación, selecciona el enlace Usuarios para gestionar todas tus cuentas de usuario MySQL.

Independientemente del proveedor de alojamiento que utilices, tendrás que localizar al usuario adecuado dentro de la base de datos y hacer clic en Editar privilegios. Aquí, podrás ver una lista de los privilegios que se le han concedido al usuario.

Si el usuario no tiene los privilegios necesarios, puedes concedérselos seleccionando las casillas correspondientes. A continuación, haz clic en Ir para aplicar los cambios. Ahora, intenta acceder de nuevo a la base de datos para ver si el Error 1045 de MySQL ha desaparecido.

2. Asegúrate de que Utilizas el Nombre de Usuario y la Contraseña Correctos

Aunque pueda parecer sencillo, a veces, la causa del Error MySQL 1045 es que estás utilizando unas credenciales de acceso incorrectas. Afortunadamente, puedes comprobar esta información consultando tu archivo wp-config.php.

Puedes encontrar este archivo conectándote al panel de control de tu proveedor de alojamiento y accediendo a un gestor de archivos. O bien, puedes conectarte a tu sitio a través de SFTP.

Con este método, primero tendrás que localizar el directorio root de tu sitio, que normalmente se denomina public_html. A continuación, deberás encontrar el archivo wp-config.php en su interior:

Localización del archivo wp-config.php mediante un cliente FTP
Localiza el archivo wp-config.php

Abre el archivo y comprueba que DB_USER y DB_PASSWORD tienen los valores correctos. El nombre de usuario es «root» Mientras, la contraseña es la que estableciste durante la instalación.

Si no recuerdas la contraseña que creaste, puedes acceder a cPanel, ir a Base de datos y hacer clic en MySQL. Si eres cliente de Kinsta, puedes comprobar esta información en Info → Acceso a la base de datos (consulta la sección anterior para más detalles).

3. Restablecer Tu Contraseña

Si no recuerdas la contraseña de la base de datos, puedes restablecerla para acceder a MySQL y borrar el error. En primer lugar, tendrás que acceder a phpMyAdmin.

A continuación, abre la base de datos de WordPress desde la parte izquierda de la pantalla:

Ver las tablas de la base de datos en phpMyAdmin
Tablas de la base de datos en phpMyAdmin

Aquí, tendrás una lista de tablas que contienen datos que ayudan al buen funcionamiento de tu sitio. Por ejemplo, deberías ver wp_comments y wp_posts entre otras.

En este punto, haz clic en wp_users. Esto debería revelar información básica sobre los usuarios, como nombres de usuario, direcciones de correo electrónico y contraseñas. Busca la lista de usuarios que necesitas cambiar y haz clic en Editar:

Editar una lista de usuarios en phpMyAdmin
Editar una lista de usuarios en phpMyAdmin

Aquí puedes cambiar todos los detalles de la cuenta de usuario.

Independientemente del proveedor de alojamiento que utilices, una vez que puedas editar el listado de usuarios, busca la sección user_pass. Aquí es donde puedes ver la contraseña actual de la base de datos:

Restablecer tu contraseña MySQL
Restablecer tu contraseña MySQL

Para cambiar la contraseña, haz clic en el área de texto y simplemente borra la contraseña e introduce una nueva.

En el área user_pass, también puedes utilizar el menú desplegable Función para seleccionar MD5. Esto encriptará tu contraseña para mayor seguridad. A continuación, haz clic en Ir en la parte inferior de la pantalla para guardar tu nueva contraseña.

4. Asegúrate de que el Servidor MySQL está Escuchando en el Puerto Correcto

Otra solución rápida para el Error MySQL 1045 es asegurarte de que el servidor está escuchando en el puerto correcto. Primero, sin embargo, es útil comprobar que MySQL se está ejecutando.

Puedes comprobar el estado del servidor ejecutando el siguiente comando:

systemtl status MySQL

Si el servidor no se está ejecutando, inícialo utilizando este comando:

systemtl start MySQL

Ahora, el puerto por defecto de MySQL es 3306, así que puedes asegurarte de que está ejecutándose en el puerto correcto. Abre un terminal o símbolo del sistema en el servidor donde esté instalado MySQL.

A continuación, conéctate al servidor utilizando este comando:

mysql -username -password

Ahora, escribe el siguiente comando para mostrar el número de puerto en el que está escuchando el servidor MySQL:

SHOW VARIABLES LIKE ‘port’:

Puedes cambiar el parámetro del puerto aquí o en el archivo de configuración. A continuación, reinicia el servidor MySQL para aplicar los cambios.

Resumen

Los errores de WordPress pueden ser frustrantes y entorpecer tu capacidad para realizar cambios importantes en tu sitio. El error MySQL 1045 es especialmente problemático porque te impide acceder a tu base de datos. Afortunadamente, hay formas de solucionarlo.

Para empezar, puede que necesites comprobar que tienes los privilegios necesarios para acceder a la base de datos. O puede tratarse simplemente de que has utilizado un nombre de usuario y una contraseña incorrectos. También puedes restablecer la contraseña o comprobar que el servidor MySQL está escuchando en el puerto correcto.

En Kinsta, todos nuestros planes ofrecen un soporte de primera calidad para ayudarte a solucionar los problemas rápidamente. Además, nuestro alojamiento de bases de datos tiene 25 centros de datos y n 260+ ubicaciones de Red de Entrega de Contenidos (CDN) e, por lo que es rápido, seguro y escalable. ¡Consulta nuestros planes hoy mismo!