解决mysql8 #1227 – access denied; you need (at least one of) the system-kb88凯时官网登录

时间:2020-03-22
阅读:
免费资源网 - https://freexyz.cn/

很奇怪今天mysql8突然出现一些莫明的错误,比如我昨天在用的帐户,今天操作时报如下错误:

1227 - access denied; you need (at least one of) the system_user privilege(s) for this operation

具有root权限的用户也报system_user权限不足,如何解决?看下面

mysql8 access denied解决

mysql8版本中新增了一个system_user帐户类型,当我们新增一个用户test,并用root用户对test进行密码修改的操作时,系统不会报错。

create user 'test'@'localhost' identified by 'test';
set password for 'test'@'localhost' = 'test1';

因为此时用户test还没有被授权。当用户test被授权后,再使用root对test修改密码:

grant all on *.*  to 'test'@'localhost';
set password for 'test'@'localhost' = 'test1';

这个时候系统会报错:

> 1227 - access denied; you need (at least one of) the system_user privilege(s) for this operation

我查阅了一下官方文档,原因是由于root用户没有system_user权限,把权限加入后即可解决:

grant system_user on *.* to 'root';

然后再修改test密码即可。不因为system_user权限涉及到所有帐户操作,所以不仅是修改密码,修改帐户信息,授权等都会报这个错,解决方法同样是上面的操作。

参考

免费资源网 - https://freexyz.cn/
返回顶部
顶部
网站地图