Eu tive o mesmo problema, mas usando
mysql_native_password não foi possível com PHP7.4-mysql-pdo , mesmo na configuração em my.cnf como funcionou em PHP7.3-mysql-pdo . Tive que alterar todos os usuários com esta consulta:
ALTER USER 'username'@'localhost' IDENTIFIED WITH caching_sha2_password BY 'password';
onde
username é o nome de usuário do banco de dados e a password é a senha do usuário do banco de dados.