如果忘记密码,或者连localhost也没有访问权限的情况,可以通过免密登陆mysql,并修改user表信息。
解决:
修改/etc/mysql/mysql.conf.d
1在[mysqld]区域添加配置:
skip-grant-tables
说明:禁用授权表
重启
/etc/init.d/mysqlrestart
登陆mysql
mysql -u root-p
说明:输入密码时直接回车可直接登录
修改user表
修改ip限制
UPDATE user SEThost='172.16.172.*' WHERE user='root';
修改密码
UPDATE user SET Password='root'WHERE user='root';
5.7版本
update user setauthentication_string = password('root'), password_expired = 'N',password_last_changed = now() where user = 'root';
授权localhost登陆
grant all privileges on *.* to'root'@localhost identified by 'root';
说明:授权localhost可以登陆root用户,密码为root
*注意:一定要回去把skip-grant-tables注释掉然后再重启
---
更多文章关注公众号