Se si desidera modificare la password dell’utente root di MySQL, ad esempio dopo aver installato MySQL con XAMPP, si possono utilizzare più metodi, in base alla conoscenza o meno della password corrente:
Indice dei contenuti
Modificare la password dell’utente root conoscendo l’attuale
- In questo caso è possibile accedere a http://localhost/phpmyadmin e cliccare sul tab “SQL”;
- inserire le seguenti istruzioni e cliccare sul bottone “esegui” (la modifica verrà applicata a tutti gli utenti root: root@localhost, root@::1 e root@127.0.0.1):
UPDATE `mysql`.`user` SET `Password` = PASSWORD('nuova_password') WHERE `User`='root'; FLUSH PRIVILEGES;
- riavviare il server MySQL.
- Il primo effetto della modifica sarà che phpMyAdmin non potrà più accedere al database (se utilizza allo scopo l’utente root); bisogna quindi modificare il file di configurazione di phpmyadmin “config.inc.php” (se MySQL è stato installato con XAMPP si troverà nella directory C:\xampp\phpMyAdmin\config.inc.php) .
Ricercare e modificare il parametro “password”:$cfg['Servers'][$i]['password'] = 'nuova_password';
- salvare il file e ricaricare la pagina di phpmyadmin.
Modificare la password dell’utente root se non si conosce l’attuale
In questo caso è necessario agire direttamente da linea di comando. Procedere come segue.
Con sistema operativo Windows:
- Fermare il server MySQL.
- Aprire una finestra di comando (ad esempio premendo contemporaneamente il tasto Start (in basso a sinistra nella tastiera) e il tasto R e poi scrivendo “cmd”, seguito da invio.
- Posizionarsi nella directory dov’è installato MySQL (C:\xampp\mysql\bin se si è installato MySQL con XAMPP) e avviare il server MySQL bypassando l’autenticazione. Allo scopo digitare il comando:
mysqld --skip-grant-tables
- Aprire una seconda finestra di comando, posizionarsi nella stessa directory e accedere come utente root tramite il comando:
mysql -u root
- attendere il prompt di risposta di MySQL, quindi impostare la nuova password inserendo (uno alla volta) gli stessi comandi visti in precedenza:
UPDATE `mysql`.`user` SET `Password` = PASSWORD('nuova_password') WHERE `User`='root'; FLUSH PRIVILEGES;
- attendere la risposta di MySQL, quindi uscire da MySQL:
exit
- Chiudere entrambe le finestre di comando e riavviare il server MySQL.
Con sistema operativo Linux (Ubuntu)
- Fermare il server MySQL.
- Aprire un terminale.
- Posizionarsi nella directory dov’è installato mysqld (/opt/lampp/sbin se si è installato MySQL con XAMPP) e avviare il server MySQL bypassando l’autenticazione. Allo scopo digitare il comando:
sudo ./mysqld --skip-grant-tables
- Aprire un secondo terminale, posizionarsi nella directory dov’è installato mysql (/opt/lampp/bin se si è installato MySQL con XAMPP) e accedere come utente root tramite il comando:
sudo ./mysql -u root
- attendere il prompt di risposta di MySQL, quindi impostare la nuova password inserendo (uno alla volta) gli stessi comandi visti in precedenza:
UPDATE `mysql`.`user` SET `Password` = PASSWORD('nuova_password') WHERE `User`='root'; FLUSH PRIVILEGES;
- attendere la risposta di MySQL, quindi uscire da MySQL:
exit
- Riavviare il server MySQL (ad esempio da pannello di controllo di XAMPP).
- Chiudere i due terminali.