- 以管理员身份运行 powershell,使用命令停止MySQL服务:
PS D:\AZ\mysql-8.0.18-winx64\bin> net stop mysql
MySQL 服务正在停止.
MySQL 服务已成功停止。
- 然后进入安装的 mysql 的 bin 目录下,如 D:\Software\mysql-8.0.18-winx64\bin, 执行
mysqld --console --skip-grant-tables --shared-memory
,注意不要关掉此窗口 (窗口1)
PS D:\AZ\mysql-8.0.18-winx64\bin> cd D:\AZ\mysql-8.0.18-winx64\bin
PS D:\AZ\mysql-8.0.18-winx64\bin> mysqld --console --skip-grant-tables --shared-memory
- 同样在bin目录下,新开一个管理员权限 powershell 窗口(窗口2),执行下面两句话
PS D:\Software\mysql-8.0.18-winx64\bin> mysql
mysql> use mysql
- 先将密码设置成空
update mysql.user set authentication_string="" where user="root";
flush privileges;
- 再修改密码并退出 mysql
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
flush privileges;
quit
- 关闭掉步骤2的那个命令窗口(窗口1),在当前 窗口2 中执行命令
net start mysql
启动服务,然后用新密码登录
mysql> quit
Bye
PS D:\Software\mysql-8.0.18-winx64\bin> net start mysql
PS D:\Software\mysql-8.0.18-winx64\bin> mysql -u root -p
Enter password: ******
......
mysql>