mysql忘记root用户密码
在centos环境安装的mysql数据库,版本号8.0.25,时间久了把root用户密码给忘了,现记录下改密码过程。
1. 修改my.conf配置文件
vim /etc/my.cnf
在[mysqld]下面新起一行,添加skip-grant-tables,它可以让我们免密登录到mysql中
[mysqld] skip-grant-tables
2. 重启mysql服务
service mysqld restart
重启完成后可以检查下服务状态
service mysqld status
正常会看到running的绿色文字
3. 使用root用户免密登录mysql
mysql -u root -p
屏幕出现Enter password提示时直接按回车键即可
4. 刷新权限
flush privileges;
5. 修改root用户密码
alter user 'root'@'localhost' identified by 'Abcdef-123456';
改密码之前如果漏掉了第4步,会报错
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
改密码时如果新密码太简单,也会报错
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
6. 改完密码后退出mysql,把第1步修改的my.cnf文件还原回去,然后重启mysql,就可以使用新密码登录了。