MySQL8.0忘记root密码

MySQL8.0忘记root密码

  • 修改root密码
  • Navicat连接mysql出错

修改root密码

停止启动mysql:net stop mysql
启动mysql:net start mysql
mysql忘记root密码后可以用mysql --initialize --user=root --console得到临时密码进行登录
1)在mysql未启动的情况下切换到mysql的安装目录D:\Program Files (x86)\mysql-8.0.17-winx64\bin下,在命令行输入:mysql --initialize --user=root --console 得到临时密码。在initialize的时候一定要先删除mysql安装目录下的data文件夹,否则会报错。
MySQL8.0忘记root密码_第1张图片
2)以管理员身份重新启动一个cmd命令窗口,启动mysql服务,输入:mysql -u root -p,输入console中的临时密码进入数据库。
MySQL8.0忘记root密码_第2张图片
3)用临时密码登录mysql后修改密码命令:
ALTER USER “root”@“localhost” IDENTIFIED BY “你的新密码”;
在这里插入图片描述

Navicat连接mysql出错

在用Navicat连接MySQL时出错:1251-客户端不支持服务器请求的认证协议;考虑升级MySQL客户端
MySQL8.0忘记root密码_第3张图片
用下面三条语句解决这个问题:
1)use mysql;
2)用语句alter user ‘root’@‘localhost’ identified with mysql_native_password by ‘密码’;授权为用密码远程访问。
3)使用flush privileges;来刷新该表。
MySQL8.0忘记root密码_第4张图片1251问题解决后,要注意重启mysql服务,否则会出现1045(访问被拒绝)问题。
重启后再新建连接就没问题了。

你可能感兴趣的:(MySQL8.0忘记root密码)