无法连接到Asp.Net中的远程MySql服务器
问题描述:
我需要通过asp.net连接到MYSQL数据库。我使用的MySQL连接器,以与数据库连接,但同时这样做,我有这个错误:无法连接到Asp.Net中的远程MySql服务器
Authentication with old password no longer supported, use 4.1 style passwords.
答
从MySQL 4.1和更高的,他们使用了新的协议,它不与早期版本兼容。这就是为什么当您将服务器从早期版本升级到4.1或更高版本时,您会收到验证错误消息。
如果您需要在4.1版之前和之后的两个客户端连接到数据库,则必须存储两个密码。一种是旧的方式,一种是新的方式。
可以使用设置用户密码,以新的方式:
SET PASSWORD for <username> = PASSWORD('new password')
SET PASSWORD FOR 'steve'@'10.15.2.67' = PASSWORD('my secure password');
如果需要的话,你也可将密码使用设置的老路上:
SET PASSWORD for <username> = OLD_PASSWORD('new password')
SET PASSWORD FOR 'steve'@'10.15.2.67' = OLD_PASSWORD('my secure password');
有一个在一个伟大的页面MySQL manual其中详细的过程
你可以实际上对于服务器如果比4.1更新仍然使用旧的密码方法然而这不建议使用。
为此,您可以使用--old-passwords选项启动服务器。
所以,无论是在服务器更新并您使用的是旧的客户端 - 或者你已经更新您的客户端(现在使用新的密码系统)和您连接到服务器低于4.1
答
确定,但如果你没有授权这样做,只是因为你是在一个共享的主机环境:
SET PASSWORD for <username> = OLD_PASSWORD('new password')
SET PASSWORD FOR 'steve'@'10.15.2.67' = OLD_PASSWORD('my secure password');
你能做些什么? 我还没有找到解决方法,我的托管服务提供商已经改变了mysql配置,没有警告......也没有给出解决方案。
UNCOMPLETE SOLUTION 您可以强制web.config使用旧连接器。它似乎工作,但mysql错误发生......所以我认为有一个错误在连接器的某处。
你见过[this](http://forums.cpanel.net/f34/old-style-passwords-settings-when-using-mysql-5-x-150333.html)吗? – 2013-03-08 13:56:25
我的连接字符串如下: –
2013-03-08 14:14:49