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错误解决方法总结(转)
ERROR 1698 (28000): Access denied for user 'root'@'localhost' 解决方法
phpMyAdmin提示“Access denied for user 'root'@'localhost' (using password: NO)”的解决办法(代码