sql >> Database teknologi >  >> RDS >> Mysql

Ude af stand til at få adgang til MySql root-bruger, selv efter at have indstillet adgangskoden gennem sikker tilstand i linux-terminalen

Gå ind som før i trin 2, det vil sige genstart mysql-dæmonen i fejlsikret tilstand.

Udsend kommandoen

select user,host,password from mysql.user where user='root';

klip og indsæt output i en teksteditor til sammenligning (af de hash-kodede kodeordskolonneværdier) før og efter det følgende.

Læg mærke til host for hver række kolonne. I det følgende eksempel antager jeg, at jeg har to rækker. En række har % som vært har den næste localhost

For hver række, der havde en host variation, vil du udstede en kommando. Så i mit eksempel ovenfor, ville jeg udstede 2 kommandoer i alt, såsom:

SET PASSWORD FOR 'root'@'%' = PASSWORD('MyNewPassword');
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPassword');

køre

select user,host,password from mysql.user where user='root';

klip og indsæt det i teksteditor. Bemærk ændringen af ​​kodeords-hasherne.

Sluk dæmonen fra sikker tilstand, og genstart normalt.

Prøv at logge ind som root med MyNewPassword

Her er et par links. Den til INDSTIL ADGANGSKODE-syntaks , og et ofte næste trin for GRANT-syntaks .

For det snævre omfang af dette spørgsmål, det vil sige at logge ind, ville tilskuddene ikke være nødvendige. Men uden ordentlige bevillinger til databaser, ville man være sandboxed, ikke i stand til at gøre meget, andet end simple kommandoer som select now();

Jeg foreslår ikke, at din root-bruger ikke har privilegier, når først adgangskoden er ændret. Tilskuddene er nødvendige for, at normale brugere kan være sikre.




  1. mysql-tabel låst efter php-nedbrud

  2. WHERE_IN-forespørgsel med en sammensat nøgle?

  3. MySQL-opdateringstabel baseret på en anden tabelværdi

  4. Python-modulet cx_Oracle-modulet kunne ikke findes