ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。

很长时间没有使用Mysql,要用的时候就遇到了麻烦的问题


忘记了密码的感觉真的很糟糕: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。
一开始在网上找了很多办法,想通过在my.ini中加入skip_grant_tables来跳过输入密码,直接进入。ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。
但是我试了很多遍都不行,每次去启动mysql服务的时候,mysql服务都会自动停止。ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。

后来我发现,mysql在8.x版本之后,skip_grant_tables命令已经失效了。现在只能用mysqld --console --skip-grant-tables --shared-memory来代替了。

操作步骤如下:


1.用管理员模式打开命令行:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。

2.关闭mysql服务,命令是net stop mysql,如果已经关闭就不用再次关闭了。
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。
3.输入命令mysqld --console --skip-grant-tables --shared-memory
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。
4.最后,另外重新打开一个命令行界面(管理员模式),然后输入mysql -uroot -p启动即可
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),mysql8.X版本解决方法。