MMP,困扰5个小时的问题,终于在喝酒后解决。
MySQL5.7跨版本升级到MySQL8.0.21 最新版本。
通过免密钥登陆 --skip-grant-tables
update 修改完密码死活登陆不上。
ERROR 1045(28000) Access denied for user ‘root‘@‘localhost‘ (using password YES)
1)./mysqld_safe --defaults-file=/etc/my821.cnf -skip-grant-tables &
2) ./mysql
槽,将root密码清空成空格!!!!!!!!
mysql>update mysql.user set authentication_string=‘ ‘ where user=‘root ‘;
3) flush privileges
4) 正常启动
/mysqld_safe --defaults-file=/etc/my821.cnf &
5)空密码登陆
./mysql -uroot -p空格
6) 在正常登陆情况下 ,alter user ‘root‘@‘localhost‘ identified with mysql_native_password by ‘MyQ_123‘ ; flush privileges ;
7)再次登陆, ./mysql -uroot -pMyQ_123
原因是 :在MySQL 8.0中,caching_sha2_password
是默认的身份验证插件,而不是mysql_native_password 。
select host ,user , authentication_string,plugin from mysql.user where user=‘root‘ \G ;