暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Mysql忘记密码解决方案及三种方式修改密码

波波的小书房 2021-04-21
1156
修改密码的三种方式

mysql用户分为root用户(超级管理员,拥有所有权限)和普通用户,mysql服务器通过权限表来控制用户对数据库的访问,这些权限表存于root用户下的mysql数据库中。

在使用mysql数据库过程中,往往需要修改密码的操作,下面介绍三种修改密码的方式:


使用mysqladmin命令在命令行指定新密码
      mysqladmin -u root -p password ‘新密码’
      回车,将提醒你输入原密码


使用set语句
      set password=password(“新密码”)
      这时需要重启mysql服务器或使用flush privileges语句刷新权限表,使新密码生效

修改user表

update mysql.user set authentication_string=PASSWORD("123456") 
where user="root" and host="localhost"


注意,mysql新版本用于存用户密码的字段名为authentication_string而不是 password,且新密码必须使用password函数进行加密

mysql8.0修改密码语句
ALTER USER 'root'@'localhost' IDENTIFIED BY 'ok';
如遇报错,先执行flush privileges


忘记密码怎么办呢?

另外,不知道小伙伴们有没有遇到过忘记密码的情况呢?其实忘记密码很容易解决,下面就介绍忘记密码时的解决方案:

第一步:在命令行输入net stop mysql命令关闭mysql服务;

第二步:使用--skip-grant-tables选项启动mysql服务(服务器将不加载权限判断,任何用户 都能访问数据库);

在命令行输入 mysqld --skip-grant-tables;

命令运行之后,用户无法再输入指令,此时如果在任务管理器中可以看到名称为 mysqld的进程,则表示可以用root用户登录服务器了;


第三步:打开另一个命令行窗口,输入不加密码的登录命令;

mysql -u root;

登录成功后可以使用update语句修改密码;

修改完成后,必须使用flush privileges语句刷新权限表,这样新的密码才能生效;


第四步:将输入mysqld --skip-grant-tables命令的命令行窗口关闭,接下来就可以使用新密码登录mysql服务器了;

 怎么样,是不是觉得很简单呢?以后忘记密码再也不用愁了!
文章转载自波波的小书房,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论