我是靠谱客的博主 清爽导师,最近开发中收集的这篇文章主要介绍忘记mysql数据库密码后的修改密码方式,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

当忘记mysql数据库密码如何进行密码修改(本文mysql版本为5.7)
1.进入mysql配置文件中

[root@localhost ~]# vim /etc/my.cnf

2.在[mysqld]中添加 skip-grant-tables(跳过数据权限验证)

[mysqld]
skip-grant-tables

3.重启数据库,让配置文件生效

[root@localhost ~]# systemctl restart mysqld

4.登录数据库
因为前面在配置文件中加入了跳过验证,所以这里不用输入密码,直接回车就可以进入到数据库了

[root@localhost ~]# mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or g.
Your MySQL connection id is 2
Server version: 5.7.32 MySQL Community Server (GPL)
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
mysql> 

5.修改密码

mysql> use mysql;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed
mysql> update user set authentication_string=password("新密码") where user='root';
Query OK, 2 rows affected, 1 warning (0.00 sec)
Rows matched: 2  Changed: 2  Warnings: 1

注意在mysql5.7版本里面没有password这个字段了,password字段换成了authentication_string,所以执行下面的命令会报错

mysql> update user set password=password("新密码") where user='root';
ERROR 1054 (42S22): Unknown column 'password' in 'field list'

6.刷新权限
在修改完后记得刷新权限,让刚刚修改的策略立刻生效
刷新完后,退出数据库

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> q
Bye

以上就已经修改了密码,在修改完密码后,一定要记得把刚刚在数据库配置文件中加的skip-grant-tables注释掉
7.注释skip-grant-tables

[root@localhost ~]# vim /etc/my.cnf
[mysqld]
#skip-grant-tables

8.再次重启数据库

[root@localhost ~]# systemctl restart mysqld

到这才算改好了密码,使用新密码登录数据库正常,密码修改完成
注意:skip-grant-tables这里的修改是跳过了数据库的安全验证,在这个模式下,所有人都可以随意的登录数据库,并进行修改,此项步骤很危险,修改完密码后一定要记得关闭。

最后

以上就是清爽导师为你收集整理的忘记mysql数据库密码后的修改密码方式的全部内容,希望文章能够帮你解决忘记mysql数据库密码后的修改密码方式所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(55)

评论列表共有 0 条评论

立即
投稿
返回
顶部