Poichè ieri ho iniziato la settimana con un post leggerino, oggi presumo che abbiate sintonizzato neuroni e sinapsi e passo ad argomento più spinto se così vogliamo dire. Nonostante abbiate preso tutte le precauzioni del caso avete perso/dimenticato la vostra passaword di root del vostro database MySQL. Non ve la sto tirando (alzate ste mani dai bassifondi suvvia!), ma non è un’ipotesi così remota ed impossibile. Nel caso sia davvero successo, non sentitevi fuori per sempre dal vostro database server perchè a tutto c’è un rimedio. Questo articolo (suddiviso in 2 parti) vi suggerisce come recuperare il controllo del vostro prezioso DB in casi drammatici come questo.
Iniziamo con la prima parte : MySQL su Windows
Loggatevi come Administrator e ‘killate’, se in stato ‘running’ il server MySQL. Per fare questo vi occorre il Windows Services Manager.
Allora cliccate sullo Start Menu->Pannello di Controllo->Strumenti di Amministrazione->Servizi. Stoppare il servizio MySQL server. Logicamente se non presente nella lista vuol dire che MySQL non è attivo come servizio. In tal caso accedete al Task Manager con la combinazione Ctrl+Alt+Canc e killate direttamente il processo MySQL. Ora, a server spento, potete forzare il cambio password senza problemi usando una combinazione di comandi UPDATE e FLUSH.
Aprite il vostro Text Editor e create un nuovo file. Scrivete all’interno questo testo rimpiazzando “NewMySQLPassword” con la nuova password:
UPDATE mysql.user SET Password=PASSWORD(’NewMySQLPassword’) WHERE User=’root’;
FLUSH PRIVILEGES;
Salvate questo testo come C:mysql_reset.txt
Ora occorre effettuare lo start di MySQL server passando questo file come parametro di configurazione per fargli digerire la nuova password. Andate su Start Menu->Esegui e quindi scrivete cmd per entrare sul prompt del DOS da cui lanciate il seguente comando:
C:mysqlbinmysqld-nt –init-file=C:mysql_reset.txt
Appena il server è in stato attivo cancellate il file C:mysql_reset.txt precedentemente creato e ora la password di root di MySQL è stata resettata ed è quella nuova da voi scelta. Effettuate un nuovo restart del MySQL server da Windows Services Manager e…..il DB è tutto vostro!
Per dubbi/chiarimenti/perplessità/insulti ci sono i commenti
Per Linux ci vediamo prossimamente con la seconda parte.


