@mohammed, isso geralmente é atribuído ao plugin de autenticação que seu banco de dados mysql está usando.
Por padrão e por algum motivo, o plugin padrão do mysql 8 é auth_socket. Na maioria das vezes, os aplicativos esperam fazer login em seu banco de dados usando uma senha .
Se você ainda não alterou seu plugin de autenticação padrão do mysql, você pode fazê-lo:
1. Faça login como root no mysql
2. Execute este comando sql:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password
BY 'password';
Substitua 'senha' pela sua senha de root. Caso seu aplicativo não faça login em seu banco de dados com o usuário root, substitua o usuário 'root' no comando acima pelo usuário que seu aplicativo usa.
Oceano digital expõe um pouco mais sobre isso aqui Instalando o MySQL