问题
Ubuntu2204 通过 apt 安装 mysql-server8.0.36 后,数次修改密码不生效,仍可无密码登录。
解决
mysql_native_password 是MySQL 5.7及之前版本使用的默认身份验证插件。在MySQL 8.0及更高版本中,默认的身份验证插件 caching_sha2_password。
使用如下命令修改密码
alter user root@'localhost' identified with mysql_native_password by 'Admin.123';
[root@mysql mysql]#mysql
mysql> select user();
+----------------+
| user() |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.01 sec)mysql> alter user root@'localhost' identified with mysql_native_password by 'Admin.123';
Query OK, 0 rows affected (0.00 sec)mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)mysql> quit
Bye无密码登录失败
[root@mysql mysql]#mysql
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)使用密码登录成功
[root@mysql mysql]#mysql -uroot -pAdmin.123