Ricerca nel sito web

Come reimpostare la password di root in MySQL 8.0


Nello sfortunato caso in cui dimentichi o perdi la password root di MySQL, avrai sicuramente bisogno di un modo per recuperarla in qualche modo. Ciò che dobbiamo sapere è che la password è memorizzata nella tabella degli utenti. Ciò significa che dobbiamo trovare un modo per aggirare l'autenticazione MySQL, in modo da poter aggiornare il record della password.

Fortunatamente è facile da ottenere e questo tutorial ti guiderà attraverso il processo di recupero o reimpostazione della password di root nella versione MySQL 8.0.

Secondo la documentazione MySQL, esistono due modi per reimpostare la password MySQL di root. Esamineremo entrambi.

Reimposta la password di root MySQL utilizzando –init-file

Uno dei modi per reimpostare la password di root è creare un file locale e quindi avviare il servizio MySQL utilizzando l'opzione --init-file come mostrato.

vim /home/user/init-file.txt

È importante assicurarsi che il file sia leggibile dall'utente mysql. All'interno di quel file incolla quanto segue:

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';

In alto cambia "new_password" con la password che desideri utilizzare.

Ora assicurati che il servizio MySQL sia interrotto. Puoi fare quanto segue:

systemctl stop mysqld.service     # for distros using systemd 
/etc/init.d/mysqld stop           # for distros using init

Quindi esegui quanto segue:

mysqld --user=mysql --init-file=/home/user/init-file.txt --console

Questo avvierà il servizio MySQL e durante il processo eseguirà il file init che hai creato e quindi la password per l'utente root verrà aggiornata. Assicurati di eliminare il file una volta reimpostata la password.

Assicurati di arrestare il server e quindi avviarlo normalmente.

systemctl stop mysqld.service        # for distros using systemd 
systemctl restart mysqld.service     # for distros using systemd 

/etc/init.d/mysqld stop              # for distros using init
/etc/init.d/mysqld restart           # for distros using init

Ora dovresti essere in grado di connetterti al server MySQL come root utilizzando la nuova password.

mysql -u root -p

Reimposta la password root di MySQL utilizzando –skip-grant-tables

La seconda opzione che abbiamo è avviare il servizio MySQL con l'opzione --skip-grant-tables. Questo è meno sicuro poiché mentre il servizio viene avviato in questo modo, tutti gli utenti possono connettersi senza password.

Se il server viene avviato --skip-grant-tables, l'opzione per --skip-networking viene attivata automaticamente in modo che le connessioni remote non siano disponibili.

Innanzitutto assicurati che il servizio MySQL sia interrotto.

systemctl stop mysqld.service     # for distros using systemd 
/etc/init.d/mysqld stop           # for distros using init

Quindi avvia il servizio con la seguente opzione.

mysqld --skip-grant-tables --user=mysql &

Quindi, puoi connetterti al server mysql semplicemente eseguendo.

mysql

Poiché la gestione dell'account è disabilitata quando il servizio viene avviato con l'opzione --skip-grant-tables, dovremo ricaricare le sovvenzioni. In questo modo potremo modificare la password in seguito:

FLUSH PRIVILEGES;

Ora puoi eseguire la seguente query per aggiornare la password. Assicurati di cambiare "new_password" con la password effettiva che desideri utilizzare.

ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_passowrd';

Ora ferma il server MySQL e avvialo normalmente.

systemctl stop mysqld.service        # for distros using systemd 
systemctl restart mysqld.service     # for distros using systemd 

/etc/init.d/mysqld stop              # for distros using init
/etc/init.d/mysqld restart           # for distros using init

Dovresti essere in grado di connetterti con la tua nuova password.

mysql -u root -p

Potrebbe interessarti anche leggere questi utili articoli relativi a MySQL.

  1. Come installare MySQL 8 in CentOS, RHEL e Fedora
  2. 15 utili suggerimenti per la regolazione e l'ottimizzazione delle prestazioni di MySQL
  3. 12 pratiche di sicurezza MySQL per Linux
  4. 4 utili strumenti a riga di comando per monitorare le prestazioni di MySQL
  5. Comandi di amministrazione del database MySQL
Conclusione

In questo articolo hai imparato come reimpostare la password di root persa per il server MySQL 8.0. Spero che il processo sia stato facile.