Navicat连接mysql报错1251 -client does not support authentication protocol
原文https://blog.csdn.net/qq_35654080/article/details/82588188
详解请参考https://blog.csdn.net/chszs/article/details/50651264
发现Navicat连接不上,总是报错1251;
原因是MySQL8.0版本的加密方式和MySQL5.0的不一样,连接会报错。
试了很多种方法,终于找到一种可以实现的:
更改加密方式
1.先通过命令行进入mysql的root账户:
1 |
|
再输入root的密码:
1 2 3 4 5 6 7 8 9 10 |
|
2.更改加密方式:
ALTER USER 'root'@localhost' PASSWORD EXPIRE INTERVAL 90 DAYS;
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'localhost' PASSWORD EXPIRE DEFAULT;
这三句具体作用是什么呢?
第一句有效期验证 90天
第二句 不验证有效期
第三句 设置为默认值
1 2 |
|
3.更改密码:该例子中 123为新密码
1 2 |
|
4.刷新:
1 2 |
|