Usando questa guida, scoprirai tre metodi per risolvere questo errore."
Cosa significa questo errore?
Il modo migliore per capire questo errore è di scomporlo in singoli componenti. Questo errore si verifica quando si tenta di accedere alla tua istanza MySQL sulla macchina locale, quindi LocalHost.'
Un esempio è come mostrato:
$ mysql -u root -pI componenti dell'errore sono i seguenti:
Nota: il primo %s nel messaggio di errore si riferisce al nome utente, mentre il secondo si riferisce all'host.
Soluzione 1: sudo in mysql
Il primo e più comune metodo per risolvere questo errore è sudo nell'istanza mysql e impostare l'auth_plugin su mysql_native_password.
Apri il tuo terminale ed esegui:
$ sudo mysqlImmettere la password per l'account e procedere.
Quindi, modifica l'auth_plugin e imposta una nuova password per l'account root come mostrato:
Altera l'utente 'root@localhost' identificato con mysql-native_password mediante 'password';La modifica del plug -in di autenticazione ti consentirà di accedere al server.
Successivamente, scaricare i privilegi per aggiornare le tabelle delle sovvenzioni:
Privilegi a filo;Infine, esci dal terminale e prova il tuo accesso:
$ mysql -u root -pSoluzione 2- Modifica manualmente il file di configurazione
Se l'errore persiste, potrebbe essere necessario modificare il file di configurazione MySQL. Nella maggior parte dei casi, è sotto il nome mio.CNF nelle directory /etc o /etc /mysql.
Individua questo file nella cartella di installazione MySQL per gli utenti Windows e Mac.
Se il file non esiste, crealo.
Apri il file con il tuo editor di testo e individua il blocco mysqld.
$ nano/etc/mysql/mio.CnfSotto il blocco [mysqld], aggiungi la seguente voce.
saltare i tavoli da rangoChiudi e salva il file.
Successivamente, riavvia il server MySQL e accedi.
$ sudo servizio mysql riavvioUna volta effettuato l'accesso, scaricare i privilegi e impostare una nuova password:
Privilegi a filo;Assicurati di sostituire il comando sopra con una password sicura.
Una volta completato, modifica il mio.file CNF e rimuovere la voce che abbiamo aggiunto in precedenza.
Riavvia il server MySQL e accedi con la tua nuova password.
Soluzione 3 - Avviare MySQL in modalità provvisoria
MySQL ti fornisce l'utilità MySQLD_SAFE per l'avvio del server MySQL. Questa utilità ci consente di specificare funzionalità sicure all'avvio e al riavvio del server per diagnosticare errori.
Inizia interrompendo il server MySQL.
$ sudo servizio mysql stopSuccessivamente, avvia MySQL senza autenticazione come;
$ mysqld_safe--skip-Grant-tables &Il comando avvia il server in background come lavoro.
Una volta che il demone è in esecuzione (con autenticazione disabilitata), apri un nuovo terminale ed esegui:
$ mysql -u root -pIl comando sopra dovrebbe consentire di accedere senza una password.
Una volta effettuato l'accesso, scaricare i privilegi e impostare una nuova password come:
Privilegi a filo;Chiudi la sessione e riavvia mysql.
Ora accedi al tuo server con la tua nuova password.
Chiusura
In questo articolo, abbiamo coperto tre metodi principali per risolvere il
"MysQL Access Negato per l'utente 'root@localhost'" Errore.Speriamo che questo tutorial ti abbia aiutato a risolvere questo errore.