3个步骤修改mysql8.0本地密码

好久没有使用本地mysql数据库,可能哪天突然需要用到的时候,密码却忘记了,重新卸载安装又麻烦,那么怎么办呢?可以通过修改密码解决。
操作系统:win10;
mysql数据库版本:mysql-8.0.16
mysql安装目录:D:\Program Files
下面讲解下步骤:

1.打开第1个dos窗口

依次输入以下指令

cd D:\Program Files\mysql-8.0.16-winx64\bin

net stop Mysql8

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

执行效果:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

命令解释:
命令1:打开本地电脑mysql安装目录的bin子目录(根据自己安装路径调整),因为里面包含有mysqld.exe可执行文件,进入到此目录才可以使后面的mysqld命令生效。
在这里插入图片描述
命令2:停止mysql服务,我之前将服务名称设置为了Mysql8,所以这里是“net stop Mysql8”,如果本地的mysql服务名称叫mysql,需要改成“net stop mysql”。
在这里插入图片描述命令3:表示启动MySQL服务的时候跳过权限表认证。由于mysqld –skip-grant-tables在mysql8.0中已失效,所以现使用命令:mysqld --console --skip-grant-tables --shared-memory。

注意:要使用管理员模式打开,否则会导致 “net stop Mysql8” 这个命令无法运行,提示拒绝访问,原因是当前用户的操作权限太低。
在这里插入图片描述

怎么使用管理员模式打开?
以win10为例,在搜索栏输入cmd,鼠标右击“命令提示符”选择管理员身份运行。
在这里插入图片描述

2.打开第2个dos窗口

依次执行以下命令

cd D:\Program Files\mysql-8.0.16-winx64\bin

mysql -u root -p
//不输入密码直接回车

use mysql
update user set authentication_string='' where user='root';
quit

上面几个命令的整体意思是:登陆mysql,切换到mysql数据库,更改user表,将root用户的这条记录认证字符串设置为空。
执行效果:
在这里插入图片描述

3.打开第3个dos窗口

依次执行以下命令

net start Mysql8

cd D:\Program Files\mysql-8.0.16-winx64\bin

mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

上面几个命令的整体意思是:重启mysql服务,登陆mysql,修改用户root的密码为:123456。
注意事项:
1、同样需要使用管理员模式打开dos窗口。
2、在mysql低版本修改密码可以使用命令:set password for root@localhost = password(‘123456’);
但是mysql 8.0 版本修改密码,只能使用命令:alter user ‘root’@‘localhost’ identified by ‘123456’;
3、如果执行“net start Mysql8 ”命令启动mysql服务不成功在这里插入图片描述

  1. 请检查mysql安装目录下data子目录名称是否正确,正确应该如下
    在这里插入图片描述
  2. 若data名称正确,删除安装目录下的data文件夹,打开dos窗口,执行以下命令:
cd D:\Program Files\mysql-8.0.16-winx64\bin
mysqld  --initialize

会发现,之前删除的data文件夹又重新生成了。重新运行 “net start mysql” 即可启动服务成功。
执行效果:
在这里插入图片描述
至此,mysql 8 本地密码修改成功了!

猜你喜欢

转载自blog.csdn.net/u012660464/article/details/110223110