MySQL8.0 root密码忘了怎么办?(Mac Os)

2022-03-31 21:31:28 浏览数 (1)

root用户密码忘了怎么办啊喂!

前言

 依旧是在了解MySQL的DCL时,跟着视频学习时,老师讲了在忘记root密码的情况下的解决方法,依旧是在照葫芦画瓢后却报错了,不需要思考了,肯定又又叒是版本的问题(我使用的是8.0,视频教学中使用的是5.7),按照惯例我在搜寻、探索一番后得到了解决的方案,在此记录一下,由于我在同时使用Windows和Mac Os,所以两个系统的解决方法我都进行了学习,本篇为Mac Os的解决方法,需要Windows解决方法的小伙伴请跳转我的另一篇博客MySQL8.0 root密码忘了怎么办?(Windows)

在教学中,老师对于MySQL 5.7以前的做法是(我使用的是MySQL8.0),由于老师的教学是基于Windows的,就算是5.7版本的数据库,这套方法在Mac Os上也是不适用的,所以本篇是面向新版本MySQL8的

代码语言:javascript复制
#第一步 管理员权限打开命令窗口 --> net stop mysql        停止mysql服务(指令中的'mysql'取决你的服务名)
#第二步 使用无验证方式启动 mysql 服务:mysqld --skip-grant-tables
#第三步 打开新的命令窗口,直接输入'mysql'命令,回车。就可以登录成功
#第四步 USE mysql;
#第五步 UPDATE user SET password = PASSWORD('新密码') WHERE user = 'root';
#第六步 关闭两个窗口
#第七步 打开任务管理器,手动结束 mysqld.exe 的进程
#第八步 启动 mysql 服务
#第九步 使用新密码登录

 看过我上一篇文章的应该知道,PASSWORD()函数已经在新版本8.0以后废弃了,所以这种解决方法是肯定不适用的,因此又产生了这篇文章,下面我们来看看在Mac Os下MySQL 8忘记密码,如何登录及修改密码吧

第一步

打开控制台,关闭MySQL服务 使用命令:sudo /usr/local/mysql/support-files/mysql.server stop

第二步

进入目录/usr/local/mysql/bin 使用命令:cd /usr/local/mysql/bin

第三步

获取权限 使用命令:sudo su

第四步

启动跳过授权表,免密登录的服务 使用命令:mysqld_safe --skip-grant-tables &

第五步

重新打开一个命令窗口,然后免密码登录Mysql 使用命令:mysql -u root

第六步

使用MySQL的mysql数据库 使用命令:USE mysql

第七步

先修改root的密码为空。特别注意authentication_string=''的等号后是一对单引号 使用命令:UPDATE mysql.user SET authentication_string='' WHERE user = 'root';

第八步

在上一步的基础上查询root的用户分组和密码 使用命令:SELECT host,user,authentication_string FROM mysql.user; 可以看到,在修改以后,root用户的密码已经为空

第九步

在所有命令窗用按下Control D退出编辑,然后关闭命令窗口

第十步

打开命令窗口,停止、启动一次MySQL服务 使用命令停止:sudo /usr/local/mysql/support-files/mysql.server stop 使用命令启动:sudo /usr/local/mysql/support-files/mysql.server start

第十一步

重新登录MySQL,要输入密码的时候,什么都不用输入直接回车即可 使用命令:mysql -u root -p

第十二步

最后一步,修改root密码 使用命令:ALTER user 'root'@'localhost' IDENTIFIED BY '12345678';

测试

改完密码直接关闭命令窗口,然后新开一个命令窗口 使用命令:mysql -u root -p 回车后输入密码,登录成功就说明你成功了,撒花~

本篇文章采用 署名 4.0 国际 (CC BY 4.0) 许可协议进行许可。

0 人点赞