- Accedi come root alla macchina Windows o simile a Unix (Unix, Linux o BSD) con il server MySQL.
- Arresta il server MySQL utilizzando uno dei seguenti comandi:
Linux:
/etc/rc.d/init.d/mysql stop
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh stop
- Apri lo script di avvio del server mysql (ad esempio mysql-server.sh o mysql che è il file eseguito per avviare o arrestare il server MySQL).
- AGGIUNGI –skip-grant-tables alla fine della riga che contiene mysqld_safe comando come parametro.
- Avvia il server MySQL con il seguente comando:
Linux:
/etc/rc.d/init.d/mysql start
FreeBSD:
/usr/local/etc/rc.d/mysql-server.sh start
- In alternativa, avvia direttamente il server MySQL e salta la modifica con il comando seguente (se stai usando questo passaggio, non è necessario modificare lo script di avvio di MySQL):
mysqld_safe --skip-grant-tables &
A seconda dell'ambiente del tuo percorso, potresti dover puntare alla directory corretta dove si trova invece mysqld_safe.
- Esegui i seguenti comandi per accedere come utente mysql e connetterti al database utente/autorizzazione mysql:
# mysql -u root mysql
- Esegui le query di aggiornamento per modificare la password MySQL:
mysql> UPDATE user SET Password=PASSWORD('newrootpassword') WHERE User='root'; mysql> FLUSH PRIVILEGES;
Nota:sostituisci newrootpassword con la nuova password di root per il server MySQL. Flush Privileges è necessario per rendere immediatamente effettiva la modifica della password.
- Esci dal client del database mysql digitando exit .
- Arresta il server MySQL con i comandi elencati al passaggio 2.
- Apri di nuovo la modifica dello script di avvio del server mysql nel passaggio 3 e RIMUOVERE le –skip-grant-tables parametro che è stato aggiunto.
- Avvia il server MySQL utilizzando il comando dal passaggio 5 o 6.
Per gli utenti Redhat Linux, utilizzare le seguenti istruzioni come utente root della macchina Redhat Linux:
- Interrompi il processo MySQL usando il comando:
# killall mysqld
- Avvia il server MySQL con le seguenti opzioni:
# /usr/libexec/mysqld -Sg --user=root &
- Avvia il client MySQL:
# mysql
Dovresti vedere il seguente messaggio:
Benvenuti nel monitor MySQL. I comandi terminano con; o g.
Il tuo ID di connessione MySQL è 1 alla versione del server:3.xx.xxDigita "aiuto" o "h" per ricevere aiuto. Digita "c" per cancellare il buffer.
mysql>
- Usa database mysql:
mysql> USE mysql
Dovresti vedere il seguente messaggio:
Lettura delle informazioni sulla tabella per il completamento dei nomi di tabelle e colonne
Puoi disattivare questa funzione per ottenere un avvio più rapido con -ADatabase cambiato
- Quindi, aggiorna la password per l'utente root con il seguente comando:
UPDATE user SET password=password("newpassword") WHERE user="root";
Sostituisci nuovapassword con la password desiderata. Dovresti vedere il seguente messaggio:
Query OK, 2 righe interessate (0,03 sec)
Righe abbinate:2 Modificate:2 Avvisi:0Le righe interessate potrebbero essere diverse, ma Query OK dovrebbe essere presente.
- Svuota i privilegi del database per ricaricarlo in modo da rendere effettive le modifiche:
mysql> flush privileges;
Dovresti ottenere il seguente risultato:
Query OK, 0 righe interessate (0,02 sec)
- Esci dal client MySQL digitando exit .
- Uccidi il processo del server MySQL digitando killall mysqld .
- Quindi riavvia MySQL:
/etc/init.d/mysqld start