下面是解决Linux下Mysql5.7忘记密码问题的完整攻略:
1. 问题描述
在使用Mysql5.7时,如果忘记了密码,将无法登录Mysql服务器,需要找到其它方式获取或者重置密码。
2. 解决方法
2.1 方法一:使用skip-grant-tables重置密码
- 在Linux命令行下以root登录系统,使用以下命令停止Mysql服务:
systemctl stop mysql
- 使用以下命令启动Mysql服务,并跳过权限验证:
mysqld_safe --skip-grant-tables&
注意:上面的命令中的&表示将该命令放入后台执行。
- 以root身份运行Mysql客户端:
mysql -uroot
- 在Mysql命令行中使用以下命令重置密码:
UPDATE mysql.user SET authentication_string=PASSWORD('new-password') WHERE user='root' AND Host='localhost';
注意:上面的new-password需要替换成你想要设置的新密码。
- 使用以下命令刷新权限:
FLUSH PRIVILEGES;
- 退出Mysql客户端:
quit;
- 使用以下命令停止Mysql服务:
systemctl stop mysql
- 使用以下命令重新启动Mysql服务:
systemctl start mysql
2.2 方法二:在命令行下使用mysqld_safe重置密码
- 在Linux命令行下以root登录系统,使用以下命令停止Mysql服务:
systemctl stop mysql
- 使用以下命令以单用户模式启动Mysql服务,并跳过权限验证:
mysqld_safe --skip-grant-tables --skip-networking &
注意:上面的命令中的&表示将该命令放入后台执行。
- 在命令行下以root身份运行Mysql客户端:
mysql -uroot
- 在Mysql命令行中使用以下命令重置密码:
UPDATE mysql.user SET PASSWORD=PASSWORD('new-password') WHERE User='root' AND Host='localhost';
注意:上面的new-password需要替换成你想要设置的新密码。
- 使用以下命令刷新权限:
FLUSH PRIVILEGES;
- 退出Mysql客户端:
quit;
- 使用以下命令停止Mysql服务:
systemctl stop mysql
- 使用以下命令重新启动Mysql服务:
systemctl start mysql
3. 结论
以上就是解决Linux下Mysql5.7忘记密码问题的完整攻略。如果你忘记了Mysql密码,可以按照上面的方法进行重置。
下面是两个示例:
示例一
小王在使用Mysql5.7时忘记了密码,需要重置密码。他按照方法一执行了以上步骤,成功重置了Mysql密码。
示例二
小张需要重置Mysql密码,但他没有权限停止Mysql服务。他按照方法二执行了以上步骤,成功重置了Mysql密码。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:解决Linux下Mysql5.7忘记密码问题 - Python技术站