千家信息网

mysql用户名root密码遗忘怎么办

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章将为大家详细讲解有关mysql用户名root密码遗忘怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。讲到用户了,就先说说mysql的用户权限吧.5.7开
千家信息网最后更新 2026年11月01日mysql用户名root密码遗忘怎么办

这篇文章将为大家详细讲解有关mysql用户名root密码遗忘怎么办,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

讲到用户了,就先说说mysql的用户权限吧.5.7开始,有了很多改变:


1.用户长度变了.5.7.8以后的用户长度为32个字符,5.7.8以前的用户长度为16个字符,5.6我记得好像是8? 忘了.咳咳
2. mysql_native_password插件默认启用,且password以后将慢慢移除.在mysql.user里面password字段已经木有了,转而通过plugin字段的加密算法将密码加密后的字符存储在authentication_string字段;
3.5.7.4以后用户的密码可以设置有效期,在有效期到了之后,会要求重新设置密码;
4.5.7.6开始,create和alter user可以锁定用户,锁定后,用户将不能访问mysql.如:ALTER USER 'jeffrey'@'localhost' ACCOUNT LOCK;
5.5.7.5开始,mysql提供了ssl和RSA通信证书, auto_generate_certs和sha256_password_auto_generate_rsa_keys参数控制,但必须在启动之前设置;
6.5.7的初始化与之前的比也有了变化.删除匿名用户,初始化的时候只保留了root@'localhost'和mysql.sys@'localhost'两个用户.且也没有了test这个库;
7.5.7.8开始增加了一个super_read_only的参数, 目的是除了root用户的supper用户都设为只读;
8.以前grant可以将没有的用户直接新增创建并赋权,在5.7默认模式(sql_mode)下,是不能通过grant来新增新用户,必须先create user之后在grant权限;


参考官方手册:http://dev.mysql.com/doc/refman/5.7/en/security.html


普通用户修改,就不细说了,登陆拥有super用户的直接如下语句修改:
alter user user_name@'host' identified by 'password';

主要说下root密码的修复,2种方法:
1.常规方法:
在启动的时候在my.cnf加上skip-grant-tables参数,或者启动选项--skip-grant-tables,然后进入mysql修改mysql密码,在重启mysql服务即可;网上这种帖子很多,不细说;

2.黑科技(不停机修改):
这种方法不推荐,但绝对好用,是跟某位大牛那学来的.
mysql到目前5.7的mysql.user表都是myisam引擎(据说8.0以后就是innodb了).提到myisam引擎,大家都知道myisam的表的数据都是放在.MYD里面的.所以,黑科技来啦;
1.进入data/mysql目录,复制user表的3个文件到另外的库,cp -a user* ../databasename1/
2.需要有操作databasename1库中表权限的用户,连上databasename1库,直接更改root用户密码为空:update user set entication_string='' where user='root'; 最后检查一下select user,host,entication_string from databasename1 where user='root';
3.在将databasename1目录的user的3个文件覆盖原mysql库下面的文件. cp -a data/databasename1/user* data/mysql/
4.这个时候还不能直接登录,因为修改用户密码后,需要flush privileges讲新密码刷进内存.我们已经没有super用户来flush了,而且也不能停机,这可怎么办??? 大招来了,kill -HUP pid,在操作系统执行该命令,注意pid是mysql的pid不是ppid,别把父进程给挂起了.具体HUP的功能,百度吧.不细说.
到这就大功告成了,这个时候就可以用root以无密码状态登陆,在进去修改root的密码.ok.收工!
这个方法的知识点:首先myisam是的数据是存储在文件里面的,而且是可以通过复制直接将表结构,数据,索引都copy利用,所以这也是一个安全隐患点,mysql目录的权限一定得控制好啊.其次就是kill -HUP pid 发起一个挂起信号,然后mysqld_safe会监控到挂起,就重新加载配置文件,对线上业务是没有任务影响的,不会出现闪断之类的情况出现.

关于"mysql用户名root密码遗忘怎么办"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

用户 密码 文件 方法 时候 权限 怎么办 参数 字段 字符 数据 目录 篇文章 长度 用户名 有效 就是 引擎 更多 有效期 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 深圳市人人互联网科技有限公司 互联网和科技技术 互联网最新的科技有限公司 互联网金融 科技金融 万易互联网科技有限公司 广州善班互联网科技 长亮科技 互联网金融 深圳国际航运科技和互联网 宝灵互联网科技有限公司 移动互联网科技公司 知域互联网科技有限公司大骗子 中国互联网十大科技股排名 民营互联网公司国防科技 中天科技中国工业互联网 广州百诚互联网科技有限公司官网 富国互联网科技002692 互联网时代科技型公司的机会 互联网高科技行业有哪些企业 互联网金融运营模式中的金融科技 小牛互联网科技有限公司地址 广州为想互联网科技有限公司 互联网科技公司简介 金融科技与互联网金融相同和不同 佛山市翊博互联网络科技有限公司 互联网领先科技宣传片 互联网科技年终奖 下一代互联网重大应用科技园 中国新注册互联网科技 广州智享互联网科技 互联网的科技体现在哪里
0