MySQL忘记root用户的密码解决方法
MySQL版本: 5.7.26
Ubuntu版本:18.04.2 LTS
在Ubuntu上的MySQL如果忘记了root用户密码,有两种解决方法:
方法一、跳过授权,免密登录
- 关闭正在运行的MySQL服务
service mysql stop
- 打开终端,输入
mysqld --skip-grant-tables
意思是启动MySQL服务的时候跳过权限表认证。
- 再开一个终端,输入mysql,然后回车,如果成功,将出现MySQL提示符 mysql>
- 开始修改root密码
use mysql; # 进入名为mysql的数据库 select User, Host, authentication_string from user; # 查看一下user表的内容 update user set authentication_string=password("你的新密码") where User="root" and Host=’localhost’; # 注意MySQL5.7 代表密码的字段名是authentication_string flush privileges; # 刷新权限,修改完成之后,需要使用该语句,重新加载权限表 exit;
service mysql restart # 重新启动MySQL服务接下来正常登录即可
方法二、用另一个账号登录,之后再修改user表
- 进入 /etc/mysql/ 文件夹,查看debian.cnf文件,cat debian.cnf
- 开启MySQL服务
- 以 用户名:debian-sys-maint 密码:P7D..... 连接mysql服务器
- 再开始修改root用户的密码
use mysql; # 进入名为mysql的数据库 select User, Host, authentication_string from user; # 查看一下user表的内容 update user set authentication_string=password("你的新密码") where User="root" and Host=’localhost’; # 注意MySQL5.7 代表密码的字段名是authentication_string flush privileges; # 刷新权限,修改完成之后,需要使用该语句,重新加载权限表 exit;
接下来用新的root密码正常登录即可。
原文地址:https://www.cnblogs.com/NanaseHaruka/p/10957032.html
时间: 2024-10-14 06:19:48