当我们安装好MySQL后 , 默认root用户登录MySQL是没有密码的 , 当我们为root用户设置密码后 , 再次登录忘记了密码该怎么办?


本地root密码重设 :


解决问题思路 :

1 . 修改主配置文件 /etc/my.cnf , 设置登录时跳过权限表的验证

2 . 设置好后重启服务

3 . 在mysql-server 服务器上做免密码登录 , 更新root的密码

4 . 再次修改 /etc/my.cnf 主配置文件

5 . 重启服务

6 . 用新密码登录


实例 : 

环境 : 安装好MySQL数据库的centos7系统

       

步骤 : 


在centos7安装好mariadb服务器后 , mysql进入数据库中为root设置一个密码 , 再退出数据库

设置密码参考博客 :  https://blog.51cto.com/14181896/2361492

 

image.png

                

退出数据库后 , 直接用mysql命令是进不去数据库的 , 此时root的密码为root , 假设我们当前不记得了mysql的root密码 , 操作如下

                

1 . 修改主配置文件 /etc/my.cnf , 设置登录时跳过权限表的验证

在主配置文件插入 skip_grant_table   

 image.png


 2 . 重启服务 , 此时不用密码就可以进入mysql数据库了

image.png


3 . 更新root的密码

update mysql.user set password=password("127") where user='root' and host='localhost'  #将密码设置为127
flush privileges;            #刷新权限表

image.png

4 . 退出数据库 , 把主配置文件的skip_name_table 这行注释 , 再次重启服务

image.png

image.png

5 . 用新设置的密码登录数据库

image.png


      登录成功 !!