MySQL8.0連接時出現 'caching_sha2_password' is not supported.


這是MySQL8.0一個登錄驗證的問題。

第一步 初始化配置

如果已經初始化了,就直接跳過第一步

你需要知道的是:MySQL安裝的路徑。我的路徑是:G:\mysql-8.0.11-winx64

在C:\Windows\System32路徑下找到cmd.exe,右鍵以管理員身份運行,並切換到mysql-8.0.11-winx64中。

輸入命令初始化data目錄:

mysqld --initialize --console

會出現一段內容,找到內容中root@localhost: 它后面就是登錄數據庫的初始密碼,一定要記下來

再輸入命令初始化mysql服務

mysqld --install

然后輸入命令啟動mysql

net start mysql

如果已經啟動了,他會提示你服務已經啟動。

如果提示拒絕訪問,那你肯定沒有以管理員身份運行cmd。在C:\Windows\System32路徑下找到cmd.exe,右鍵以管理員身份運行。繼續上步操作。

接下來,登錄到數據庫

mysql -u root -p

密碼:輸入就是剛才記下來的,

登陸成功后接着更改密碼,輸入

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';  

這以上只是確保不會出現其他的問題,還不能解決密碼驗證的問題。

 

第二步 修改MySQL的登錄驗證配置

cmd連接mysql

mysql -u root -p

修改加密規則

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;

更新一下用戶的密碼

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

刷新權限

FLUSH PRIVILEGES;

重置下密碼(123456789這里是你要設置的密碼)

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456789';

完成以后,試着重新連接mysql數據庫,如果還沒有成功,繼續往下走:

 

第三步 根目錄增加配置文件

在mysql-8.0.11-winx64這個目錄下,新建my.ini文件,文件內容如下,記得保存:

[mysqld]

# 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[client]
# 設置mysql客戶端連接服務端時默認使用的端口
port=3306
default-character-set=utf8

 接下來需要重啟mysql服務。

先停止mysql服務,

net stop mysql

如果提示拒絕訪問,那你肯定沒有以管理員身份運行cmd。在C:\Windows\System32路徑下找到cmd.exe,右鍵以管理員身份運行。繼續上步操作。

已停止成功后,繼續輸入命令啟動mysql

net start mysql

查看是不是可以正常啟動

如果無法啟動,就是那個my.ini文件的問題,嘗試只保留文件中的一部分

[mysqld]

# 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password

繼續啟動mysql。

啟動成功后,就說明修改配置文件成功,嘗試去連接數據庫,應該就成功了

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM