Authentication method 'caching_sha2_password' not supported by any of the av的意思是任何av都不支持身份驗證方法“緩存密碼”
通常的報這個錯誤是因為它的身份驗證方式是 mysql_native_password 方式,不是caching_sha2_password方式
方法一
如果是通過解壓去安裝的MySQL 8.0版本
1、找一下看有沒有my.ini文件
沒有就在你解壓密閉的目錄下新創建一個my.ini文件
my.ini文件中的內容:(注:可以直接復制下面的,涉及到存放目錄的可以根據自己實際情況做更改)
[mysqld] # 設置3306端口 port=3306 # 設置mysql的安裝目錄 basedir=D:\Program Files\mysql-8.0.19-winx64 # 切記此處一定要用雙斜杠\\,單斜杠這里會出錯。 # 設置mysql數據庫的數據的存放目錄 datadir=D:\Program Files\mysql-8.0.19-winx64\\Data # 此處同上 # 允許最大連接數 max_connections=200 # 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統 max_connect_errors=10 # 服務端使用的字符集默認為UTF8 character-set-server=utf8 # 創建新表時將使用的默認存儲引擎 default-storage-engine=INNODB # 默認使用“mysql_native_password”插件認證 default_authentication_plugin=mysql_native_password [mysql] # 設置mysql客戶端默認字符集 default-character-set=utf8 [client] # 設置mysql客戶端連接服務端時默認使用的端口 port=3306 default-character-set=utf8
方法二
這里我是用Navicat Premium 12去改的
1、連接數據庫后,選擇點擊工具后再點擊命令列界面
2、輸入命令查看用戶身份驗證方式:SELECT Host, User, plugin from user;
3、修改某個用戶賬號的身份驗證方式:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '12345';
4、 再去查看一下是否已經更改了