zoukankan      html  css  js  c++  java
  • MySQL破解root用户密码

    • 环境:CentOS 7
    • MySQL版本:MySQL 5.7.29

    一、停止MySQL进程的运行

    service mysqld stop
    

    二、修改配置文件

    vim /etc/my.cnf
    

    在[mysqld]下添加两行:

    user=mysql
    skip-grant-tables
    

    第一行user=mysql的意思是指定启动MySQL进程的用户。第二行是关键,skip-grant-tables的意思是跳过密码验证。
    wq保存退出。

    三、启动MySQL进程

    service mysqld start
    

    四、直接登录MySQL,不接密码

    五、修改密码

    要注意的是,此时直接修改密码会报错,如下所示。

    错误语句:ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
    看不懂英文就扔谷歌翻译:

    解决办法是刷新权限,加载原来没有加载的权限表。

    msyql> flush privileges;
    

    skip-grant-tables语句就是绕过了grant授权表,实现免密登录,而执行flush privileges之后就相当于加载了grant授权表。

    另外修改密码不能直接使用set password='Charramma';命令修改。

    报错说没有在用户表中找到匹配的行。
    正确的语法应该是下面这样:

    msyql> set password for 'root'@'localhost' = 'Charramma123#';
    

    如下,修改成功。

    六、修改MySQL配置文件

    就是把之前添加的两行内容注释掉或删除掉。

    七、重启MySQL服务

    service mysqld restart
    

    八、使用新密码登录


    至此,破解root用户密码完成。

  • 相关阅读:
    第六周作业
    2019第四周作业(基础作业+挑战作业)
    第三周作业
    2019第二周基础作业
    求最大值及下标值
    查找整数
    学期总结
    打印沙漏
    币值转换
    远程连接centos7的mysql5.7+ 更改iptables方法
  • 原文地址:https://www.cnblogs.com/CharrammaBlog/p/12993735.html
Copyright © 2011-2022 走看看