MySQL Tillatelser Tutorial

MySQL gir tillatelser (privilegier) basert på nivået på drift av brukeren. Administrative rettigheter administrere driften av serveren. Database privilegier er spesifikke for databaser og objekter med i dem. Objekt privilegier gjelder tabeller, indekser, utsikt og lagrede rutiner i databasen. Disse rettighetene er gitt til en bruker med GRANT kommando og opphevet med REVOKE-kommandoen.

Privilegiene

MySQL referansen har en komplett liste over tilgjengelige privilegier. Noen av de mer vanlige rettighetene er:

ALL privilegium gir en bruker hele settet med privilegier tilgjengelig på et gitt privilegium nivå. På globalt nivå, har brukeren komplett sett av privilegier tilgjengelig. Ved bordet nivå, har brukeren bare tabellnivå privilegier.

CREATE privilegium lar brukeren opprette nye databaser og tabeller.

DROP privilegium tillater brukeren å fjerne eksisterende databaser og tabeller.

EXECUTE-rettigheten lar brukeren utføre lagrede rutiner.

INSERT privilegium lar brukeren sette inn poster eller data i en tabell.

SELECT privilegium tillater brukeren å bruke SELECT-setningen til å hente data fra tabeller.

Showet DATABASE privilegium lar brukeren se databasenavn med showet DATABASE uttalelse.

Nedstengningen privilegium lar brukeren shutdown databasen med "mysqladmin shutdown" kommandoen.

GRANT Command

Hvis du vil bruke GRANT-kommandoen, må du ha de rettighetene du ønsker å gi til en annen bruker, og må ha GRANT OPTION privilegium. En typisk GRANT utsagn er:

Gi alle rettigheter PÅ TO 'bruker' @ '%' WITH GRANT OPTION.;

Denne uttalelsen sier å gi "alle rettigheter" på globalt nivå til brukeren "mysql" på alle verter med "GRANT OPTION."

Hvis du ønsker for brukeren å bare ha privilegier i en enkelt database, vil du bruke "database. *" Syntaks, hvor "database" er navnet på databasen. For eksempel:

GRANT SELECT, INSERT på database. * Å "bruker" @ hostname "

Slik gir bare bord privilegier, angir tabellen med "database.table" syntaks, for eksempel:

GRANT ALL ON database.table TO 'bruker' @ 'vertsnavn';

Opphev kommandoen

I likhet med GRANT kommandoen, må du ha de rettighetene du ønsker å tilbakekalle fra brukeren sammen med GRANT OPTION privilegium. For å tilbakekalle alle privilegier fra en bruker syntaksen vil være:

Tilbakekall alle privilegier, GRANT OPTION Fra «bruker»

Andre REVOKE har samme syntaks som GRANT uttalelse. For eksempel, for å ta innsatsen rettigheter på en database for en bruker, vil uttalelsen være:

REVOKE SETT PÅ database. * FROM 'user'

Du kan sjekke at rettighetene er gitt eller opphevet riktig med "VIS tilskudd til" bruker "," statement.