mysql 8.0 忘记密码如何处理

os: centos 7.4
db: mysql 8.0.22

普通用户忘记密码

普通用户忘记密码后,联系DBA,修改密码即可

mysql use mysql;
mysql alter user 'usr_abc'@'%.%.%.%'  identified by 'mysqlmysql';

mysql flush privileges;

超级用户忘记密码

需要设置个权限参数,重启mysql实例生效。
添加 skip_grant_tables 参数(需要同时取消 validate_password* 一系列参数)

# vi /etc/my.cnf

[mysqld]
skip_grant_tables
skip_networking

重启 mysql 实例

# systemctl restart mysqld.service
# mysql

mysql use mysql;
mysql update mysql.user set authentication_string = '' where user='root' and host='localhost' ;

mysql flush privileges;
mysql exit;

这时密码置为空,需要取消 skip_grant_tables 参数后,重启 mysql 实例

# vi /etc/my.cnf

[mysqld]
#skip_grant_tables
#skip_networking

# systemctl restart mysqld.service

重新登录mysql后,修改密码

# mysql

mysql use mysql;
mysql alter user 'root'@'localhost' IDENTIFIED BY 'mysqlmysql';

mysql flush privileges;
mysql exit;

参考:

最新回复(0)
/jishuKTwp3DM4HfStmgw0heZ_2BuR3ASmngcU5np7vHB_2FnHMLE_3D4834054
8 简首页