root@localhost问题

Posted xianxh

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了root@localhost问题相关的知识,希望对你有一定的参考价值。

忘记了root密码,或者删了root的一些权限,换来一堆报错,比如

ERROR 1142 (42000): SELECT command denied to user root@localhost for tab
ERROR 1045 (28000): Access denied for user ‘root‘@‘localhost‘

这个时候最好别慌,如果是用Navicat,这个时候千万别关闭链接。马上把用户创建回来,并且不要吝啬权限,能给它配的全配了。不过这都是理想状态,可能慌张,可能是在清洁脏用户就想着“惜权”不配全部权限。好吧,万一最糟糕的发生了呢?还是说说如何补救。

救场步骤:

1,修改/etc/my.cnf配置,绕过权限判断

[mysqld]
skip-grant-tables

2,重启mysql,进入控制台(此时已无需密码),先刷新权限。记住先别忙着就操作权限和密码,先运行以下语句,否则你的操作依然会继续报错。

 flush privileges;

3,然后重置root密码,或者给root添加权限。

update mysql.user set authentication_string=password(‘新密码) where user=root;//mysql 5.7

grant all privileges on *.* to [email protected]‘localhost‘;

 

4,最后还原一下my.cnf,然后重启。

 





以上是关于root@localhost问题的主要内容,如果未能解决你的问题,请参考以下文章

MYSQL错误代码#1045 Access denied for user 'root'@'localhost'

mysql Access denied for user root@localhost错误解决方法总结(转)

root@localhost问题

ERROR 1698 (28000): Access denied for user 'root'@'localhost' 解决方法

phpMyAdmin提示“Access denied for user 'root'@'localhost' (using password: NO)”的解决办法(代码

Linux 的防火墙无法启动,并且没有错误提示,怎么回事啊!!!