我在this tutorial之后安装了mysql,php和phpmyadmin。 Evrything运行良好,即我可以通过命令行启动并连接到mysql而没有任何错误,但问题是当我尝试登录phpmyadmin时,我收到此错误:
#1862 - 您的密码已过期。要登录,您必须使用a进行更改 支持过期密码的客户端。
值得一提的是,我当前的mysql密码不是我安装mysql时收到的临时密码,但我稍后更改了(在安装phpmyadmin之前),现在尝试使用这个新的(当前)密码登录到phpmyadmin向我展示了上述错误。
有人可以帮我理解是什么问题吗?
由于
答案 0 :(得分:13)
好的,最后我不明白这个问题的原因是什么,但以下解决方案对我有用:
mysqladmin -u root -p password
输入新密码
完成!然后我也可以从phpmyadmin登录了!
希望能帮助其他有类似问题的人,
答案 1 :(得分:3)
从MySQL 5.7.4开始,default_password_lifetime
的默认值为360(一年)。如果您未对此变量或单个用户帐户进行任何更改,则所有用户密码将在360天后过期(因此您获得:"您的密码已过期。要登录,您必须使用支持过期密码的客户端更改它&#34 ;)
要防止自动密码过期,请以root用户身份登录(mysql -u root -p
):
对于自动连接到服务器的客户端(例如,来自脚本。)更改密码到期设置:
ALTER USER 'script'@'localhost' PASSWORD EXPIRE NEVER;
或您可以为所有用户停用自动密码到期时间:
SET GLOBAL default_password_lifetime = 0;
MySQL: Password Expiration and Sandbox Mode
MySQL: Password Expiration Policy
Password expiration policy in MySQL Server 5.7