注:MySQL5.7破解root密码,跳过密码认证登录到数据库,直接修改表中的密码即可,但是MySQL 8.0则不可以这样修改root密码,需要跳过密码认证登录到数据库后,先将root密码设置为空,然后才可以登录到数据库,修改root密码。
1、遗忘MySQL 5.7数据库的root密码解决办法
[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 mysql mysql> 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
总结
以上所述是小编给大家介绍的MySQL 5.7及8.0版本数据库的root密码遗忘的解决办法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对NICE源码网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!