BlankLin

lazy and boring

0%

mysql8忘记root密码

  • 关闭mysqld
    1
    ps aux | grep mysqld | grep -v grep | awk '{print $2}' | xargs kill -9
  • 修改my.conf
    1
    2
    3
    vim /etc/my.conf
    # 找到[mysqld]这个section,添加skip-grant-tables,意思是忽略所有表的授权
    skip-grant-tables
  • 开启mysqld服务
    1
    mysqld &
  • 进入mysql,设置密码为空
    1
    2
    3
    4
    5
    mysql -u root
    mysql> use mysql;
    mysql> update user set authentication_string='' where user='root';
    mysql> flush privileges;
    mysql> exit;
  • 撤回skip-grant-tables
    1
    2
    vim /etc/my.conf
    # 找到[mysqld]这个section,注释掉skip-grant-tables
  • 重启mysqld
    1
    2
    ps aux | grep mysqld | grep -v grep | awk '{print $2}' | xargs kill -9
    mysqld &
  • 无密码登录mysql
    1
    2
    3
    4
    5
    6
    mysql -uroot -p

    mysql> use mysql;
    mysql> ALTER user 'root'@'localhost' IDENTIFIED BY 'Qian123#';
    mysql> flush privileges;
    mysql> exit;