首頁 > 資料庫 > mysql教程 > 如何修復 MySQL 8.0 身份驗證錯誤:Node.JS 中的客戶端協定不符?

如何修復 MySQL 8.0 身份驗證錯誤:Node.JS 中的客戶端協定不符?

DDD
發布: 2024-12-31 06:32:21
原創
389 人瀏覽過

How to Fix MySQL 8.0 Authentication Error: Client Protocol Mismatch in Node.JS?

MySQL 8.0 驗證錯誤:客戶端協定不符

許多使用者正在嘗試使用 MySQL 8.0建立連線時遇到錯誤Node.JS:

Error: ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client
登入後複製

解決方案

要解決此問題,請在MySQL Workbench 中執行以下命令:

  • ALTER用戶'root'@'localhost' 透過mysql_native_password辨識'password';
  • 刷新權限;

確保將 'root'、'localhost' 和 'password' 替換為您的特定使用者、主機和密碼。

如果上述方法失敗,請嘗試執行第一條命令,不包含@'localhost'.

說明

MySQL 8.0 引入了預設的caching_sha2_password 驗證方法,較舊的MySQL 用戶端版本不支援此方法。透過將使用者的身份驗證方法更新為 mysql_native_password,客戶端可以成功與伺服器進行身份驗證。

附加說明

  • 如果無法連線使用root 使用者登入MySQL Workbench,您可能需要使用下列指令重設 密碼步驟:

    • 停止MySQL 服務。
    • 使用 --skip-grant-tables 選項啟動 MySQL 服務。
    • 連接到 MySQL伺服器作為 root 用戶,沒有密碼。
    • 使用下列指令重設 root 密碼:SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');
    • 重新啟動 MySQL 服務。
  • 如果遇到任何其他問題,請參閱下列資源:

    • MySQL 文件: https://dev .mysql.com/doc/refman/5.5/en/old-client.html
    • GitHub問題:https://github.com/mysqljs/mysql/issues/1507

以上是如何修復 MySQL 8.0 身份驗證錯誤:Node.JS 中的客戶端協定不符?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板