以下是一些可能的標題,請記住它們應該採用問題的形式: * **MySQL 連線錯誤:為什麼會出現「mysqlnd 無法連線」? ** ** * **PHP 和 MySQL:如何使用

DDD
發布: 2024-10-25 03:53:29
原創
753 人瀏覽過

Here are a few potential titles, keeping in mind they should be in the form of a question:

* **MySQL Connection Error: Why Does

MySQL 連線錯誤:解決「mysqlnd 無法連線」問題

嘗試連線MySQL 時,您可能會遇到錯誤訊息:「 mysqlnd無法使用舊的不安全驗證連接到MySQL 4.1。

解決方案

至要解決此錯誤,您需要將 MySQL 密碼雜湊方法更新為新的、更安全的格式。這涉及修改MySQL 設定檔(my.cnf),如下所示:

  1. 刪除或註解掉"old_passwords = 1":
    找到行"old_passwords = 1 " 在my.cnf 檔案中,將其刪除或透過在其前面放置「#」前綴將其註解掉。
  2. 重新啟動 MySQL:
    重新啟動 MySQL 以套用設定變更。這確保 MySQL 將繼續使用新的密碼雜湊方法。
  3. 為受影響的使用者設定新密碼:
    連接到MySQL 資料庫並執行下列查詢使用舊格式的密碼識別使用者:

    <code class="sql">SELECT user, Length(`Password`) FROM  `mysql`.`user`;</code>
    登入後複製

    對於每個受影響的用戶,使用PASSWORD() 函數更新密碼:

    <code class="sql">UPDATE mysql.user SET Password = PASSWORD('new_password') WHERE user = 'affected_username';</code>
    登入後複製
  4. 刷新權限:
    更新密碼後,刷新密碼權限以反映變更:

    <code class="sql">FLUSH PRIVILEGES;</code>
    登入後複製

注意:

  • 確保您的MySQL 帳戶使用強而安全的密碼。
  • 如果仍然遇到問題,請檢查 PHP 錯誤日誌以取得更多詳細資訊。
  • 請參閱原始碼文章「如何在 PHP5.3 上修復‘mysqlnd 無法使用舊式驗證連接到 MySQL 4.1’」以取得進一步指導和故障排除步驟。

以上是以下是一些可能的標題,請記住它們應該採用問題的形式: * **MySQL 連線錯誤:為什麼會出現「mysqlnd 無法連線」? ** ** * **PHP 和 MySQL:如何使用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!