Puoi usare i file init. Consulta la documentazione ufficiale di MySQL su Come reimpostare la password di root (compresi commenti per soluzioni alternative).
Quindi, fondamentalmente usando i file init, puoi aggiungere qualsiasi query SQL necessaria per correggere il tuo accesso (come GRAND
, CREATE
, FLUSH PRIVILEGES
, ecc.) nel file init (qualsiasi file).
Ecco il mio esempio di recupero dell'account di root:
echo "CREATE USER 'root'@'localhost' IDENTIFIED BY 'root';" > your_init_file.sql
echo "GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' WITH GRANT OPTION;" >> your_init_file.sql
echo "FLUSH PRIVILEGES;" >> your_init_file.sql
e dopo aver creato il tuo file, puoi eseguire:
killall mysqld
mysqld_safe --init-file=$PWD/your_init_file.sql
quindi per verificare se ha funzionato, premi Ctrl+Z e digita:bg
per eseguire il processo in primo piano in background, quindi verifica il tuo accesso tramite:
mysql -u root -proot
mysql> show grants;
+-------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' |
Vedi anche:
- Nessuna password, nessun problema a Tutto MySQL
- Bug #28331:messaggio di errore non chiaro quando CREATE USER non riesce a causa di una chiave duplicata