mysql忘记密码,怎么修改
一、更改my.cnf配置文件
1、编辑my.cnf配置文件,在[mysqld]下添加skip-grant-tables,然后保存并退出
skip-grant-tables

2、重启mysql服务:
etc/init.d/mysql restart
(有些用户可能需要使用/etc/init.d/mysqld restart)
二、修改密码
1、重启以后,执行mysql 进入mysql命令行

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("root") where user="root";
ERROR 1054 (42S22): Unknown column 'password' in 'field list'
mysql> update mysql.user set authentication_string=password('root') where user='root';
Query OK, 0 rows affected, 1 warning (0.00 sec)
Rows matched: 1 Changed: 0 Warnings: 1
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql>
mysql>
mysql> exit
三、还原my.cnf配置文件,并重启Mysql
重新执行vim /etc/my.cnf,然后删除刚刚加入的 skip-grant-tables,重新启动mysql
etc/init.d/mysql restart
当遗忘MySQL密码时,可以通过修改my.cnf配置文件、启动MySQL服务无权限模式,然后使用SQL语句重置密码。具体步骤包括:在[mysqld]下添加skip-grant-tables,重启服务,进入mysql命令行执行密码修改操作,最后还原my.cnf并重启MySQL服务。
347

被折叠的 条评论
为什么被折叠?



