分享交流
合作共赢!

mysql忘记登陆授权码的解决办法

在使用MySQL数据库的过程中,如果忘记了root密码,可以通过重置MySQL数据库root密码方法解决问题,但是不通的MySQL版本重置方法有所不同,这里做以总结如下:

若丢失MySQL登陆授权码,可以按照下面操作解决问题:

此内容查看价格1立即购买

1.在/etc/my.cnf中的【mysqld】模块添加一行:

skip-grant-tables  
#保存退出;

2.重新启动MySQL

/usr/local/mysql/support-files/mysql.server restart

3.直接登陆MySQL,并修改密码

/usr/local/mysql/bin/mysql -uroot -p(空密码)
use msyql;
update user set authentication_string = '' where user = 'root'; 

这里有个坑,在更新authentication_string的时候一定要设置为空

解释:因为MySQL新版废弃了password字段和password()函数,且密码加密方式plugin为新的caching_sha2_password,而authentication_string正常情况下必须是41位mysql加密后的字符串,只有设置为空,然后先刷新:flush privileges; 再通过alter user ‘root’@’localhost’ identified by ‘xinpassword’; 才能修改成功!
note: UPDATE user SET Password = PASSWORD(‘新密码’) WHERE user = ‘root’; (Mysql5.6用这个修改root密码)
网上搜了很多资料,有很多相同的坑,比如:use mysql;  update user set authentication_string=“newpassword” where user=”root”; 这是行不通的!

4.退出mysql,回到/etc/my.cnf下,删除skip-grant-tables,并重启MySQL

service mysqld restart

5.此时密码修改已成功,可以用新密码正常登陆了!

/usr/local/mysql/bin/mysql -uroot -p

温馨提示:

mysql安装详细步骤参考琼杰笔记文档:

Linux系统安装部署MySQL8.0.12特详细教程,新手看一遍就会!

参考:https://www.aliyun.com/jiaocheng/135759.html

参考文章:https://www.cnblogs.com/mujingyu/p/7689116.html

赞(1) 打赏
未经允许不得转载:琼杰笔记 » mysql忘记登陆授权码的解决办法

评论 抢沙发

评论前必须登录!

 

分享交流,合作共赢!

联系我们加入QQ群

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续给力更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫打赏

微信扫一扫打赏

登录

找回密码

注册