MySQL giver tilladelser ( indendørs-/udendørsfaciliteter) på grundlag af omfanget af driften af brugeren. Administratorrettigheder styre driften af serveren. Database privilegier er specifikke til databaserne og de objekter med i dem. Object Rettighederne gælder for tabeller , indekser , synspunkter og lagrede rutiner i databasen . Disse privilegier er givet til en bruger med GRANT kommando og tilbagekaldes med REVOKE kommando. De privilegier
MySQL Reference Manual har en komplet liste over tilgængelige privilegier. Et par af de mere almindelige privilegier er : Hej
ALL privilegium giver en bruger det samlede sæt af privilegier til rådighed på et givet privilegium niveau . På globalt plan har brugeren det komplette sæt af privilegier til rådighed. Ved bordet niveau har brugeren kun tabelniveau privilegier.
CREATE privilegium tillader brugeren at oprette nye databaser og tabeller.
DROP privilegium tillader brugeren at fjerne eksisterende databaser og tabeller.
EXECUTE privilegium tillader en bruger at udføre lagrede rutiner.
INSERT privilegium tillader brugeren at indsætte poster eller data i en tabel .
SELECT privilegium tillader brugeren til at bruge SELECT-sætning til at hente data fra tabeller.
SHOW dATABASE privilegium tillader brugeren at se databasenavne med showet dATABASE erklæring.
STANDSNINGS privilegium tillader brugeren at nedlukning af databasen med " mysqladmin shutdown " kommando .
GRANT Command
For at bruge GRANT kommando , skal du have de privilegier , du ønsker at give til en anden bruger og skal have GRANT OPTION privilegium. En typisk GRANT erklæring er : Hej
give alle privilegier på * * TO 'bruger' @ '%' WITH GRANT OPTION ,
Denne erklæring siger at give " alle privilegier, " på globalt plan . til brugeren " mysql " på alle værter med " GRANT OPTION . "
p Hvis du ønsker at brugeren kun at have privilegier på en enkelt database , vil du bruge " databasen. * " syntaks , hvor " databasen " er navnet på databasen . For eksempel: .
GRANT SELECT , om databasen INSERT * TO 'bruger' @ ' hostname «
For at tildele eneste tabel privilegier , angive tabellen med" database.table " syntaks , såsom : Hej
give alle ON database.table TO 'bruger' @ ' hostname «
Tilbagekald kommando
Ligesom GRANT kommando , skal du have de privilegier , du ønsker at tilbagekalde fra brugeren sammen med GRANT OPTION privilegium. At tilbagekalde alle privilegier fra en bruger syntaksen ville være : Hej
TILBAGEKALDE privilegier , GIVE mulighed fra ' bruger';
Andre REVOKE har samme syntaks som GRANT erklæring. For eksempel for at fjerne indsatsen privilegier på en database for en bruger, vil redegørelsen blive : Hej
REVOKE INSERT ON database * FROM ' bruger';
p Du kan kontrollere, at privilegier har været. ydes eller tilbagekaldes korrekt med de "VIS TILSKUD tIL ' bruger'; " . erklæring