Navicat连接mysql8.0:提示无法加载身份验证插件“caching_sha2_password”

Navicat连接mysql时,提示:Unable to load authentication plugin 'caching_sha2_password'.

原因:mysql 8.0 默认使用 caching_sha2_password 身份验证机制。

bash 复制代码
D:\MySQL8.0\install\bin>mysql -uroot -p123456789   #登录
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 22
Server version: 8.0.32 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

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> use mysql
Database changed
mysql> select user,host,plugin,authentication_string from user;    #查看用户信息

修改身份验证机制

bash 复制代码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';    #修改身份验证机制

更改过程:

MySQL 复制代码
mysql> mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';    #修改身份验证机制
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '4' at line 1
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
Query OK, 0 rows affected (0.07 sec)

mysql> ALTER USER 'pokes'@'%' IDENTIFIED WITH mysql_native_password BY '123456';   #修改身份验证机制 
Query OK, 0 rows affected (0.06 sec)

mysql>

MYSQL8.0开启远程链接

bash 复制代码
mysql -uroot -p123456
grant all privileges on *.* to 'root'@'%'identified by 'youpassword' with grant option;  #开启远程访问
mysql> CREATE USER 'pokes'@'%' IDENTIFIED BY '123456';		#新建一个用户
mysql> GRANT ALL PRIVILEGES ON *.* TO 'pokes'@'%' WITH GRANT OPTION;   #授权
mysql> FLUSH PRIVILEGES;    #刷新
bash 复制代码
D:\MySQL8.0\install\bin>mysql -uroot -p123456
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 19
Server version: 8.0.32 MySQL Community Server - GPL

Copyright (c) 2000, 2023, Oracle and/or its affiliates.

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> grant all privileges on *.* to 'root'@'%'identified by 'youpassword' with grant option;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'identified by 'youpassword' with grant option' at line 1
mysql> CREATE USER 'pokes'@'%' IDENTIFIED BY '123456';
Query OK, 0 rows affected (0.63 sec)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'pokes'@'%' WITH GRANT OPTION;
Query OK, 0 rows affected (0.06 sec)

mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.08 sec)

mysql>
复制代码
![在这里插入图片描述](https://img-blog.csdnimg.cn/afbaa2a3499f4a3e847bd434e6aa1e72.png)
相关推荐
Rsun045511 小时前
MySQL 中什么是回表?
数据库·mysql
G.O.G.O.G4 小时前
《LeetCode SQL 从入门到精通(MySQL)》09
sql·mysql·leetcode
️学习的小王4 小时前
MySQL 数据库基础操作全解:从建库到增删改查
数据库·mysql·oracle
周杰伦的稻香5 小时前
(1071, ‘Specified key was too long; max key length is 767 bytes‘)
数据库·mysql
渣渣灰飞6 小时前
MySQL 系统学习 第六阶段:Redis + 缓存 + 高并发设计 第八章:Redis 高级应用
学习·mysql·缓存
2501_916007476 小时前
抓包工具对比 Charles、Fiddler、TraceEagle、Wireshark 与 Proxyman
前端·网络协议·ios·adb·https·fiddler·wireshark
渣渣灰飞6 小时前
MySQL 系统学习 第六阶段:Redis + 缓存 + 高并发设计 第十章:Redis 综合企业项目实战
学习·mysql·缓存
91刘仁德7 小时前
MySQL 数据库基础操作知识点整理
数据库·mysql·oracle
wuqingshun31415920 小时前
MYSQL默认的事务隔离级别是什么?为什么选择这个级别?
数据库·mysql
这个DBA有点耶1 天前
导个数据中文全变问号?字符集这事儿真没那么简单
数据库·mysql·代码规范