用navicat连接MySQL时遇到的一些问题
在网上查了很多才知道原因,因为是数据库新手所以也试过了很多次,一开始没留意在修改加密规则的时候也把密码修改成了password,导致又出现错误,重下输入密码又出现1045错误,也试过了填写密码为password,不知道为什么还是登不上,其实密码就是这个。总结一下,要更加细心,把文字看完整看懂再操作。
一、发生2059错误
- 如图所示
2.原因:MySQL8版本前后加密规则发生了改变
MySQL8前:mysql_native_password
MySQL8后:caching_sha2_password
3.所以解决的方法是修改加密规则:
用cmd进入数据库,输入以下三条命令:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password' PASSWORD EXPIRE NEVER; #修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'new_password'; #更新一下用户的密码
FLUSH PRIVILEGES; #刷新权限
在这里要注意:密码其实已经被修改了,我这里的新密码为‘password’,如果想修改为其他密码可以在前两条命令中的‘new_password’改为你想要的密码
4.接着,再在navicat上连接就可以了(前提cmd也登陆了数据库)
二、发生1045错误
1.如图所示
2.原因是密码错误