首先你必须明白,出现这样的错误基本上都是权限问题导致的,网上能找到很多解决办法,但是没有系统性的去解决掉这个问题。
首先第一步排查问题:
你需要做的事情是,登陆linux服务器的mysql服务:
1.root用户登陆系统:mysql -u root -p mysql
2.切换数据库:use mysql
3.查询你数据库里是否存在用户为空的用户:select * from user where user='';
如何查询出来有数据:
那么你需要删除,这样的空用户
delete from user where user='';
flush privileges; //重载权限表
4,查询mysql所有用户组权限:select user,host from user;
查询后会如果发现很多额外账户可能也会导致登录用户权限异常导致登录后无法使用;
我查询到自己这边有三个未使用的用户:lipsticks,ROOT,name=root and host =‘localhost’;
使用删除命令将他们删除:delect from where user=‘lipsticks’;delect from where user=‘ROOT’;
delect from where name=‘’root‘’ and host =‘lo