Reimpostazione della password di root MySQL in 3 semplici passaggi
Hai dimenticato la password di root del tuo server MySQL? Nessun problema. Ecco come ripristinarlo rapidamente e facilmente.
Se hai dimenticato la password del tuo database MySQL, non temere! Reimpostare la password di root è un processo semplice che può essere eseguito in tre semplici passaggi. Quindi, che tu sia un principiante o un utente MySQL esperto, ti mostrerò come riprendere il controllo del tuo server database.
Questa guida mostra due diverse tecniche per reimpostare la password dell'utente root MySQL. Qualunque dei due sceglierai ti darà il risultato desiderato.
Inoltre, le istruzioni si applicano interamente al database MariaDB, una popolare alternativa a MySQL, e, in alcuni casi, forniscono funzionalità aggiuntive non disponibili in MySQL. Potete leggere la nostra guida approfondita sull’argomento qui.
Reimpostare una password root MySQL: il modo più veloce
Per completare i passaggi seguenti, è necessario disporre di un account utente locale sul server su cui viene eseguito MySQL che disponga delle autorizzazioni sudo
per eseguire comandi privilegiati.
Passaggio 1: arresta e avvia MySQL Server senza password
Arresta il servizio MySQL.
sudo systemctl stop mysqld
Quindi, come mostrato di seguito, esegui un'istanza temporanea del server MySQL.
sudo -u mysql mysqld --skip-grant-tables &
Lasciami spiegare. Quando il server viene avviato con l'opzione --skip-grant-tables
, non legge le tabelle di concessione né applica alcun controllo di accesso. In altre parole, gli utenti possono accedervi senza password.
Ora puoi accedere al server MySQL come utente root, senza che sia richiesta alcuna password.
mysql -u root
Passaggio 2: reimpostare una password root MySQL
Ricaricare prima i privilegi attuali.
FLUSH PRIVILEGES;
Quindi, reimposta la password root di MySQL utilizzando la seguente query. Per prima cosa, ovviamente, sostituisci “MyNewPassword” con quella richiesta.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
Infine, ricarica i privilegi ancora una volta ed esci.
FLUSH PRIVILEGES;
quit
Se vuoi saperne di più su come aggiungere utenti a MySQL e fornire loro privilegi, ecco la nostra guida.
Passaggio 3: riavvia e connettiti al server MySQL
Ora che abbiamo cambiato la password, devi fermare il server MySQL temporaneamente in esecuzione trovando il suo numero di processo e terminandolo. Puoi farlo facilmente con il seguente comando:
ps auxw | grep '\-\-skip-grant-tables' | tail -n 1 | awk '{ print $2 }' | sudo xargs kill
Quindi riavvia il server MySQL e accedi con la nuova password.
sudo systemctl start mysqld
mysql -u root -p
Congratulazioni! Il server MySQL è ora di nuovo sotto il tuo controllo.
Reimposta la password di root di MySQL tramite un file di inizializzazione
Per completare i passaggi seguenti, è necessario disporre di un account utente locale sul server su cui viene eseguito MySQL che disponga delle autorizzazioni sudo
per eseguire comandi privilegiati.
Passaggio 1: passa all'utente del sistema mysql e arresta il server MySQL
Per completare correttamente i passaggi seguenti, è necessario passare all'account utente di sistema che esegue il server MySQL. Solitamente si tratta dell'account di sistema con il nome utente mysql
. Per passare ad esso, esegui quanto segue:
sudo -u mysql /bin/bash
Puoi utilizzare il comando whoami
per assicurarti di lavorare con l'utente corretto.
Quindi, interrompi il server MySQL passando il comando kill
al percorso completo del file PID che contiene il numero del processo con cui è stato avviato. Se non sei sicuro di dove si trovi questo file, puoi individuarlo rapidamente eseguendo quanto segue:
mysqld --print-defaults | tr " " "\n" | grep pid | tail -n 1
Infine, arresta il server MySQL.
kill `cat /run/mysqld/mysqld.pid`
Passaggio 2: crea un file di reimpostazione della password MySQL
Utilizzando il tuo editor di testo preferito nella directory /tmp
, crea un file di testo denominato "mysql-init.txt", con una singola riga contenente la query di assegnazione della password.
vim /tmp/<em>mysql-init.txt</em>
Inserisci la riga seguente, assicurandoti di cambiare la password con quella che desideri utilizzare.
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPassword';
Salvare il file ed uscire.
Passaggio 3: avviare MySQL Server
Avvia il server MySQL come mostrato di seguito, con l'opzione --init-file
impostata sul percorso completo del file appena creato.
mysqld --init-file=/tmp/mysql-init.txt &
Questo è tutto. La password dell'utente root di MySQL è stata modificata e ora puoi accedere come root con la password specificata nel file sopra.
mysql -u root -p
Ora puoi eliminare in sicurezza il file "/tmp/mysql-init.txt". Non ne hai più bisogno.
Conclusione
Come puoi vedere, reimpostare la password root di MySQL è un processo relativamente semplice che può essere eseguito in tre passaggi. Tuttavia, è essenziale notare che la reimpostazione della password di root dovrebbe essere eseguita solo come ultima risorsa, poiché può potenzialmente esporre il database a rischi per la sicurezza.
Pertanto, è sempre una buona idea gestire con attenzione la propria password e tenerla al sicuro per evitare di reimpostarla in futuro. Puoi trovare ulteriori informazioni nella documentazione ufficiale.
Se avete domande o feedback, sentitevi liberi di commentare.