Linux下MySQL忘记密码操作;本操作同样适用于错误: ERROR 1045 (28000)

本操作同样适用于错误:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)

1.关闭MySQL服务:
service mysqld stop


2.设置MySQL无密码登陆
打开MySQL配置文件: vi /etc/my.cnf

在配置文件末尾加入无密码登陆命令:
skip-grant-tables

然后保存退出

然后在将MySQL服务启动: service mysqld start

3.无密码登陆MySQL:
直接输入mysql 即可进入MySQL。

4.修改密码:

修改密码命令:
update user set password=password("你的新密码") where user="root";

此处要注意的是,
如果修改命令之后出现

ERROR 1054 (42S22): Unknown column 'password' in 'field list'

这个错误
那就是你的MySQL提示没有password这个字段,password字段改成了 authentication_string
对应的命令就影是: update user set authentication_string=password("你的新密码") where user="root";
(我的就是这种i情况);



修改成功之后,退出MySQL:exit

5.将之前修改的配置文件中的无密码登陆命令删除
vi /etc/my.cnf


6.重启MySQL服务: service mysqld restart
7.登陆MySQL: mysql -uroot -p密码

猜你喜欢

转载自blog.csdn.net/sinat_36564972/article/details/80655783