驗證錯誤已解決:mysqli_connect 驗證方法未知([caching_sha2_password])
使用 PHP 的 mysqli_nect sql資料庫時,您可能會遇到以下錯誤:「伺服器請求客戶端未知的身份驗證方法[caching_sha2_password]」。當 MySQL 伺服器配置為使用 caching_sha2_password 驗證方法時,會出現此問題,某些使用者帳戶本身不支援此方法,或者可能需要額外配置。
錯誤原因:
caching_sha2_password 驗證方法是 MySQL Server 用於密碼儲存和驗證的安全方法。它取代了舊的 mysql_native_password 方法,並透過以雜湊形式儲存密碼來增強安全性。預設情況下,當滿足某些條件時,caching_sha2_password 將成為預設身份驗證方法。
解決問題:
要解決此問題,您有兩種選擇:
ALTER USER '<mysqlUsername>'@'localhost' IDENTIFIED WITH mysql_native_password BY '<mysqlUsernamePassword>';
[mysqld] default_authentication_plugin=mysql_native_password
更改生效。
建立新使用者mysql_native_password:
使用 mysql_native_password驗證建立新使用者時,使用以下指令:CREATE USER '<mysqlUsername>'@'localhost' IDENTIFIED WITH mysql_native_password BY '<mysqlUsernamePassword>';
其他注意事項:
以上是為什麼我收到「mysqli_connect 驗證方法未知 ([caching_sha2_password])」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!