Linux环境下Mysql忘记密码的解决办法

新安装的MySQL5.7,登录时提示密码错误,安装的时候并没有更改密码,可以通过免密码登录的方式更改密码,步骤如下:

1.修改MySQL的登录设置:
vi /etc/my.cnf
在[mysqld]的段中加上一句:skip-grant-tables保存并且退出。(跳过数据库权限验证)
2.重新启动mysqld
service mysqld restart
3.登录并修改MySQL的root密码
mysql> USE mysql ;
mysql> UPDATE user SET Password = password ( 'new-password' ) WHERE User = 'root' ;
如果使用的mysql版本为5.7及以上版本,执行到这里会报错
提示ERROR 1054 (42S22): Unknown column 'password' in 'field list',是因为mysql数据库下已经没有password这个字段了,password字段改成了
authentication_string
所以更改为以下字段在运行即可 update mysql.user set authentication_string=password('123') where user='root' ;
4.将MySQL的登录设置修改回来
vi /etc/my.cnf
将刚才在[mysqld]的段中加上的skip-grant-tables删除
保存并且退出。
5.重新启动mysqld
service mysqld restart
修改成功。^_`

你可能感兴趣的:(Linux,Mysql)