重新在官网下载mac版本的mysql
https://blog.csdn.net/baidu_26315231/article/details/88963558
下载完成后 按照
https://blog.csdn.net/weixin_43111077/article/details/108811949 方式操作 重新链接navicat即可
1.问题原因
通过相关问题查阅,发现是由于navicat版本的问题造成连接失败。mysql8 之前的版本中加密规则是mysql_native_password,而在mysql8之后,加密规则是caching_sha2_password
MySql查看版本号-1
LITING:~ liting$ mysql -uroot -p // 进入mysql
Enter password: //输入mysql密码,如下提示表示登录成功
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 24
Server version: 8.0.14 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
MySql查看版本号-2(可以进入mysql后通过mysql命令查看)
mysql> select version();
+-----------+
| version() |
+-----------+
| 8.0.14 |
+-----------+
1 row in set (0.00 sec)
1
2
3
4
5
6
7
2.解决问题
1.进入mysql
LITING:~ liting$ mysql -uroot -p
Enter password: // mysql密码
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 26
Server version: 8.0.14 MySQL Community Server - GPL
Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
1
2
3
4
5
6
7
8
9
10
11
12
13
2.输入命令修改加密规则
1.ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘password’ PASSWORD EXPIRE NEVER;
password替换为mysql连接密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '12345678' PASSWORD EXPIRE NEVER;
1
2.ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘password’;
password为修改的新密码。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
1
3.刷新权限,使修改生效。
FLUSH PRIVILEGES;
1
4.查看表中相关信息,确认修改是否真正生效
mysql> use mysql; //先使用命令 use mysql
Database changed
mysql> select user,host,plugin from user where user='root'; // 在输入该命令
+------+-----------+-----------------------+
| user | host | plugin |
+------+-----------+-----------------------+
| root | localhost | mysql_native_password |
+------+-----------+-----------------------+
1 row in set (0.00 sec)
1
2
3
4
5
6
7
8
9
如上,密码校验规则已经修改成功
5.通过navicat连接测试
————————————————
版权声明:本文为CSDN博主「小李睡醒了」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43111077/article/details/108811949