一、啰里八嗦
家里的旧电脑搞了个centeros7作为服务器使用,今天发现登录密码和数据库的密码都忘了,折腾了下(关于修改centeros7系统root密码后面再说)。
二、操作
1、mysql版本:8.0.0
2、sudo vi /etc/my.cnf修改配置,在文件中增加skip-grant-tables,用来跳过密码认证
[mysqld]
skip-grant-tables
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
3、重启mysql服务后,即可使用mysql -uroot登录,如果跟了-p,出现输入密码时直接回车即可跳过
4、将root密码置空
> update user set authentication_string = null where user = 'root';
> flush privileges;
5、exit或quit退出mysql
6、再将之前mysql配置文件增加的内容注释掉(注释:skip-grant-tables),并重启mysql服务
7、登录mysql后使用下面指令修改密码(注意:新密码要求需包括大写字母、小写字母、特殊字符,缺一不可。)
alter user 'root'@'localhost' identified with caching_sha2_password BY 'new passwd';
8、如此即可登录