MySQL升级到8.0版本后报错ERROR 1449 (HY000): The user specified as a definer ('mysql.info

287 阅读1分钟

问题:

MySQL从5.7版本升级到8.0版本后,升级当天数据库还能正常使用。

过了一段时间后,本机Navicat连接MySQL,测试连接成功,但是确定后连接报错:1449 - The user specified as a definer ('mysqlinfoschema'@'localhost') does not exist。

image.png 开启MySQL服务后,登录成功,但是使用时报错如下:

ERROR 1449 (HY000): The user specified as a definer ('mysql.infoschema'@'localhost') does not exist image.png

原因:

用户mysql.infoschema 权限问题

解决方案:

开启MySQL服务后。依次执行以下命令:

mysql -uroot -p"密码"
 
use mysql;
 
INSERT INTO mysql.user(`Host`,`User`,`plugin`,`authentication_string`,ssl_cipher,x509_issuer,x509_subject) VALUES ('localhost','mysql.infoschema','mysql_native_password','*THISISNOTAVALIDPASSWORDTHATCANBEUSEDHERE','','','');
 
FLUSH PRIVILEGES;
 
update mysql.user set Select_priv = 'Y' where User = 'mysql.infoschema';
 
FLUSH PRIVILEGES;
 

再次测试执行show databases命令,成功了!

image.png

如果本文对你有帮助的话,不妨点个小赞👍帮助更多的小伙伴!!!