Access denied for user ‘root’@‘localhost’ (using password: YES) | mysql忘记登录密码

场景:忘记mysql登录密码

[root@cloud ~]# mysql -uroot -p
Enter password:
ERROR 1045 (28000): Access denied for user ‘root’@‘localhost’ (using password: YES)

环境:mysql5.7

解决:重置mysql密码

  1. 修改/etc/my.cnf,在[mysqld]代码块下,添加如下:

[mysqld]
skip-grant-tables

  1. 重启mysql

/etc/init.d/mysqld restart

  1. mysql -uroot -p 可以直接进入mysql命令行

[root@cloud ~]# mysql -uroot -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.34-log Source distribution

Copyright © 2000, 2021, Oracle and/or its affiliates.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the current input statement.

mysql>

  1. 修改密码

mysql> use mysql;
mysql> update user set authentication_string=password(“123456”) where user=“root”;
mysql> flush privileges;
mysql> grant all privileges on . to ‘root’@’%’ identified by ‘123456’ with grant option;
mysql> flush privileges;

  1. 退出mysql命令行

  2. 去掉/etc/my.cnf中刚才添加的注释,重新启动mysql,即可用新的密码登录


参考自:
https://blog.csdn.net/vv19910825/article/details/82979563
https://blog.csdn.net/u010953706/article/details/95985946

猜你喜欢

转载自blog.csdn.net/sinat_36050376/article/details/119827802