大家好,又见面了,我是你们的朋友全栈君。
前言
使用SQL8.0的用户在使用MySQLyog连接时,SQLyog连接MySQL8时报错:错误号码2058。
本文将介绍2种解决方法。
sqlyog配置新连接报错原因: 新版的MySQL8.0加密方法变了
具体原因:新的MySQL 8.0安装,在初始化数据目录时,将 ‘root’@’localhost’创建帐户,并且该帐户caching_sha2_password默认使用,密码的加密方法发生了改变,因此SQLyog不能正常解析,才报出如上错误。
解决: 修改MySQL8.0的身份认证
相同的方法不一定对每个人的电脑都有用,请自行尝试每一种方法!
不管用哪一种方法,用完必须重启MySQL再进行SQLyog尝试连接。
1.输入mysql -uroot -p 2.输入密码 3.执行
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
1
其中root
是用户名,password
是密码
显示Query OK, 0 rows affected (0.01 sec)
就代表修改成功
编辑my.ini文件,更改默认的身份认证插件。
查找my.ini位置文件位置:
登录mysql输入show variables like '%data%'
my.ini配置文件在Data上一级目录C:\ProgramData\MySQL\MySQL Server 8.0
当然你有Everthing直接搜索my.ini即可。
搜索my.ini
打开my.ini
之后在[mysqld]中添加下边的代码
default_authentication_plugin=mysql_native_password
1
找到mysqld
在mysqld下面添加代码
然后重启MySQL
以管理员身份运行cmd
停止mysql
net stop mysql80
1
启动mysql
net start mysql80
1
注意:最后面加上你的MySQL服务名(例如我的是mysql80
)
连接成功
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/203563.html原文链接:https://javaforall.cn