千家信息网

MySQL 5.7及8.0版本数据库的root密码遗忘的解决

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,注:MySQL5.7破解root密码,跳过密码认证登录到数据库,直接修改表中的密码即可,但是MySQL 8.0则不可以这样修改root密码,需要跳过密码认证登录到数据库后,先将root密码设置为空,然
千家信息网最后更新 2026年11月01日MySQL 5.7及8.0版本数据库的root密码遗忘的解决

注:MySQL5.7破解root密码,跳过密码认证登录到数据库,直接修改表中的密码即可,但是MySQL 8.0则不可以这样修改root密码,需要跳过密码认证登录到数据库后,先将root密码设置为空,然后才可以登录到数据库,修改root密码。

1、遗忘MySQL 5.7数据库的root密码解决办法

方法1(推荐):
[root@mysql ~]# systemctl stop mysqld        #停止MySQL服务[root@mysql ~]# mysqld --user=root --skip-grant-tables    #使用mysqld指令启动mysql服务,跳过授权表#上述命令执行后,会一直占用当前终端,需要再开启一个终端,#也不要想着放到后台运行了,放到后台3306端口不会监听的[root@mysql ~]# ss -anpt | grep 3306     #再开启一个终端,确定端口在监听LISTEN     0      80          :::3306                    :::*                   users:(("mysqld",pid=8282,fd=33))[root@mysql ~]# mysql -uroot           #直接使用root用户登录,无需密码mysql> update mysql.user set authentication_string=password('1234')     -> where User='root' and Host='localhost';        #更改root密码为"1234"mysql> flush privileges;          #刷新权限[root@mysql ~]# kill 8282         #将之前mysqld启动时占用的终端进程号kill掉,切忌不要使用-9选项[root@mysql ~]# systemctl start mysqld      #启动MySQL服务,使用新密码登录即可

如果上面的过程中,使用kill -9来结束mysqld占用的终端,那么再次启动可能会报错,sock文件被锁定,此时,需要将你mysql的sock文件删除掉,我这里的sock文件在/tmp下,分别时mysql.sock.lock和mysql.sock这两个文件,删除后再次启动MySQL即可。

方法2:
[root@mysql01 ~]# mysql --version        #确定MySQL版本mysql  Ver 14.14 Distrib 5.7.28, for linux-glibc2.12 (x86_64) using  EditLine wrapper[root@mysql01 ~]# vim /etc/my.cnf         #编辑主配置文件[mysqld]      #在mysqld这行下写入下面内容skip-grant-tables            .................#省略部分内容[root@mysql01 ~]# systemctl restart mysqld      #重启MySQL服务,使配置文件生效[root@mysql01 ~]# mysql -uroot           #跳过密码验证,直接登录数据库#修改root密码为pwd@123,并刷新权限mysql> use mysql;mysql> update user set authentication_string = passwoord('pwd@123') where user = 'root';mysql> flush privileges;     #刷新权限mysql> exit#配置密码验证,使用新密码登录[root@mysql01 ~]# vim /etc/my.cnf         #编辑主配置文件[mysqld] skip-grant-tables            #删除此行[root@mysql01 ~]# systemctl restart mysqld          #重启使更改生效#使用新密码即可成功登录[root@mysql01 ~]# mysql -uroot -ppwd@123       

2、遗忘MySQL 8.0数据库的root密码解决办法

[root@mysql01 ~]# mysql --version        #查看MySQL版本mysql  Ver 8.0.18 for linux-glibc2.12 on x86_64 (MySQL Community Server - GPL)[root@mysql01 ~]# vim /etc/my.cnf         #编辑主配置文件[mysqld]      #在mysqld这行下写入下面内容skip-grant-tables            .................#省略部分内容[root@mysql01 ~]# systemctl restart mysqld      #重启MySQL服务,使配置文件生效[root@mysql01 ~]# mysql -uroot           #跳过密码验证,直接登录数据库#将root密码设置为空mysql> use mysqlmysql> update user set authentication_string='' where user = 'root';mysql> flush privileges;mysql> exit#开启密码验证并重新登录数据库[root@mysql01 ~]# vim /etc/my.cnf         #编辑主配置文件[mysqld] skip-grant-tables            #删除此行[root@mysql01 ~]# systemctl restart mysqld          #重启使更改生效[root@mysql01 ~]# mysql -uroot            #直接登录数据库mysql> alter user root@localhost identified by 'pwd@111';mysql> flush privileges;mysql> exit#使用新密码进行登录测试[root@mysql01 ~]# mysql -uroot -ppwd@111

-------- 本文至此结束,感谢阅读 --------

密码 登录 文件 数据 数据库 配置 终端 服务 内容 新密 验证 权限 版本 再次 办法 后台 方法 端口 部分 监听 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 互联网科技园 科技互联网龙头 互联网最新的科技 厦门中拓互联网络科技有限公司 互联网科技有限公司图片 智网互联网科技 互联网高科技企业 哈尔滨秒房互联网科技有限公司 开启互联网科技时代小说 中国互联网有什么科技含量 互联网科技公司实习生 注册互联网科技公司经营范围大全 南博望互联网科技有限公司 沐思想互联网科技有限公司 南京一网一红互联网科技有限公司 上海同邻互联网科技有限公司规模 互联网科技机房 第三届互联网大会安防黑科技 陕西彩京云互联网科技有限公司 杭州科技互联网公司有哪些 互联网科技英文翻译 天扬科技互联网广告 科技大学互联网专业好不好 字节跳动和互联网科技 移动互联网科技股 互联网为啥属于高科技 内蒙古九一互联网科技 保山互联网科技靠谱吗 唐山双旺合互联网科技产业园 科技互联网公司两年变化
0