很多同学忘记密码,找到很多攻略无效,多是因为攻略适用版本老旧,此攻略适用于8.0版本!
第一步:在命令行输入net stop mysql命令关闭mysql服务
net stop mysql;
第二步:使用–skip-grant-tables选项启动mysql服务(服务器将不加载权限判断,任何用户 都能访问数据库)
mysqld --console --skip-grant-tables --shared-memory
命令运行之后,用户无法再输入指令,此时如果在任务管理器中可以看到名称为 mysqld的进程,则表示可以用root用户 登录服务器了
第三步(重点!很多人死在这里):
打开另一个命令行窗口,输入不加密码的登录命令
mysql -u root;
登录成功后可以使用以下语句修改密码:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY "123456";
如果报错,运行以下语句:
flush privileges;
修改完成后,必须使用flush privileges语句刷新权限表,这样新的密码才能生效:
flush privileges;
第四步:将输入mysqld --skip-grant-tables命令的命令行窗口关闭,接下来就可以使用新密码登录mysql服务器了
mysqld --skip-grant-tables;
亲测有效
另外补一下8.0的url和驱动写法
url = jdbc:mysql://localhost:3306/user?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false
drive = com.mysql.cj.jdbc.Driver
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)