Fork me on GitHub

SQLyog连接MySQL8.0报2058错误的解决方案

引言

用SQLyog连接MySQL8.0(社区版:mysql-installer-community-8.0.15.0.msi),出现错误2058(Plugin caching_sha2_password could not be loaded:xxxx),通过查询资料了解了该错误的原因并在本文中提出了该问题的方案。

原因

该错误提示如下图所示:

具体原因:新的MySQL 8.0安装,在初始化数据目录时,将 ‘root’@'localhost’创建帐户,并且该帐户caching_sha2_password默认使用,密码的加密方法发生了改变,因此SQLyog不能正常解析,才报出如上错误。

解决方案

以管理员运行【开始】-【所有程序】-【MySQL】-【MySQL Server 8.0】-【MySQL 8.0 Command Line Client - Unicode】,如下图所示:

  键入root账号的密码如下所示.

 按照以下sql格式输入命令,其中password是指root账号的密码。

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

执行该命令,结果为Query OK说明修改成功,如下图所示。

 用SQLyog重新连接MySQL,可以成功连接。此时查看mysql数据库中的user表,发现root账号的插件名称发生了变化,如下所示。

 

 总结

MySQL新版本有它的优势(一些新的特性),也有一定弊端(运维工具有些不能满足新版的需求),再选择之前我们要充分的斟酌,以免出现一些不可预知的问题。只有不但的发现问题,解决问题,总结解决方法,才能不断的提升自己,若本文能帮你了解或者解决该问题,希望添加关注!

posted @ 2019-10-10 13:21  码探长  阅读(3432)  评论(0编辑  收藏  举报