mysql 5.7忘记密码怎么办

文 / @WordPress主题

MySQL5.7忘记密码怎么办?

在使用MySQL5.7时,有时会遇到忘记root密码的情况。在处理这种情况时,和以前的版本有些不一样。下面就介绍一下在Windows7系统、mysql5.7版本、DellG3电脑环境下的操作方法。

1. 修改参数文件跳过密码验证

在mysql的安装目录下,找到my.ini文件,打开文件,在[mysqld]中加上一行跳过权限限制:

skip-grant-tables

保存并退出,然后重启mysql服务,重新进入mysql。

2. 修改密码字段

用以下命令登录mysql:

mysql -u root -p

当提示输入密码时,直接按回车,密码为空。

但是在5.7版本中不存在password字段,所以我们要用以下命令进行重置密码:

update mysql.user set authentication_string=password('123456') where user='root';

其中,123456是你想要设置的新密码。

修改完密码后,刷新权限:

flush privileges;

3. 最开始修改的配置文件my.cnf中的skip-grant-tables删除,重新启动mysql

在修改完密码后,需要删除之前添加的skip-grant-tables,然后重启mysql服务:

service mysql restart

4. 修改密码后再次登录mysql

当你再次登录mysql时,你可能会看到类似于以下的错误信息:

ERROR 1820 (HY000): You must reset your password using ALTER USER statement;

这是提示你需要修改密码。执行以下命令即可:

SET PASSWORD = PASSWORD('root');

如果出现以下错误:

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

说明你的密码不符合mysql默认的密码强度要求。你需要执行以下两个参数来把mysql默认的密码强度的取消:

set global validate_password_policy=0;
set global validate_password_mixed_case_count=2;

5. 完成密码变更

经过以上操作,你已经重置了MySQL5.7的root密码。你可以用新密码重新登录mysql,开始继续使用。

总结

当你遗忘了MySQL5.7的root密码时,可以按照以上步骤来重置密码。虽然之前的版本可以直接通过修改mysql的密码文件来完成密码变更,但是MySQL5.7需要通过修改authentication_string才能实现密码的修改。

添加UTHEME为好友
扫码添加UTHEME微信为好友
· 分享WordPress相关技术文章,主题上新与优惠动态早知道。
· 微信端最大WordPress社群,限时免费入群。