我用到的数据库是mysql8
环境是centos7
- 关闭mysql服务
service mysqld stop
- 修改mysql为免密码登陆
vi /etc/my.cof
在最下面加上skip-grant-tables
- 启动mysql服务,并登陆
service mysqld start
mysql -u root -p密码为空,直接回车
- 查看mysql的用户及密码
use mysql;
select host, user, authentication_string, plugin from user;将authentication_string字段设置为空,就是把密码设置为空
update user set authentication_string=‘‘ where user=‘root‘;
- 退出mysql,找到(vi)刚才在
/etc/mycnf
最后加的哪一行(dd)删除 - 重启mysql服务,(因为此时是免密码的模式,所以要重启下)
service mysqld stop
service mysqld start
- 再次使用root登陆,此时不是免密码登陆的而是密码为空
mysql -u root -p
passwd 直接回车就可以登陆
- 修改root用户的密码
ALTER user ‘root‘@‘localhost‘ IDENTIFIED BY ‘Mynameis7#‘
- 设置成功,此时使用mysql -u root -p ,然后输入密码就可以登陆,保险起见可以重启一下数据库。