MySql 8.0.17 安装完成后重置密码的解决方法

在之前的文章MySQL 8.0.11中,密码是保存在err结尾的文件内,但在现今版本中,可能出于安全的考虑不再以明文的方式存储,只有在初始化时,才在控制台中输出:

mysqld --initialize --console

如果你已经错过了控制台输出的密码,那么登录时就会提示:

ERROR 1045(28000): Access denied for user 'root'@'localhost'(using password) 

没有其他查看的方法,只能重置密码。

重置方法

如果你的数据库是刚安装,什么都还没有,那么可以删除安装目录下的data文件夹,再执行一次初始和安装的命令即可。

MySql 8.0.17 安装完成后重置密码的解决方法_第1张图片

 

下面我们介绍一种不删除数据的情况下重置密码的方法:

首先,我们需要把服务停止,使用:

net stop mysql

停止服务后,在打上:

mysqld --shared-memory --skip-grant-tables

(注意:以上命令执行后,光标一直在下一行闪烁,就是正常的,不需要等,此时需要打开新的命令窗口操作)

MySql 8.0.17 安装完成后重置密码的解决方法_第2张图片

打开新的cmd,cd到安装目录中,直接输入mysql就可以正常启动了

MySql 8.0.17 安装完成后重置密码的解决方法_第3张图片

此时如果直接修改密码,会提示该模式下无法操作:

解决方法是先执行:

flush privileges;

然后就可以修改了

SET PASSWORD FOR 'root'@'localhost' = 'password';

MySql 8.0.17 安装完成后重置密码的解决方法_第4张图片

如果此时提示:

ERROR 2003 (HY000): Can't connect to MySQL server on 'localhost' (10061)

不要怀疑前面的操作,是你的服务停了没有启动,使用 net start mysql 启动即可

MySql 8.0.17 安装完成后重置密码的解决方法_第5张图片

参考链接:

https://blog.csdn.net/baidu_32363401/article/details/81544573

你可能感兴趣的:(开发的曲折之路)