@mohammed, questo è solitamente attribuito al plug-in di autenticazione utilizzato dal tuo database mysql.
Per impostazione predefinita e per qualche motivo, il plug-in predefinito di mysql 8 è auth_socket. Nella maggior parte dei casi, le applicazioni si aspettano di accedere al tuo database utilizzando una password .
Se non hai ancora modificato il plug-in di autenticazione predefinito di mysql, puoi farlo:
1. Accedi come root a mysql
2. Esegui questo comando sql:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password
BY 'password';
Sostituisci "password" con la tua password di root. Nel caso in cui l'applicazione non acceda al database con l'utente root, sostituire l'utente 'root' nel comando precedente con l'utente utilizzato dall'applicazione.
Digital Ocean ne espone di più qui Installazione di Mysql