Hvordan til å angre root-kontoen for MySQL

Hvordan til å angre root-kontoen for MySQL


Hvis du noen gang har låst nøklene i en bil, er du allerede kjent med den synkende følelsen du får etter å ha innsett at du har slettet en brukerkonto kritisk til å administrere en MySQL database server. Ved konvensjonen, er MySQL super-bruker som heter "root" og har krefter til å legge til og endre andre kontoer, opprette og slette databaser og utføre slike ledelsesfunksjoner som avslutting av tjener.

MySQL masse informasjon om brukerkontoer inn i minnet ved oppstart. Hvis du ved et uhell sletter en "root" kontoen fra brukeren tabellen i databasen, vil oppgangen tilnærmingen avhenger av hvorvidt disse legitimasjon er sill i minnet.

Bruksanvisning

Root legitimasjon er fortsatt Bufret

1 Utfør innlogging kommandoen for "mysql" skjerm verktøyet på Linux eller Windows ledetekst:

mysql --user = root @ localhost --password = mypass

Du vil erstatte "mypass" med passord for "root" kontoen via "localhost".

Hvis du er i stand til å koble til, forbli innlogget til "mysql" verktøyet og gå videre til trinn 2. Hvis ikke, gå til "Root konto ikke lenger Bufret."

2 Skriv inn følgende SQL kommando mens de fortsatt er logget på "mysql" utility:

INSERT INTO mysql.user (Host, Bruker, passord) VERDIER ( 'localhost', 'root', PASSORD ( 'mypass'));

Dette skaper en "root" bruker med et passord som matcher din tekst for "mypass." Anførselstegn er nødvendig, men kapitalisering av SQL-kommandoer er valgfritt.

3 Skriv inn følgende SQL-kommando:

Gi alle rettigheter PÅ 'root' @ 'localhost' WITH GRANT

OPTION.;

Dette vil tildele alle rettigheter til den nye kontoen.

Root-kontoen ikke lenger Bufret

4 Stopp MySQL server.

På en Linux-system med en mysql start / stopp script, er dette vanligvis gjort som systemadministrator ved å skrive inn en kommando som:

/etc/rc.d/init.d/mysql stoppe

På Windows-systemer, velg Kontrollpanel fra Start-menyen og åpne Administrative verktøy mapper. Dobbeltklikk på ikonet Tjenester og bla gjennom listen for å finne "MySQL" entry. Høyreklikk på den og velg "Stopp" på pop-up menyen.

5 Åpne et redigeringsprogram for ren tekst og skriv inn følgende SQL-kommandoer:

INSERT INTO mysql.user (Host, Bruker, passord) VERDIER ( 'localhost', 'root', PASSORD ( 'mypass'));

Gi alle rettigheter PÅ 'root' @ 'localhost' WITH GRANT

OPTION.;

FLUSH bordet;

Igjen, "mypass" vil være passordet du foretrekker for din "root" kontoen. Lagre tekstfilen. I dette eksemplet blir filnavnet "root.sql" brukt.

6 Skriv denne kommandoen på Linux-systemer for å starte MySQL server (unngå den vanlige start / stopp script) og tvinge den til å behandle kommandoer i tekstfilen:

safe_mysqld --init-file = root.sql

I Windows er kommandoen:

mysqld-nt --init-file = root.sql

Du må kanskje gi den fullstendige banen til "safe_mysqld" eller "mysqld-nt", som med "root.sql."

7 Slå av serveren igjen. Nå kan du utføre "mysqladmin" -verktøyet som den nye "root" bruker:

mysqladmin nedleggelse --user = root --password = mypass

Du må kanskje inkludere hele banen til "mysqladmin" kjørbar på systemet ditt. Det du skriver i stedet for "mypass" ovenfor ville være passordet du skrev inn når du oppretter "root.sql" fil.

8 Start MySQL server som du vanligvis gjør for vanlig bruk i produksjon.