用最新版的 mysql connector 去鏈接 遠程的mysql服務器.
遇到 異常 Authentication with old password no longer supported, use 4.1 style passwords.
上網搜, 官方說是服務器的密碼版本新, 客戶端的版本太低, 連不上. 要更新我的客戶端. 但是我的connector 是剛從官方下載的最新的啊. 這不科學啊.
還有人說是去服務器上服務器上的密碼存儲方式 改成舊版本,這樣就可以了. 但是服務器不是我的, 我沒有權限去改服務器的配置.
最后發現 一個帖子http://stackoverflow.com/questions/13706463/authentication-method-mysql-old-password-not-supported
里面說 MysqL Connector/NET 6.6.x (as of 6.6.2) dropped support for old password style authentication (it was deprecated due to being insecure and there were documented ways to attack it).
其實就是說 .net的connector 已經拋棄了舊的密碼方式, 只支持新的密碼方式. 突然明白了. 應該是客戶端的密碼認證方式太新, 而服務器的密碼是舊的方式存儲的.
所以就要去把服務器的密碼存儲方式改成新的. 怎么改呢. 找到這個地址 http://writecodepeople.blogspot.com/2013/03/mysql-41-style-password.html
在服務器端只提供了phpmyadmin, 沒有console啊. 我記得有個地方可以執行sql語句
於是去服務器上打開phpmyadmin. 打開數據庫. 打開Sql tab, 這里可以執行 sql語句.哈哈
執行這兩句:
SET old_passwords=FALSE;
SET PASSWORD = PASSWORD('重設密碼');
之后, 在用c# connector 去連. 成功.
reffer: http://byNeil.com
From All by Neil, post C# mysql 鏈接 遇到 異常 Authentication with old password no longer supported, use 4.1 style passwords.
原文來自 All by Neil, post C# mysql 鏈接 遇到 異常 Authentication with old password no longer supported, use 4.1 style passwords. 轉載請注明出處。本站保留一切權力