Descripción del problema:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
Captura de pantalla del problema:
causas del problema:
solución:
Dirección de referencia: https://blog.csdn.net/m0_46278037/article/details/113923726
1. Cierra el servicio MySQL
net stop mysql
2. Omitir la verificación de contraseña
Abra cmd con un administrador, ingrese la carpeta bin en el directorio mysql y use mysqld -console --skip-grant-tables --shared-memory
para omitir la verificación de permisos ( la diferencia entre mysql8.0 y otras versiones es que no puede usar directamente mysqld --skip-grant-tables para omitir el inicio de sesión con contraseña ) .
3. Ingrese Mysql sin contraseña
Use el administrador para abrir una nueva ventana de cmd, ingrese a la carpeta bin en el directorio mysql e ingréselo directamente.Cuando se le mysql -u root -p
solicite ingresar una contraseña, simplemente presione Entrar para omitirla.
4. Configure la contraseña de inicio de sesión para que esté vacía
Ingrese el código y configure la contraseña para que esté vacía (la contraseña no se puede cambiar directamente en este momento, debe configurarse para que esté vacía primero, de lo contrario se informará un error).
use mysql; (使用mysql数据表)
update user set authentication_string='' where user='root';(将密码置为空)
quit; (然后退出Mysql)
5. Cambie su contraseña de inicio de sesión
Cierre otras ventanas de cmd, dejando solo la última abierta.
net stop mysql(关闭mysql服务,虽然会显示没有开启服务,但是以防万一)
net start mysql(再打开mysql服务)
mysql -u root -p (此处会显示输入密码,直接回车就好了,第四步我们已经将他置为空了)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';(更改密码)
6. Verifica si la modificación es exitosa
quit(退出mysql)
mysql -u root -p (输入新密码,再次登录)