Mysql 不再支持使用旧密码进行身份验证

Mysql 不再支持使用旧密码进行身份验证,mysql,Mysql,我有一个例外,我找不到任何工作的答案 例外情况如下: 不再支持使用旧密码进行身份验证,请使用4.1样式的密码 从.Net项目登录mysql数据库时 在我的机器上它可以正常工作,但在我的服务器上它不能 在我的机器上运行5.5.40-MySQL社区服务器(GPL) 在我的服务器上,它们运行5.1.56-community 我在MVC站点中使用以下软件包: <package id="MySql.Data" version="6.9.6" targetFramework="net45" /&g

我有一个例外,我找不到任何工作的答案

例外情况如下: 不再支持使用旧密码进行身份验证,请使用4.1样式的密码

从.Net项目登录mysql数据库时

在我的机器上它可以正常工作,但在我的服务器上它不能

在我的机器上运行
5.5.40-MySQL社区服务器(GPL)

在我的服务器上,它们运行
5.1.56-community

我在MVC站点中使用以下软件包:

  <package id="MySql.Data" version="6.9.6" targetFramework="net45" />
  <package id="MySql.Web" version="6.9.6" targetFramework="net45" />
你知道怎么做吗

我一直看到这个答案:

SET SESSION old_passwords=0;
SET PASSWORD=PASSWORD('YOURDATABASEPASSWORD');
但它不起作用,因为服务器上的“旧密码”设置从未更改


“旧密码”的服务器设置为“开”,本地设置为“关”

几天前,从5.5升级到Mysql 5.6后,我们遇到了类似的问题,尽管用户使用了一段时间新的42位哈希,而不是旧的16位哈希

更新密码时,我倾向于不使用set命令,而是使用:
updatemysql.user set password=password('MyNewPass'),其中user='yourusername'
然后执行
刷新权限

如果这不起作用。删除该用户,执行刷新权限,重新创建该用户,颁发适当的授权,然后执行另一次刷新权限


在我们的情况下,这就是使用旧密码不支持错误进行身份验证的原因

旧密码是会话设置。你是否在同一时段内?连接字符串中的密码不应该是Pwd=yourpassword吗?不幸的是,没有这样的运气:
updatemysql.user SET Password=Password('MyNewPass'),其中user='yourusername';我没有权利这么做……啊,好吧,我绝对没有这些权利。谢谢你的帮助,谢谢你。找不到任何关于它的好信息…它是共享主机,通过电子邮件的某个地方,我刚刚给他/她发送了一封电子邮件,希望我能得到回复。我已将此标记为答案,尽管我的个人情况尚未确定。我问我的提供商是否可以帮忙,但他们只说我可以在我的plesk环境中自己做,这不起作用。这就是我选择一家更便宜的供应商的回报;-)
SET SESSION old_passwords=0;
SET PASSWORD=PASSWORD('YOURDATABASEPASSWORD');