mysql8 忘记root用户密码怎么办1.

  1. 先关闭mysql80的服务.使用管理员身份打开CMD命令行窗口


在命令行窗口输入如下命令

net stop mysql80
  1. --skip-grant-tables 模式运行mysql
mysqld --defaults-file="D:\soft\MySQL\MySQL Server 8.0\data\my.ini" --skip-grant-tables --shared-memory

注意:

D:\soft\MySQL\MySQL Server 8.0\data\my.ini: 应该填写你的my.ini文件路径

  1. 运行完该窗口, 不要把该窗口关闭
  2. 打开一个新的cmd命令, 在该命令窗口下,输入如下命令登录mysql
mysql -u root -p

在出现Enter Password时不需要输入任何内容,直接敲enter键登录

  1. 在登录mysql之后, 输入mysql的sql语句
update mysql.user set authentication_string="" where user = 'root';
  1. 退出mysql
 exit;
  1. 在第一个cmd窗口中, 按ctrl+c 停止--skip-grant-tables 模式运行mysql
  1. 启动mysql服务
net start mysql80
  1. 输入如下命令,进行登录mysql
mysql -u root -p

注意:

此时通过前面步骤, mysql的root用户的密码已经被你设置为""了,所以也不需要输入密码, 直接enter进入

  1. 输入alter的sql语句修改root用户密码
ALTER user 'root'@'localhost' IDENTIFIED BY 'root';

注意:

  • IDENTIFIED BY: 后面是你的root用户的新密码, 可以是任何的,
  • 如果该语句报错, 那密码按照mysql8官方的要求:
  • 密码要包含大写字母,小写字母,数字,特殊符号。比如: 'Root123@'
  1. 退出mysql, 然后你就可以使用你的新密码进行登录了
原文链接:,转发请注明来源!