Mysql 刚配置数据库出现用户不存在error

前几天自己想搭一个简单的ssm框架,用到了mysql数据库,下载安装配置完成后出现了

Mysql Error:The user specified as a definer (‘mysql.infoschema’@’localhost’) does not exist’)

这样的错误,研究了很多,热门解答都无法解决我的问题。

网上的类似问题:

 The user specified as a definer ('root'@'%') does not exist

解决方法:

     mysql -u root -p 你的密码 
     mysql>grant all privileges on . to root@”%” identified by “你的密码“; 
     flush privileges;

但是你会遇到以下问题:

check the manual that corresponds to your MySQL server version for the right syntax

出现这个问题的原因可能是:字段名可能包含mysql关键字
所以推出另一种解决办法以绕过上述问题:
从DOS进入MYSQL数据库

C:\Program Files\MySQL\MySQL Server 8.0\bin
mysql -u root -p
mysql> SET GLOBAL innodb_fast_shutdown = 1;
 
mysql>\q
C:\Program Files\MySQL\MySQL Server 8.0\bin
mysql_upgrade -u root -p

如果最后一条命令执行,出现这样的报告

 This installation of MySQL is already upgraded to 8.0, use --force if you still need to run mysql_upgrade

则将最后一条命令改为:

 C:\Program Files\MySQL\MySQL Server 8.0\binmysql_upgrade -u root -p --force

    原文作者:骑猪猪看海
    原文地址: https://segmentfault.com/a/1190000018835892
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞