Mysql忘记密码如何修改

https://www.jianshu.com/p/8b8a2d0a2051

一、更改my.cnf配置文件

1、用命令编辑my.cnf配置文件,即:

vim /etc/my.cnf
vi /etc/my.cnf
nano /etc/my.cnf

2、在[mysqld]下添加skip-grant-tables,然后保存并退出

skip-grant-tables
 
mysql配置.jpg

3、重启mysql服务:service mysqld restart

service mysqld restart

二、修改密码

1、重启以后,执行mysql -uroot -p(不需要密码直接Enter)进入mysql命令行

mysql -uroot -p
 
进入mysql命令行.jpg

2、sql语句修改密码并执行退出mysql
注意:如果执行修改密码命令报错,执行后报错 ERROR 1054(42S22) Unknown column 'password' in ‘field list’ 错误的原因是 5.7版本下的mysql数据库下没有password这个字段,password字段改成了authentication_string

mysql> update user set password=password("*******") where user="*******";  #修改密码报错
ERROR 1054 (42S22): Unknown column 'password' in 'field list'

mysql> update mysql.user set authentication_string=password('*******') where user='*******';  #修改密码成功
Query OK, 1 row affected, 1 warning (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 1

mysql> flush privileges;  #立即生效
Query OK, 0 rows affected (0.00 sec)

mysql> quit  #退出mysql -- 也可以使用 exit;命令
Bye

3、重新执行vim /etc/my.cnf,然后删除刚刚加入的 skip-grant-tables,重新启动mysql



作者:拉提娜的爸爸
链接:https://www.jianshu.com/p/8b8a2d0a2051
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

猜你喜欢

转载自www.cnblogs.com/maidongdong/p/12311163.html