认证方法';mysql旧密码';不支持

认证方法';mysql旧密码';不支持,mysql,visual-studio-2012,connector-net,Mysql,Visual Studio 2012,Connector Net,更新了mysql连接器。Net到版本6.6.4提供程序,以便与visual studio 2012集成,但现在当我尝试配置到edmx的连接时,出现错误“不支持身份验证方法'mysql\u旧密码'.Mysql\u old\u密码是临时的,在4.1.1版本之后,将用于旧的Mysql客户端,以便对4.1.1版本之前的Mysql服务器进行身份验证 在mysql服务器my.ini中设置varold_passwords=1应该可以启用此功能。mysql Connector/NET 6.6.x(从6.6.2开

更新了mysql连接器。Net到版本6.6.4提供程序,以便与visual studio 2012集成,但现在当我尝试配置到edmx的连接时,出现错误“不支持身份验证方法'mysql\u旧密码'.

Mysql\u old\u密码是临时的,在4.1.1版本之后,将用于旧的Mysql客户端,以便对4.1.1版本之前的Mysql服务器进行身份验证

在mysql服务器my.ini中设置var
old_passwords=1
应该可以启用此功能。

mysql Connector/NET 6.6.x(从6.6.2开始)放弃了对旧密码样式身份验证的支持(由于不安全,它被弃用,并且有文档记录的攻击方法)

当尝试将其用于旧密码样式的帐户时,您将得到一个算术溢出错误(当然,更友好的错误会更好)

如本缺陷报告所述: 对于连接器/网络,您必须使用本机4.1样式的密码(即旧密码=0)


另一个选项是Windows风格的身份验证,它也受支持,但您需要一些MySql商业版(标准MySql服务器不支持Windows身份验证)。

当您连接到密码以旧密码格式存储的MySql数据库时,会显示此错误消息()。较新的MySQL客户端不允许使用旧密码格式连接到数据库,因为它不太安全

有些人建议在MySQL服务器上设置
old_passwords=1
,但我认为最好将密码升级为新的密码格式。然后可以再次设置MySQL连接,您的数据库将得到更好的保护


您可以在此处了解如何将MySQL密码从旧格式升级到新格式:

请用一个真实的问题扩展您的问题。到目前为止,这只是一个声明。我的问题是如何使用edmx connector 6.6.4和visual studio 2012连接到mysql,因为我不能这样做this@CristianoNascimento,我也有同样的问题。你解析了你的吗?有没有办法在连接字符串中指定它?因为我没有访问mysql服务器设置,我真的不知道。我对VisualStudio了解不多,我只知道mysql。但我的最佳猜测是,您不能使用连接字符串来执行此操作,因为这是一种必须由服务器激活的方法,可能是在启动时激活的方法。老实说,你应该试着找出为什么你的连接器会使用旧密码,因为你应该尽量避免这种情况。(加密错误)