环境介绍

  • 操作系统:Windows 10 22H2

  • 数据库版本:Mysql 8.0.33 (mysql --help即可查看)

  • 终端环境:Windows terminal cmd

操作步骤

  • 以管理员权限打开cmd,关闭mysql服务

net stop mysql
  • 运行以下指令跳过权限验证登录mysql

mysqld --shared-memory --skip-grant-tables
  • 保持上述窗口,另开一个新的终端窗口,使用以下指令无密码登录mysql

mysql -u root -p
  • 切换到mysql系统数据库,将密码置空,并刷新权限

use mysql;
update user set authentication_string='' where user='root';
flush privileges;
  • 设置加密规则并更新密码,授权并刷新权限(注意修改自己想改的密码)

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; 
alter user 'root'@'localhost' identified by '123456';
grant all privileges  on *.*  to 'root'@'localhost';
flush privileges;
  • 设置完毕后重启mysql服务,并使用新的密码登录

net start mysql

补充了解:正常登录修改用户密码

在知道密码正常登录系统的情况下,有很多种方法可以修改用户密码。在这里简单介绍一种常用的。

  • 正常登录系统后执行以下指令重置对应用户密码

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

参考阅读