LARAVEL HOMESTEAD SQLSTATE [HY000] [1862]您的密码已过期.要登录,您必须使用支持过期密码的客户端进行更改

Ric*_*ore 4 php mysql

我整天都没有使用过期的mysql密码.我已经按照其他类似的问题但我继续得到相同的密码过期错误.我已经用homebrew卸载并重新安装了Mysql.我重新启动了mysql服务器.我已经删除,更改并创建了mysql中的宅基地用户,甚至卸载然后重新安装在此输入图像描述宅基地和流浪者.没有这个工作.我该怎么办?

在此输入图像描述

在此输入图像描述

编辑更新:

我可以使用续集专业版进入mysql:

在此输入图像描述

但在.env文件中有此重现过期的密码错误:

在此输入图像描述

在此输入图像描述

w0r*_*ven 11

我现在所做的是再次设置密码.

  1. vagrant ssh
  2. mysql -u homestead -p
  3. 输入现有密码(秘密)
  4. SET password=PASSWORD("secret");

这已经开始发生在我所有的流浪盒上,有些甚至最近都没有配置,这意味着MySQL版本差异很大,通常至少为5.6+.不幸的是,这不是一个长期的解决方案.必须重复这些步骤,直到有人能够追踪如何妥善修复它.

编辑:我正在使用Homestead v2进行调整以使用此框:https://atlas.hashicorp.com/laravel/boxes/homestead/versions/0.3.3.它们都是相同的MySQL版本,这解释了为什么我会全面看到这一点.

该框的当前MySQL版本为5.7.9,密码过期策略的默认default_password_lifetime值为360.该框中的密码的password_last_changed时间为2015-11-13 03:50:18.在那之后的360天2016-11-07 03:50:18,我相信这正是为什么这首先发生的原因.

我检查了所有可能的MySQL配置位置,我没有看到任何覆盖此默认值.我希望将它设置为0或将用户改为永不过期(在设置密码命令之后)应足以解决它的问题.