wsl2下操作。MySQL8 重置root密码
停止服务
sudo service mysql stop
跳过权限检查启动 MySQL: 使用 --skip-grant-tables
选项启动 MySQL 服务,可以无密码登录 MySQL 并更改 root 密码。
sudo mysqld_safe --skip-grant-tables --skip-networking &
登录 MySQL: 当服务器带 --skip-grant-tables
选项启动时,可以直接用 mysql
命令登录,无需密码。
sudo mysql -u root / mysql -u root
更新 root 密码: 在 MySQL 提示符下,使用 ALTER USER
语句来设置新的 root 密码。
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';如果遇到 ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement 报错,先执行 刷新权限(FLUSH PRIVILEGES;)再执行更新密码语句
刷新权限: 执行 FLUSH PRIVILEGES
命令以确保系统权限表被重新加载。
FLUSH PRIVILEGES;
退出 MySQL 并重启服务: 退出 MySQL 提示符,并重启 MySQL 服务。
EXIT;
sudo service start mysql
使用新密码登录: 现在,就能够使用新的 root 密码登录 MySQL 服务器了。
mysql -u root -p