Ubuntu-MySQL忘记root用户密码解决方法

 MySQL忘记root用户的密码解决方法


MySQL版本: 5.7.26

Ubuntu版本:18.04.2 LTS

在Ubuntu上的MySQL如果忘记了root用户密码,有两种解决方法:

方法一、跳过授权,免密登录

  1. 关闭正在运行的MySQL服务 
    service mysql stop
  2. 打开终端,输入
    mysqld --skip-grant-tables  

    意思是启动MySQL服务的时候跳过权限表认证。 

  3. 再开一个终端,输入mysql,然后回车,如果成功,将出现MySQL提示符 mysql>
  4. 开始修改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表

  1. 进入 /etc/mysql/ 文件夹,查看debian.cnf文件,cat debian.cnf
  2. 开启MySQL服务
  3. 以 用户名:debian-sys-maint  密码:P7D.....  连接mysql服务器
  4. 再开始修改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密码正常登录即可。

猜你喜欢

转载自www.cnblogs.com/NanaseHaruka/p/10957032.html