Ho provato molte guide ma quasi tutte non si adattavano alla mia configurazione e mi davano errori. Questo tutorial mostrerò come reimpostare (o cambiare) una password di root di MySQL nel caso in cui l’hai dimenticata. Funziona per me, spero sia di ispirazione.

Talvolta, per qualche strano incrocio MySQL, si riavvia dopo il comando di stop:

sudo service mysql stop

Dovrebbe interrompere il demone, ma verifichiamo se è realmente così:

lsof -i:3306

Mostra quale demone utilizza la porta 3306, che è quella standard di MySQL.

Qualora ci sia un processo attivo occorre killare il processo (annotate il PID) con il comando kill -9 PID:

kill -9 815

A questo punto procediamo a riavviare MySQL in SAFE mode:

sudo mysqld_safe --skip-grant-tables --skip-networking

  • accediamo a MySQL senza la password:

mysql -uroot mysql

  • modifichiamo la password di root:

UPDATE mysql.user SET authentication_string=PASSWORD('nuovapassword'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';

Ricorda di modificare la stringa “nuovapassword” 😉

  • aggiorniamo i permessi:

FLUSH PRIVILEGES;

  • terminiamo il processo in SAFE mode

sudo pkill mysqld

  • e riavviamo il server MySQL:

sudo service mysql start

Nella speranza di essere stato di aiuto aspetto eventuali commenti.