MariaDB GRANT ALL PRIVILEGES: So vergeben Sie Rechte
Der Befehl GRANT ALL PRIVILEGES
in MariaDB vergibt sämtliche Benutzerrechte auf eine Datenbank. So können Nutzerinnen und Nutzer ohne Einschränkungen Tabellen erstellen, ändern und löschen.
Was ist MariaDB GRANT ALL PRIVILEGES
?
Der Befehl GRANT ALL PRIVILEGES
in MariaDB stattet eine Benutzerin oder einen Benutzer mit umfassenden Zugriffsrechten auf eine oder mehrere Datenbanken aus. Er räumt alle verfügbaren Berechtigungen ein, darunter das Anlegen, Verändern und Löschen von Tabellen sowie den Zugriff auf administrative Funktionen. Mit dem gezielten Einsatz von GRANT ALL PRIVILEGES
steuern Sie die Zugriffsrechte innerhalb Ihrer Datenbankumgebung.
Um GRANT ALL PRIVILEGES
in MariaDB anwenden zu können, benötigen Sie erweiterte Systemrechte. Dazu gehören in der Regel das SUPER
-Privileg oder die Berechtigung zur Vergabe von Rechten (GRANT OPTION
). Melden Sie sich mit einem administrativen Benutzerkonto an und stellen Sie sicher, dass eine stabile Verbindung zur richtigen Datenbankinstanz besteht. Achten Sie darauf, Benutzername und Hostpräfix genau zu definieren, um unbeabsichtigte Rechtezuweisungen zu vermeiden. Auch sollten Sie prüfen, ob die Zieldatenbank bereits existiert, da sich der Befehl nur auf vorhandene Datenbanken beziehen kann.
- Kostengünstige vCPUs und leistungsstarke dedizierte Cores
- Höchste Flexibilität ohne Mindestvertragslaufzeit
- Inklusive 24/7 Experten-Support
Syntax des MariaDB GRANT ALL PRIVILEGES-Befehls
Die Grundstruktur, um alle Rechte auf eine Datenbank zu vergeben, sieht in MariaDB folgendermaßen aus:
GRANT ALL PRIVILEGES ON database.* TO 'username'@'host';
sqlDer Ausdruck GRANT ALL PRIVILEGES
in MariaDB erteilt der angegebenen Benutzerin oder dem Benutzer vollständige Berechtigungen auf die ausgewählte Datenbank. Durch die Angabe von 'username'@host
bestimmen Sie, welchem User und von welchem Host der Zugriff erlaubt ist. Optional können Sie gleichzeitig ein Passwort setzen, um die Benutzerin oder den Benutzer zu authentifizieren.
Nachdem Sie den Befehl ausgeführt haben, zeigen die Änderungen erst Wirkung, wenn Sie die Berechtigungen neu laden:
FLUSH PRIVILEGES;
sqlDies sorgt dafür, dass die vergebenen Rechte sofort aktiv sind und korrekt im System gespeichert werden.
Schritt-für-Schritt-Anleitung: Benutzer anlegen und mit Rechten ausstatten
Wenn Sie ein neues Benutzerkonto in MariaDB anlegen und diesem Konto umfassende Rechte erteilen möchten, gehen Sie wie folgt vor:
Schritt 1: Benutzer erstellen
Zunächst legen Sie einen neuen User mit einem sicheren Passwort an. Verwenden Sie dafür den Befehl:
CREATE USER 'newuser'@localhost IDENTIFIED BY 'strongpassword';
sqlMit dem Befehl MariaDB CREATE USER erstellen Sie einen neuen User und weisen diesem ein Passwort zu. Ersetzen Sie newuser
durch den gewünschten Benutzernamen und strongpassword
durch ein individuelles, sicheres Passwort. Die Angabe localhost
beschränkt den Zugriff auf Verbindungen vom lokalen Server. Möchten Sie den Zugriff von einem anderen Host erlauben, ersetzen Sie localhost
durch die IP-Adresse oder den Hostnamen des gewünschten Servers.
Schritt 2: Alle Rechte auf eine Datenbank vergeben
MariaDB GRANT ALL PRIVILEGES
verleiht Benutzerinnen und Benutzern sämtliche verfügbaren Privilegien auf alle Tabellen der Datenbank database_name
. Der Platzhalter *
steht dabei für jede Tabelle innerhalb der angegebenen Datenbank.
GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost;
sqlSchritt 3: Rechteweitergabe erlauben (GRANT OPTION
)
Durch die Ergänzung WITH GRANT OPTION
erhält der User das Recht, die erhaltenen Privilegien selbst an andere Benutzerinnen und Benutzer weiterzugeben.
GRANT ALL PRIVILEGES ON database_name.* TO 'newuser'@localhost WITH GRANT OPTION;
sqlSchritt 4: Einzelne Rechte auf eine Datenbank oder eine Tabelle vergeben
Sie können auch gezielt bestimmte Berechtigungen auf eine komplette Datenbank oder auf einzelne Tabellen vergeben. Um beispielsweise nur Lesezugriff auf alle Tabellen einer Datenbank zu erlauben, nutzen Sie:
GRANT SELECT ON database_name.* TO 'newuser'@localhost;
sqlIn diesem Beispiel erhält 'newuser'
das Recht, alle Daten in der Datenbank database_name
zu lesen, jedoch keine Änderungen vorzunehmen. Durch die Verwendung von *
nach dem Datenbanknamen beziehen sich die Rechte auf alle Tabellen dieser Datenbank.
Möchten Sie hingegen Rechte nur auf eine spezielle Tabelle vergeben, passen Sie die Syntax folgendermaßen an:
GRANT SELECT ON database_name.table_name TO 'newuser'@localhost;
sqlDadurch kann 'newuser'
Daten aus der Tabelle table_name
innerhalb der Datenbank database_name
lesen. So kontrollieren Sie sehr genau, welche Aktionen die Benutzerin oder der Benutzer ausführen darf.
Schritt 5: Änderungen anwenden
Die Rechte sollten automatisch aktualisiert werden und ab sofort gelten. Alternativ können Sie abschließend den nachfolgenden Befehl ausführen, damit alle vergebenen Rechte wirksam werden:
FLUSH PRIVILEGES;
sqlSchritt 6: Vergebene Rechte anzeigen
Um alle aktuell vergebenen Rechte eines Benutzerkontos zu überprüfen, geben Sie folgenden Befehl ein:
SHOW GRANTS FOR 'newuser'@localhost;
sqlDieser Befehl listet alle Berechtigungen auf, die newuser
für die MariaDB-Instanz besitzt. Sie sehen dabei nicht nur allgemeine Rechte auf Datenbanken oder Tabellen, sondern auch spezielle Privilegien wie das Recht, eigene Berechtigungen weiterzugeben (WITH GRANT OPTION
).
- IONOS Cloud-Partner: Die Experten für Ihren Datenbank-Betrieb
- Flexibel: Maßgeschneiderte Datenbank-Lösungen ganz auf Ihre Bedürfnisse
- Rechenzentren in Deutschland: Ihre Daten sind sicher