MySQL-Berechtigungen steuern genau, was ein Benutzer innerhalb einer Datenbank tun kann und was nicht. Das Nobregas MySQL Panel bietet 18 einzelne Berechtigungen plus die ALL PRIVILEGES-Verknüpfung. Das Verständnis jeder einzelnen hilft Ihnen, die richtige Zugangsstufe für jeden Anwendungsfall zu gewähren.
Berechtigungs-Referenztabelle
| Berechtigung | Kategorie | Beschreibung |
|---|---|---|
| SELECT | Data | Zeilen aus Tabellen lesen |
| INSERT | Data | Neue Zeilen zu Tabellen hinzufügen |
| UPDATE | Data | Werte in vorhandenen Zeilen ändern |
| DELETE | Data | Zeilen aus Tabellen entfernen |
| CREATE | Structure | Neue Tabellen erstellen |
| ALTER | Structure | Tabellenstruktur ändern (Spalten, Typen) |
| DROP | Structure | Tabellen und Views löschen |
| INDEX | Structure | Indizes erstellen und entfernen |
| REFERENCES | Structure | Fremdschlüssel-Einschränkungen erstellen |
| CREATE TEMPORARY TABLES | Admin | Temporäre sitzungsbezogene Tabellen erstellen |
| LOCK TABLES | Admin | Tabellen für exklusiven Zugriff sperren |
| CREATE VIEW | Admin | Virtuelle Tabellen (Views) erstellen |
| SHOW VIEW | Admin | Die SQL-Definition von Views anzeigen |
| CREATE ROUTINE | Admin | Gespeicherte Prozeduren und Funktionen erstellen |
| ALTER ROUTINE | Admin | Gespeicherte Prozeduren ändern oder löschen |
| EXECUTE | Admin | Gespeicherte Prozeduren und Funktionen ausführen |
| EVENT | Admin | Geplante Ereignisse erstellen und verwalten |
| TRIGGER | Admin | Tabellen-Trigger erstellen und verwalten |
Daten-Berechtigungen — Im Detail Erklärt
SELECT
Erlaubt dem Benutzer, Daten mit SELECT-Abfragen zu lesen. Dies ist die grundlegendste Berechtigung. Ohne sie kann der Benutzer keine Informationen aus Tabellen abrufen. Erforderlich für jede Art von Reporting, Anzeige oder Datenabruf.
INSERT
Erlaubt dem Benutzer, neue Zeilen mit INSERT-Anweisungen hinzuzufügen. Benötigt für Formulareinreichungen, Benutzerregistrierungen, Protokollierung und jede Operation, die neue Datensätze erstellt.
UPDATE
Erlaubt dem Benutzer, vorhandene Zeilen mit UPDATE-Anweisungen zu ändern. Benötigt für das Bearbeiten von Profilen, Ändern von Einstellungen, Aktualisieren von Bestandszahlen und ähnliche Operationen.
DELETE
Erlaubt dem Benutzer, Zeilen mit DELETE-Anweisungen zu entfernen. Benötigt für das Entfernen von Datensätzen, Bereinigen alter Daten und Verwalten von Inhalten.
Struktur-Berechtigungen — Im Detail Erklärt
CREATE
Erlaubt das Erstellen neuer Tabellen mit CREATE TABLE. Die meisten Anwendungen benötigen dies nur während der Ersteinrichtung oder beim Ausführen von Migrationen.
ALTER
Erlaubt das Ändern der Tabellenstruktur mit ALTER TABLE — Hinzufügen, Umbenennen oder Entfernen von Spalten, Ändern von Datentypen und Modifizieren von Indizes. Essenziell bei Migrationen, aber selten in der Produktion benötigt.
DROP
Erlaubt das Löschen von Tabellen und Views mit DROP TABLE oder DROP VIEW. Dies ist eine destruktive Berechtigung — ein Benutzer mit DROP kann eine gesamte Tabelle und alle ihre Daten dauerhaft entfernen.
INDEX
Erlaubt das Erstellen und Entfernen von Indizes auf Tabellen. Indizes beschleunigen Abfragen, können aber Schreibvorgänge verlangsamen. Normalerweise nur von Datenbankadministratoren oder Migrationswerkzeugen benötigt.
REFERENCES
Erlaubt das Erstellen von Fremdschlüssel-Einschränkungen zwischen Tabellen. Nur relevant für Datenbanken, die relationale Integrität mit FOREIGN KEY-Definitionen verwenden.
Administrations-Berechtigungen — Im Detail Erklärt
CREATE TEMPORARY TABLES
Erlaubt das Erstellen temporärer Tabellen, die nur für die aktuelle Datenbanksitzung existieren. Nützlich für komplexe Abfragen, die Zwischenergebnisse speichern müssen.
LOCK TABLES
Erlaubt das explizite Sperren von Tabellen mit LOCK TABLES. Benötigt für Operationen, die exklusiven Zugriff erfordern, um gleichzeitige Änderungen zu verhindern.
CREATE VIEW
Erlaubt das Erstellen von Views — virtuellen Tabellen, die durch eine SQL-Abfrage definiert werden. Views vereinfachen komplexe Abfragen und können sichtbare Spalten einschränken.
SHOW VIEW
Erlaubt das Anzeigen der CREATE VIEW-Anweisung hinter einem vorhandenen View. Benötigt für Debugging oder Inspektion von View-Definitionen.
CREATE ROUTINE
Erlaubt das Erstellen gespeicherter Prozeduren und Funktionen. Dies sind wiederverwendbare SQL-Programme, die in der Datenbank gespeichert werden.
ALTER ROUTINE
Erlaubt das Ändern oder Löschen vorhandener gespeicherter Prozeduren und Funktionen.
EXECUTE
Erlaubt das Ausführen gespeicherter Prozeduren und Funktionen mit CALL-Anweisungen. Ein Benutzer kann EXECUTE ohne CREATE ROUTINE benötigen, wenn er nur Prozeduren ausführen muss, die andere erstellt haben.
EVENT
Erlaubt das Erstellen, Ändern und Löschen geplanter Ereignisse — MySQLs integrierter Task-Scheduler zum Ausführen von SQL in festgelegten Intervallen.
TRIGGER
Erlaubt das Erstellen und Löschen von Triggern — automatische SQL-Aktionen, die ausgelöst werden, wenn Zeilen in einer Tabelle eingefügt, aktualisiert oder gelöscht werden.
ALL PRIVILEGES
Das Aktivieren von ALL PRIVILEGES gewährt alle oben aufgelisteten Berechtigungen gleichzeitig. Es ist eine Komfort-Verknüpfung, die dem Aktivieren aller 18 einzelnen Checkboxen entspricht. Verwenden Sie es für vertrauenswürdige Benutzer, die vollständige Kontrolle über eine Datenbank benötigen.
Die Richtigen Berechtigungen Wählen
| Anwendungsfall | Empfohlene Berechtigungen |
|---|---|
| Nur-Lese-Reporting | SELECT |
| Standard Web-App | SELECT, INSERT, UPDATE, DELETE |
| App mit Migrationen | SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER, DROP, INDEX |
| Voller Admin-Zugriff | ALL PRIVILEGES |
| Gespeicherte Prozeduren Ausführer | SELECT, EXECUTE |