网上有两种解决办法,一种就是升级sqlyog,一种是修改mysql默认身份验证插件。
-
升级SQLyog
第一种就不用说了,SQLyog-13.1.6-0.x64是默认支持mysql8.0以上身份验证,把低版本的sqlyog升级到13.1.6就可以解决。 -
修改身份验证插件
首先登录mysql
mysql -hlocalhost -uroot -pRoot123.
这里跟很多博主都是一样的操作,但是这方法只能解决本地的连接问题,远程连接还是有问题。下面的123456是自己的密码
# 修改加密规则(非必须)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root123.' PASSWORD EXPIRE NEVER;
# 更新用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'Root123.';
# 刷新权限
FLUSH PRIVILEGES;
# 重置密码(==非必须==)
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Root123.';
如果你需要使用远程登录,将localhost 改为%就可以解决远程连接的问题。
# 修改加密规则(非必须)
ALTER USER 'root'@'%' IDENTIFIED BY 'Root123.' PASSWORD EXPIRE NEVER;
# 更新用户的密码
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Root123.';
# 刷新权限
FLUSH PRIVILEGES;
# 重置密码(==非必须==)
ALTER USER 'root'@'%' IDENTIFIED BY 'Root123.';