mysql8.0.30 使用远程工具连接失败

在Windows Server 2012环境下,使用MySQL 8.0.30时遇到远程连接工具如Navicat连接失败的问题。原因可能在于MySQL 8.0版本后加密方式变为caching_sha2_password,与低版本远程工具不兼容。解决方案包括修改my.ini配置文件,将身份验证插件类型改为mysql_native_password,或者重新创建/修改用户以兼容远程连接。

项目环境信息:

系统:window server2012
mysql版本:8.0.30


问题描述

mysql安装成功,创建用户后,使用远程连接工具navicat连接失败。


原因分析:

查询用户信息

连接数据库,查询用户信息

C:\Users\ADMIN>mysql -uroot -p
mysql>select user,host,plugin from mysql.user;

查询结果:
在这里插入图片描述

连接用户的host为%而非locahost,说明可以使用远程连接。问题原因:*
据相关资料搜索,mysql8.0版本以后加密方式改为caching_sha2_password,而远程连接工具版本较低导致连接不成功。

注:mysql身份验证插件类型

  • mysql_native_password(MySQL 5.7版本)
  • caching_sha2_password(MySQL 8.0版本)

解决方案:

修改mysql的用户默认加密规则

修改安装路径下的my.ini配置文件,将下图中加密规则改为 authentication_policy=mysql_native_password,,

在这里插入图片描述
重新创建用户或者修改原用户的加密规则后,可使用远程工具连接mysql。

alter user '{用户名}'@'{主机地址}' identified with {身份验证插件类型} by '{新密码}';

注1:如找不到my.ini配置文件,在此电脑-查看中勾上隐藏的项目,便可在C盘C:\ProgramData\MySQL\MySQL Server 8.0中找到my.ini文件(mysql默认安装场景下)。
注2:如提示无权限修改,可在程序中找到文本文件,右键以管理员身份运行,打开文件,就可以有权限正常修改文件了。

在这里插入图片描述

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值