首頁 >後端開發 >php教程 >為什麼我無法連接到 MySQL 4.1 資料庫?

為什麼我無法連接到 MySQL 4.1 資料庫?

Patricia Arquette
Patricia Arquette原創
2024-11-03 18:24:03988瀏覽

Why Can't I Connect to My MySQL 4.1  Database?

解決連接到MySQL 4.1 時的驗證問題

嘗試連接到bluesql.net 託管的MySQL 資料庫時,可能會出現錯誤表示mysqlnd 無法使用舊式驗證進行連線。此錯誤源自於 MySQL 4.1 版本之後不再使用舊密碼方案。雖然較新的版本允許向後相容,但有時會導致連線問題。

要解決此問題,您可以透過執行下列查詢來檢查伺服器是否設定為使用舊密碼架構:

SHOW VARIABLES LIKE 'old_passwords';

如果傳回old_passwords,Off,則表示問題可能出在在用戶表中的舊密碼條目上。伺服器將預設使用這些帳戶的舊身份驗證例程。解決這個問題需要設定一個新密碼,這將觸發新例程的採用。

要驗證特定帳號所使用的驗證例程,您可以查詢 mysql.user 表:

SELECT `User`, `Host`, Length(`Password`) FROM mysql.user;

此查詢將傳回密碼的長度。長度16表示舊密碼,41表示新密碼。

如果密碼過期,您可以使用MySQL管理工具或執行以下查詢來更新它:

SET PASSWORD FOR 'User'@'Host'=PASSWORD('yourpassword');
FLUSH Privileges;

確保將 User 和 Host 替換為從先前查詢中取得的值。執行此查詢後,再次驗證密碼長度。現在應該是 41,讓您的客戶端能夠成功連線。

以上是為什麼我無法連接到 MySQL 4.1 資料庫?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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