MySQL管理密码忘记后可以通过以下方式重置:

1、在/etc/my.cnf配置中增加以下内容:

[mysqld]
skip-grant-tables

2、重启MySQL服务后登录MySQL就可以不输入密码了,然后执行SQL重置密码 

mysql > update mysql.user set authentication_string=password('NEWPASSWORD') where user='root';
mysql > flush privileges;

3、取消配置文件中的skip-grant-tables内容,然后再次重启MySQL服务即可 

PS:在5.7之前的版本中,修改密码的SQL语法有一点不同 

mysql > update mysql.user set password=password('NEWPASSWORD') where user='root';
mysql > flush privileges;

另外除了修改配置文件外,在启动MySQL服务时使用--skip-grant-tables选项也可以开启忽略授权认证的功能 

mysqld_safe --skip-grant-tables --user=mysql & #多实例时要在skip前增加--defaults-file=/etc/xx.cnf指定配置文件
mysqladmin -u root -ppassword shutdown #关闭用mysqld_safe启动的服务

 

 

 

 

Logo

一站式 AI 云服务平台

更多推荐