Du kan bruge init-filerne. Se den officielle MySQL-dokumentation om Sådan nulstiller du root-adgangskoden (inklusive kommentarer til alternative løsninger).
Så grundlæggende ved at bruge init-filer, kan du tilføje alle SQL-forespørgsler, du har brug for til at rette din adgang (såsom GRAND
, CREATE
, FLUSH PRIVILEGES
, osv.) i init-fil (en hvilken som helst fil).
Her er mit eksempel på gendannelse af root-konto:
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
og efter du har oprettet din fil, kan du køre:
killall mysqld
mysqld_safe --init-file=$PWD/your_init_file.sql
tryk derefter på Ctrl+Z for at kontrollere, om dette virkede og skriv:bg
for at køre processen fra forgrunden til baggrunden, bekræft derefter din adgang ved at:
mysql -u root -proot
mysql> show grants;
+-------------------------------------------------------------------------------------------------------------+
| Grants for [email protected] |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' |
Se også:
- Ingen adgangskode – intet problem på Everything MySQL
- Bug #28331:Uklar fejlmeddelelse, når CREATE USER mislykkes på grund af duplikatnøgle