首頁 >資料庫 >mysql教程 >如何修復 PHP 中的「無法使用舊式驗證連線到 MySQL 4.1」錯誤?

如何修復 PHP 中的「無法使用舊式驗證連線到 MySQL 4.1」錯誤?

Susan Sarandon
Susan Sarandon原創
2024-12-04 01:32:11379瀏覽

How to Fix the

連接到MySQL 4.1 :排除「無法使用舊驗證連接到MySQL 4.1」錯誤

嘗試建立與SQL 的連接時在PHP 5.3 中使用MySQLi 資料庫時,您可能會遇到錯誤訊息「Connect Error (2000) mysqlnd 無法連線到MySQL 4.1 使用舊的驗證。

要解決此問題,可以採取以下幾個步驟:

  1. 驗證MySQL 設定:

    • 運行SQL 查詢SHOW VARIABLES LIKE 'old_passwords' 以決定伺服器是否使用舊密碼架構。如果結果為old_passwords,Off,則表示伺服器未使用舊模式,該錯誤可能與特定使用者帳戶有關。
  2. 檢查使用者密碼:

    • 使用查詢SELECT *User*', Host', Length(Password) FROM mysql.user 以檢查mysql.user` 表。
    • 使用舊密碼的帳號的密碼長度為 16,而使用新密碼的帳號的密碼長度為 41。
  3. 重設使用者密碼:

    • 如果偵測到舊密碼,請使用下列查詢重設受影響帳號的密碼:

      • 為「使用者」設定密碼@'Host'=PASSWORD('yourpassword');
      • 將User 與Host 替換為從
  4. 刷新權限:

      刷新權限:
    刷新權限:
  5. 刷新權限:

    以確保使用者密碼的變更生效。
  6. 重新檢查密碼長度:

    執行相同的查詢(再選擇*User*', Host',>
      執行相同的查詢(再次選擇*User*', Host', Length(Password) FROM mysql.user`) 以驗證受影響的密碼長度帳戶現在為41 個。

連接MySQLi:

使用者密碼更新為使用新密碼後schema,嘗試使用連接到資料庫MySQLi.透過執行以下步驟,您可以解決「無法使用舊式驗證連線到MySQL 4.1」錯誤,並成功建立與MySQL 資料庫的連線。有關新舊密碼雜湊方法、密碼管理和伺服器配置的更多詳細信息,請參閱 MySQL 文件。

以上是如何修復 PHP 中的「無法使用舊式驗證連線到 MySQL 4.1」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn