忘记mysql密码的解决方法,Linux系统下,MySQL(5.6,5.7)

相关链接:https://blog.csdn.net/gulang03/article/details/82790821

1.修改mysql配置文件,使其可以无密码登录

命令:sudo vim /etc/mysql/my.cnf #配置文件根据自己数据库安装情况查找,5.7默认在/etc/mysql/mysql.conf.d/
在打开此文件后在文件[mysqld]下添加:skip-grant-tables

2.重启服务

命令:sudo service mysql restart

3.无密码登录

mysql -uroot -p

4.修改密码

第一步:进入数据库后,选择mysql这个数据库:use mysql;

第二步:
update user set password=password('123') where user='root'; # 5.6
update mysql.user set authentication_string=password('newpassword') where user='root'; #5.7,第一个命令已经无法修改密码了。用这个命名会报如下错误:ERROR 1054 (42S22): Unknown column ‘password’ in ‘field list’
或者使用

ALTER USER root IDETIFIED by "newpassword"   #方式二
set password for 'root'@'localhost'='newpassword';方式三

原因:

*特别注意的一点是:新版的mysql数据库下的user表中已经没有Password字段了

而是将加密后的用户密码存储于authentication_string字段,所以报上面的那个错 误。

第三步:flush privileges;

第四步:exit;

5.最后还原配置文件

,重启mysql服务(sudo service mysql restart),再重新登录。

猜你喜欢

转载自blog.csdn.net/u014270566/article/details/107011722
今日推荐