【数据库】Navicat for MySQL连接 Mysql 8.0.11 出现1251- Client does not support authentication protocol错误

     小白在安装好MySQL之后,使用Navicat for MySQL工具时,又遇到了连接不上的问题,查了很多资料,最后才得以解决,这里小白做一个总结。

     在连接测试时,一直报错,如下图:

 

       当时很方,这是什么鬼,度娘了N个回答,有的说是版本不匹配,小白去吭哧吭哧下5.7的版本,MySQL官网一看,又没有64bit版本,天啦撸,又去各种找资源。后来就想,也许不是这个原因,就又去看其他大神的解答。后来试了一下重配密码。

      后来发现我这个原因原来是:
MySQL8 之前的版本中加密规则是mysql_native_password,而在MySQL8之后,加密规则是caching_sha2_password。

那么就需要把mysql用户登录密码加密规则还原成mysql_native_password,这样就可以了,并不需要换成5.7的版本。具体怎样操作呢?

步骤:

就和平时一样,进入到MySQL环境下,不同的事,是进入到MySQL目录的bin目录下:

1).打开命令行小黑屏,进入MySQL的bin目录

2).然后输入mysql -u root -p,输入密码,如下所示:

【数据库】Navicat for MySQL连接 Mysql 8.0.11 出现1251- Client does not support authentication protocol错误_第1张图片

3).这样就进入了MySQL环境下,然后键入:

输入这两行命令,记住一定是两行都要输,这时,你设置的密码才会生效。

【数据库】Navicat for MySQL连接 Mysql 8.0.11 出现1251- Client does not support authentication protocol错误_第2张图片

4).用Navicat for MySQL测试连接

这时,输入自己设置的密码,测试,就成功了

【数据库】Navicat for MySQL连接 Mysql 8.0.11 出现1251- Client does not support authentication protocol错误_第3张图片

小白这个情况,也是自身遇到的问题,可能大家还有别的原因,也欢迎大家留言分享哦~

你可能感兴趣的:(技术,数据库)