转 mysql服务设置远程连接 解决1251 client does not support ..问题

转:https://blog.csdn.net/qq_22211217/article/details/80415248

上网搜索解决方案,网上说出现这种情况的原因是:mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password,

解决问题方法有两种:

方法1.升级navicat驱动;

方法2.把mysql用户登录密码加密规则还原成mysql_native_password.
下面讲述方法二

一、前期准备
1、虚拟机/物理机    mysql环境(非本机)
2、本机 navicat软件(验证远程连接)


二 、mysql配置

1、在远程主机的本机   使用root用户连接mysql

mysql -u root -p

备注 : mysql -u 最高权限用户名 -p   再输入密码进入


2、设置用户配置项

(1) 查看用户信息

select host,user,plugin,authentication_string from mysql.user;

备注:host为 % 表示不限制ip   localhost表示本机使用    plugin非mysql_native_password 则需要修改密码

(2)修改用户密码

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'newpassword'; #更新一下用户的密码 root用户密码为newpassword

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password'; #更新一下用户的密码 

FLUSH PRIVILEGES; #刷新权限

三、使用navicat连接远程mysql

未配置情况为,连接拒绝


配置成功后


---------------------
作者:Mars_Bug
来源:CSDN
原文:https://blog.csdn.net/qq_22211217/article/details/80415248
版权声明:本文为博主原创文章,转载请附上博文链接!

猜你喜欢

转载自blog.csdn.net/leiguo1985/article/details/85599575