2011-12-28 227 views
2

我使用的Magento版本,1.6.1。錯誤MySQL連接

當我嘗試通過下面的錯誤連接DB Magento。

SQLSTATE[HY000] [2000] mysqlnd cannot connect to MySQL 4.1+ using the old insecure authentication. Please use an administration tool to reset your password with the command SET PASSWORD = PASSWORD('your_existing_password'). This will store a new, and more secure, hash value in mysql.user. If this user is used in other scripts executed by PHP 5.2 or earlier you might need to remove the old-passwords flag from your my.cnf file 

My MySql DB在另一個域中。我嘗試從本地連接該數據庫。

感謝您的回覆

我更改了DB密碼。現在它通過一個新的錯誤。

SQLSTATE[HY000] [2002] A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 
+0

這是一個老版本的密碼散列問題,所以作爲錯誤消息指出,只是要求你的mysql管理員創建一個新密碼或者只是使用'SET PASSWORD = PASSWORD('your_existing_password')'來改變舊的密碼與新版本兼容。 – Vijay 2011-12-28 07:30:34

+0

我現在通過一個新的錯誤更改db密碼:SQLSTATE [HY000] [2002]連接嘗試失敗,因爲連接方在一段時間後沒有正確響應,或者由於連接的主機未能響應而建立的連接失敗 – 2011-12-28 08:53:44

回答

5

您的MySQL服務器使用了一種mysqlnd無法遵守的舊認證機制。 mysqlnd需要一個與MySQL 4.1中引入了新的41個字節的密碼(所以你不能連接到MySQL服務器< 4.1)。要更新您的用戶表使用你有你的MySQL服務器上使用set password命令新的密碼方案,例如:

SET PASSWORD FOR「根」 @「localhost」的= PASSWORD(「輸入mypassword」);

這改變了密碼方案,並允許你連接mysqlnd。

+0

現在它改變分貝密碼通過一個新的錯誤:SQLSTATE [HY000] [2002]連接嘗試失敗,因爲連接的方沒有正確一段時間後響應或已建立的連接失敗,因爲連接的主機沒有反應。 – 2011-12-28 08:53:17

+0

選中此鏈接,希望它有助於解決您的問題:http://tinsology.net/wiki/A_connection_attempt_failed_because_the_connected_pa​​rty_did_not_respond – 2011-12-28 09:11:33

4

嘗試聯繫mysql主機管理。因爲這不是magento問題,而是服務器的問題。