通过相关问题查阅,发现是由于navicat版本的问题造成连接失败。mysql8 之前的版本中身份验证方式是mysql_native_password,而在mysql8之后,身份验证方式是caching_sha2_password。
通过Windows PowerShell(管理员),连接Mysql客户端,修改加密规则
右键windows图标,打开Windows PowerShell(一定要用管理员,不然重启服务时会提示拒绝访问),如下图所示:
输入以下命令:
mysql -uroot -p
-- 第一句 执行永不过期策略 ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; --第二句:更改加密方式 ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password