Windows+MyEclipse+MySQL连接数据库报错caching_sha2_password
Posted MengDi
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows+MyEclipse+MySQL连接数据库报错caching_sha2_password相关的知识,希望对你有一定的参考价值。
在MyEclipse中打开【窗口】->【显示视图】-> MyEclipse Database Browser -> (图片里倒三角)New....
①Driver template:MySQL Conntctor/J;
②Driver name:自己随意命名,最后会显示在DB Broswer栏里供以后使用;
③Connection URL:默认:jdbc:mysql://<hostname>[<:3306>]/<dbname>,修改为jdbc:mysql://localhost:3306/mendy,其中mendy为MySQL中database的名字(cmd终端登录数据库后,show databases会显示所有的数据库,我这里的mendy为我的数据库,请自行更改);
④User name,password:登录数据库用户名字和密码(此处建议不使用root用户,后面Test Driver我再说明)
⑤Add JARs:添加一个jar包 (此处我试了很多jar包Driver classname 才有选项进行选择,这里我用的mysql-connector-java-5.1.47-bin.jar,在mysql官网里下载https://dev.mysql.com/downloads/connector/j/)
⑥Driver classname:下拉列表中选择com.mysql.jdbc.Driver
⑦Test Driver :成功后保存。
最后一步这里我遇到了很多问题
(要注意下自己填写的用户的权限够不够,还有密码要填好不要弄错)
(上面不建议root用户,因为当时我使用了root用户,连接MySQL报错Unable to load authentication plugin \'caching_sha2_password\'由于MySQL在8.0后验证方式由mysql_native_password变为caching_sha2_password,[mysql库select user,host,plugin,authentication_string from user;可以看到]所以连接时会报这个错。就要把用户的plugin改成\'mysql_native_password\',这种加密方式,我当时上来就改了root的加密方式,对,然后就限制登陆了,刚弄时候只有一个用户,啥也操作不了了,最后重新装了一遍MySQL,如果其他用户也遇到这个问题[mysql库alter user username@localhost identified with mysql_native_password by \'password’;])
以上是关于Windows+MyEclipse+MySQL连接数据库报错caching_sha2_password的主要内容,如果未能解决你的问题,请参考以下文章
myeclipse连接mysql生成数据表时中文字符乱码或问号(解决方法)