docker中的mysql8忘记密码解决方案

2025-10-28 05:35:11

1、进入运行中的mysql容器,执行如下语句:docker exec -it dd75f390a5df /bin/bash,其中dd75f390a5df是容器ID。具体操作如图所示:

docker中的mysql8忘记密码解决方案

2、修改配置文件,具体操作如下图所示:

docker中的mysql8忘记密码解决方案

3、在编辑的my.cnf文件的最后一行加入:skip-grant-tables,最后保存退出

docker中的mysql8忘记密码解决方案

4、按组合键“ctrl+P+Q”退出容器回到主机,具体如下图所示:

docker中的mysql8忘记密码解决方案

5、使用docker restart dd75f390a5df 语句,重启容器,具体如下图所示:

docker中的mysql8忘记密码解决方案

6、 重新使用步骤一的方法,执行进入容器语句:

docker exec -it dd75f390a5df /bin/bash

然后使用语句mysql -u root -p 语句,登录数据库,不用输入密码,直接回车,具体操作如下图所示:

docker中的mysql8忘记密码解决方案

7、 执行use mysql,进入mysql数据库,然后执行如下语句:

update mysql.user set authentication_string='' where User='root';

具体操作如下图所示:

docker中的mysql8忘记密码解决方案

8、 执行

flush privileges

刷新权限内存,具体操作如下图所示:

docker中的mysql8忘记密码解决方案

9、执行exit; 命令退出数据库,

编辑my.cnf文件:删除第三步添加的那行,具体操作如下图所示:

docker中的mysql8忘记密码解决方案

docker中的mysql8忘记密码解决方案

10、用语句mysql -u root -p重新进入数据库,如下图所示:

docker中的mysql8忘记密码解决方案

11、执行

alter user 'root'@'localhost' IDENTIFIED BY '123456'; 

执行flush privileges;语句,具体操作如下图:

docker中的mysql8忘记密码解决方案

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢