使用官方MySQL .NET Connector(6.6.4.0,最新的GA版本),我试图连接到我的网站的数据库,但没有运气。
尝试打开连接时会发生此异常。
任何可用插件都不支持身份验证方法'mysql_old_password'。
我的连接字符串如下所示:
Connection = new MySqlConnection( "Server=" + sHost + ";User Id=" + sUser + ";Port=" + nPort + ";" +
"Password=" + sPassword + ";Database=" + sDatabase );
我尝试过使用两台服务器,但我只是在HostGator托管的那台服务器上遇到了问题,另一台是在我们自己的Windows服务器上,而且工作正常。
HostGator服务器的MySQL信息:
Windows服务器的MySQL信息:
我开始怀疑这是否是我无法解决的问题(不离开HostGator)。如果不是,那么不同的.NET连接器会是最好的选择吗?
如果您需要有关这两种服务器的更多信息,请告诉我们!
提前致谢。 :)
答案 0 :(得分:0)
当您连接到以旧密码格式(http://dev.mysql.com/doc/refman/5.0/en/old-client.html)存储密码的MySQL数据库时,会显示此错误消息。较新的MySQL客户端不允许使用旧密码格式与数据库建立连接,因为它不太安全。可能最好的方法是将密码升级为新的密码格式。然后可以再次设置MySQL连接,并且您的数据库将得到更好的保护。
您可以在此处了解如何将MySQL密码从旧格式升级到新格式:http://code.openark.org/blog/mysql/upgrading-passwords-from-old_passwords-to-new-passwords