一、进入Navicat连接MySQL出现下面的2059界面
原因:mysql8之前版本中加密规则为mysql_native_password,mysql8以后的加密规则为caching_sha2_password,将mysql用户登录加密规则修改为mysql_native_password即可!
二、解决方案
1.进入doc: 点击Window+R 输入cmd
2.登陆数据库:输入mysql -uroot -p
3.输入你的数据库密码,正确后显示登陆成功 出现Welcome to the MySQL monitor.
4.输入 use mysql; 出现Database changed
5.输入select user,host from user; 目的为了查看user的root 对应host是什么 我的对应为localhost
6.修改加密规则:输入ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
注:第一个root为数据库用户名 第二个root为数据库密码 切记换成自己的用户名和密码
如果你查看到的root对应的host为% ,将该句改成ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
三、连接成功
点击连接测试,或者双击Navicat对应的MySQL即可成功