最新 mysql登录报错“Access denied for user 'root'@'localhost' (using password: NO”的处理方法

时间:2023-03-09 17:38:37
最新 mysql登录报错“Access denied for user 'root'@'localhost' (using password: NO”的处理方法

1.关闭正在运行的MySQL。
2.打开DOS窗口,转到mysql\bin目录。
3.输入mysqld --skip-grant-tables回车。如果没有出现提示信息,那就对了。(正常的情况是光标闪烁没有任何提示信息,如果不是就执行第二种方法)
4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。
5.输入mysql回车,如果成功,将出现MySQL提示符 <
6. 连接权限数据库<use mysql; (<是本来就有的提示符,别忘了最后的分号)
6.改密码:update MySQL.user set authentication_string=password('root') where user='root';(别忘了最后的分号)
7.刷新权限(必须的步骤)<flush privileges;

8.\q 退出;

---------------------------以上针对上面那种方法行不通的情况下----------------------------------

1、关闭MySQL服务

2、新建文本文件 命名任意 如mysql.txt 放在 MySQL安装文件夹下 如 C:MYSQL\mysql.txt

3、文件内容为 set authentiction_string for 'root'@'localhost' = password('newPassword');

3、打开dos系统 打开到安装的bin目录下面 执行mysqld -nt --init-file=C:MYSQL\mysql.txt

4、执行完之后,控制台打开MySQL服务 net start mysql ,提示服务器启动成功;

5、删除mysql.txt文件,另打开一个dos控制台,输入mysql --uroot -p 回车,然后输入上面修改的密码;回车之后就进入mysql>编辑框了;

6、\q退出;