MySQL Berechtigungen ( Privilegien ) auf der Ebene des Betriebs des Benutzers. Administratorrechte zu verwalten den Betrieb der Server. Database Privilegien sind spezifisch für die Datenbanken und die Objekte mit in ihnen. Object Rechte gelten für Tabellen, Indizes , Ansichten und gespeicherte Routinen innerhalb der Datenbank. Diese Berechtigungen werden für einen Benutzer mit dem GRANT-Befehl gegeben und Widerruf mit dem Befehl REVOKE . Die Vorrechte
Das MySQL Referenzhandbuch hat eine komplette Liste der verfügbaren Privilegien. Ein paar der häufigsten Privilegien sind:
ALL Privileg gewährt dem Anwender die gesamte Reihe von Privilegien zu einem bestimmten Berechtigungsstufe . Auf globaler Ebene hat der Anwender die komplette Reihe von Privilegien . Am Tisch Ebene , hat der Benutzer nur die Tabelle Privilegien .
Die CREATE -Berechtigung erlaubt es dem Benutzer, neue Datenbanken und Tabellen erstellen.
DROP Privileg ermöglicht dem Benutzer die vorhandenen Datenbanken zu entfernen und Tabellen .
Das Zugriffsrecht EXECUTE ermöglicht einem Benutzer, gespeicherte Routinen auszuführen.
Das Zugriffsrecht INSERT erlaubt dem Benutzer, Aufzeichnungen oder Daten in eine Tabelle einzufügen .
Die SELECT-Privileg erlaubt der Benutzer die Anweisung SELECT verwenden , um Daten aus Tabellen abrufen .
SHOW DATABASE -Berechtigung erlaubt es dem Benutzer, siehe die Datenbank mit dem Namen SHOW DATABASE-Anweisung.
die Abschaltung Privileg ermöglicht dem Benutzer, Herunterfahren der Datenbank mit dem " mysqladmin shutdown "-Befehl.
der Befehl GRANT
um den GRANT-Befehl zu verwenden, müssen Sie über die Berechtigungen, die Sie wollen , um zu einem anderen Benutzer geben und muss die Berechtigung GRANT OPTION . Ein typisches GRANT -Anweisung lautet:
GRANT ALL ON * PRIVILEGES * TO 'user' @ '%' WITH GRANT OPTION ;
Diese Aussage zu geben " ALL PRIVILEGES " auf globaler Ebene sagt . für den Benutzer "mysql " auf allen Rechnern mit dem "GRANT OPTION . "
Wenn Sie den Benutzer nur Rechte auf einer einzigen Datenbank , verwenden Sie die " Datenbank . * " Syntax, wobei " Datenbank "ist der Name der Datenbank. Zum Beispiel: .
GRANT SELECT , INSERT auf Datenbank * TO 'user' @ 'hostname ';
nur Tisch Privilegien zu gewähren , geben Sie den Tisch mit dem " Datenbanktabellenname " Syntax , wie :
GRANT ALL ON Datenbanktabellenname TO 'user' @ 'hostname ';
der Befehl REVOKE
Wie die GRANT Befehls müssen Sie über die Berechtigungen , die Sie aus dem Benutzer zusammen mit der GRANT OPTION Privileg widerrufen. Um alle Privilegien eines Benutzers zurückzurufen die Syntax wäre:
alle Berechtigungen widerrufen , GRANT OPTION VON 'user' ;
Andere REVOKE haben die gleiche Syntax wie der GRANT-Anweisung . Zum Beispiel, um die INSERT Privilegien auf einer Datenbank für einen Benutzer zu entfernen, wäre die Aussage :
REVOKE INSERT ON Datenbank * FROM 'user' ;
Sie können überprüfen, Privilegien wurden . erteilt oder widerrufen korrekt mit den "Mehr Zuschüsse für" Benutzer " , " . Statement