sql >> Database >  >> RDS >> Mysql

MySQL:geen toegang tot root-account

U kunt de init-bestanden gebruiken. Raadpleeg de officiële MySQL-documentatie op Het root-wachtwoord opnieuw instellen (inclusief opmerkingen voor alternatieve oplossingen).

Dus eigenlijk met behulp van init-bestanden, kunt u alle SQL-query's toevoegen die u nodig hebt om uw toegang te herstellen (zoals GRAND , CREATE , FLUSH PRIVILEGES , etc.) naar init-bestand (elk bestand).

Hier is mijn voorbeeld van het herstellen van een root-account:

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

en nadat u uw bestand heeft gemaakt, kunt u het volgende uitvoeren:

killall mysqld
mysqld_safe --init-file=$PWD/your_init_file.sql

om te controleren of dit werkte, drukt u op Ctrl+Z en typ:bg om het proces van de voorgrond naar de achtergrond te laten lopen, verifieer vervolgens uw toegang door:

mysql -u root -proot
mysql> show grants;
+-------------------------------------------------------------------------------------------------------------+
| Grants for [email protected]                                                                                   |
+-------------------------------------------------------------------------------------------------------------+
| GRANT USAGE ON *.* TO 'root'@'localhost' IDENTIFIED BY PASSWORD '*81F5E21E35407D884A6CD4A731AEBFB6AF209E1B' |

Zie ook:



  1. Sql Server-trigger voegt waarden van nieuwe rij in een andere tabel in

  2. MySQL zoeken en vervangen syntaxisfout

  3. OPENJSON "Onjuiste syntaxis in de buurt van het trefwoord 'met'." in SQL Server (OPGELOST)

  4. Waarom zijn UNION-query's zo traag in MySQL?