Dimenticare la password di root di MySQL può essere un’esperienza frustrante, soprattutto se avete bisogno di un accesso immediato per gestire i vostri database. Fortunatamente, la reimpostazione della password di root è una procedura semplice se si dispone di un accesso amministrativo al server. Questa guida vi guiderà attraverso i passi da seguire sia per i sistemi Linux che per quelli Windows.

Prerequisiti

Prima di procedere, assicuratevi di avere

  • Accesso amministrativo al sistema (privilegi di root o sudo)

  • Accesso alla shell o alla riga di comando (SSH o terminale)

Metodo 1: reimpostare la password di root di MySQL su Linux

Passo 1: Fermare il servizio MySQL

sudo systemctl stop mysql

Passo 2: Avviare MySQL in modalità sicura

Avviate MySQL senza autenticazione con password:

sudo mysqld_safe --skip-grant-tables &

Questo vi permetterà di accedere a MySQL senza password. Tenete presente che questa modalità non è sicura e deve essere utilizzata solo temporaneamente.

Passo 3: accedere a MySQL

mysql -u root

Passo 4: Cambiare la password di root

Eseguite i seguenti comandi all’interno della shell di MySQL:

PRIVILEGI DI FLUSH;
ALTER USER 'root'@'localhost' IDENTIFICATO DA 'YourNewStrongPassword';

Se si utilizza MySQL 5.7 o versioni precedenti, la sintassi può variare:

SET PASSWORD FOR 'root'@'localhost' = PASSWORD('YourNewStrongPassword');

Passo 5: Riavviare normalmente MySQL

sudo systemctl stop mysql
sudo systemctl start mysql

Ora dovreste essere in grado di accedere con la nuova password:

mysql -u root -p

Metodo 2: reimpostare la password di root su Windows

Passo 1: Arrestare il servizio MySQL

Aprite i Servizi (services.msc) e arrestate il servizio MySQL.

Passo 2: Creare uno script per la reimpostazione della password

Create un file di testo C:\mysql-init.txt con il seguente contenuto:

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

Passo 3: Avviare MySQL con lo script

Eseguite il seguente comando nel Prompt dei comandi (modificate i percorsi di conseguenza):

mysqld --init-file="C:\\\mysql-init.txt"

Dopo l’avvio e l’applicazione della modifica, arrestate MySQL e riavviatelo normalmente attraverso il gestore dei servizi.

Eliminate il file mysql-init.txt dopo il ripristino per evitare rischi per la sicurezza.

Suggerimenti per una gestione sicura delle password

  • Utilizzate sempre una password forte e unica per l’account root di MySQL.

  • Considerate la possibilità di disabilitare l’accesso remoto per l’utente root per migliorare la sicurezza.

  • Utilizzate un gestore di password per memorizzare le credenziali in modo sicuro.

Conclusione

La reimpostazione della password di root di MySQL è un processo gestibile, ma va fatto con attenzione per evitare di introdurre rischi per la sicurezza. Se vi capita spesso di aver bisogno dell’accesso root, prendete in considerazione la creazione di un utente MySQL di livello amministratore separato per ridurre i rischi e mantenere una migliore igiene di sicurezza.