这是因为MYSQL8.0之后更换了加密规则为caching_sha2_password,8.0之前则为mysql_native_password,用语句alter user 'root'@'localhost' identified by 'xxxxx';来修改密码会使用8.0默认的caching_sha2_password规则来加密,而SQLyog中找不到新的身份验证插件,加载身0份验证插件错误,因此产生以上报错。
解决方法
使用mysql_native_password规则重新设置密码,指令如下
use mysql;
#更改密码
alter user 'root'@'localhost' identified with mysql_native_password by 'xxxxx';