CentOS8.1安装MySQL出现/var/log/mysqld.log文件未生成找不到初始密码的问题

安装完MySQL后,使用sudo grep 'temporary password' /var/log/mysqld.log查看初始密码,No such file or directory,找了很多方法修改密码都不能修改成功,最后找到一个简单粗暴的方法

1、创建一个新用户

CREATE USER 'root'@'%' IDENTIFIED BY '你的密码'; 

GRANT ALL ON *.* TO 'root'@'%'; 

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';

2、创建完成后刷新

FLUSH PRIVILEGES;

3、删除掉多余的没有密码的用户

select host,user,authentication_string from user;

确认查询出来的列表是存在两个user为root的用户,host分别为localhost和上面的新建的%,删除user为root,host为localhost的用户数据
delete from user where host='localhost' and user = 'root';

4、退出之后再重新使用密码登录

exit;

mysql -uroot -p

输入自己设置的密码即可登录
原文地址:https://www.cnblogs.com/shoose/p/13255154.html