回答
solution是使用MySQL的OLD_PASSWORD函數更新數據庫用戶的密碼。例如:
[[email protected] ~]$ mysql -u root -p mysql
Enter password:
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 267
Server version: 5.1.41-3ubuntu12.1 (Ubuntu)
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql> use mysql;
Database changed
mysql> update user set Password=OLD_PASSWORD('password') WHERE User='username';
Query OK, 0 rows affected (0.02 sec)
Rows matched: 0 Changed: 0 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
從PHP 5.6.5開始,您需要在`my.ini`的`[mysqld]`部分設置這些值,以啓用與mysql 4客戶端的連接: old_passwords = 1 secure-auth = 0 您可能還需要將`mysql_old_password`添加到`mysql` db中`user`表中的`plugin`部分 – Wertisdk 2013-11-06 10:52:50
這是一個已知的MySQL問題。 C.5.2.4. Client does not support authentication protocol:
MySQL 5.1使用基於密碼散列算法的身份驗證協議,該算法與舊版(4.1之前)客戶端使用的算法不兼容。如果從4.0升級服務器,嘗試使用舊客戶端連接到服務器可能會失敗,並顯示以下消息:「客戶端不支持服務器請求的驗證協議 ;請考慮升級MySQL客戶端」。
要解決此問題,您應該使用以下方法之一:
1.升級所有客戶端程序以使用4.1.1或更新的客戶端庫。
2.使用4.1之前的客戶端程序連接到服務器時,請使用仍具有4.1以前版本密碼的帳戶。
3.爲每個需要使用4.1之前的客戶端程序的用戶重置密碼爲4.1之前的樣式。
4.通知服務器使用舊密碼散列算法。
這是解決辦法,但我發現直接程序來解決它(這是在更具體的細節相同的答案),我現在就把它在這裏,無論如何,THX! – palmic 2010-12-01 10:39:27
- 1. 未處理的拒絕SequelizeConnectionError:ER_NOT_SUPPORTED_AUTH_MODE:客戶端不支持服務器要求的身份驗證協議
- 2. 服務器客戶端身份驗證
- 3. 客戶端不支持服務器請求的認證協議;考慮升級MySQL客戶端
- 4. Web服務客戶端身份驗證
- 5. 最佳Java支持的服務器/客戶端協議?
- 6. 最佳Python支持的服務器/客戶端協議?
- 7. 爲支持多協議的服務器設計客戶端
- 8. 檢查客戶端的身份驗證,誰發送請求到服務器,nodejs
- 9. 如何告訴服務器客戶端支持SPDY協議?
- 10. 與HTTPGET可能是因爲服務器請求客戶端身份驗證
- 11. 服務器端WCF客戶端身份驗證
- 12. 執行Facebook身份驗證:客戶端和服務器端
- 13. 如何支持SSL客戶端證書身份驗證?
- 14. SAVON是否支持客戶端證書身份驗證
- 15. 客戶端/服務器證書身份驗證:IIS服務器端,黑莓本機瀏覽器客戶端
- 16. 客戶端身份驗證
- 17. 具有相互身份驗證的服務客戶端(雙向客戶端證書身份驗證)
- 18. 代理服務器上的JAX-WS客戶端身份驗證
- 19. 如何從服務器驗證客戶端的身份?
- 20. 由服務器進行的客戶端身份驗證
- 21. node.js rest客戶端 - 服務器交互的webservice身份驗證
- 22. 服務器Tomcat中的客戶端身份驗證
- 23. 支持NTLMSSP身份驗證的Delphi有HTTP客戶端庫嗎?
- 24. 支持身份驗證的Java代理客戶端類
- 25. HTTP請求未經客戶端身份驗證方案「協商」授權。身份驗證標頭
- 26. AJAX請求WCF服務身份驗證
- 27. 客戶端服務器,設計協議
- 28. 確保客戶端/服務器身份驗證沒有憑據
- 29. C#客戶端身份驗證PHP肥皂服務器
- 30. WCF - 在頭中配置客戶端/服務器身份驗證?
參見https://dev.mysql.com/doc/refman/5.5/en/old-client.html?acf=1#add-comment – rogerdpack 2017-09-05 04:10:40