MySQL ist das beliebteste relationale Open-Source-Datenbankverwaltungssystem. Mit MySQL Server können wir zahlreiche Benutzerkonten erstellen und entsprechende Berechtigungen erteilen, damit die Benutzer auf Datenbanken zugreifen und diese verwalten können.

In diesem Tutorial wird beschrieben, wie Sie MySQL-Benutzerkonten erstellen und Berechtigungen erteilen.

Bevor Sie beginnen #

Wir gehen davon aus, dass Sie bereits MySQL oder MariaDB Server auf Ihrem System installiert haben.

Alle Befehle werden innerhalb der MySQL Shell als root oder administrativer Benutzer ausgeführt., Die Mindestberechtigungen, die zum Erstellen von Benutzerkonten und zum Definieren ihrer Berechtigungen erforderlich sind, sind CREATE USER und GRANT.

Um auf die MySQL-Shell zuzugreifen, geben Sie den folgenden Befehl ein und geben Sie Ihr MySQL-Root-Benutzerkennwort ein, wenn Sie dazu aufgefordert werden:

mysql -u root -p

Wenn Sie MySQL Version 5.7 oder höher haben, die die auth_socket Plugin-Anmeldung als root verwendet, indem Sie Folgendes eingeben:

sudo mysql

Erstellen Sie ein neues MySQL-Benutzerkonto #

Ein Benutzerkonto in MySQL besteht aus zwei Teilen: Benutzername und Hostname.,

Um ein neues MySQL-Benutzerkonto zu erstellen, führen Sie den folgenden Befehl aus:

CREATE USER 'newuser'@'localhost' IDENTIFIED BY 'user_password';
Ersetzen Sie newuser durch den neuen Benutzernamen und user_password durch das Benutzerkennwort.

Im obigen Beispiel ist der Hostname-Teil auf localhost gesetzt, was bedeutet, dass der Benutzer nur über den localhost (dh über das System, auf dem der MySQL-Server ausgeführt wird) eine Verbindung zum MySQL-Server herstellen kann.

Um Zugriff von einem anderen Host zu gewähren, ändern Sie den Hostnamen-Teil mit der Remote-Computer-IP., Um beispielsweise Zugriff von einem Computer mit IP 10.8.0.5 zu gewähren, führen Sie Folgendes aus:

Um einen Benutzer zu erstellen, der von einem beliebigen Host aus eine Verbindung herstellen kann, verwenden Sie die '%' Platzhalter als Hostteil:

CREATE USER 'newuser'@'%' IDENTIFIED BY 'user_password';

Berechtigungen für ein MySQL-Benutzerkonto erteilen # Es gibt mehrere Arten von Berechtigungen, die einem Benutzerkonto gewährt werden können. Eine vollständige Liste der von MySQL unterstützten Berechtigungen finden Sie hier .,

Die am häufigsten verwendeten Berechtigungen sind:

  • – Gewährt einem Benutzerkonto alle Berechtigungen.
  • CREATE – Das Benutzerkonto darf Datenbanken und Tabellen erstellen.
  • DROP – Das Benutzerkonto darf Datenbanken und Tabellen löschen.
  • DELETE – Das Benutzerkonto darf Zeilen aus einer bestimmten Tabelle löschen.
  • INSERT – Das Benutzerkonto darf Zeilen in eine bestimmte Tabelle einfügen.,
  • SELECT – Das Benutzerkonto darf eine Datenbank lesen.
  • UPDATE – Das Benutzerkonto darf Tabellenzeilen aktualisieren.,ble aus einer Datenbank:

    GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';
  • Gewähren Sie einem Benutzerkonto mehrere Berechtigungen über eine bestimmte Datenbank:

    GRANT SELECT, INSERT, DELETE ON database_name.* TO database_user@'localhost';

MySQL-Benutzerkontenrechte anzeigen #

Um die Berechtigungen zu finden, die einem bestimmten MySQL-Benutzerkonto gewährt wurden, verwenden Sie die SHOW GRANTS anweisung:

SHOW GRANTS FOR 'database_user'@'localhost';

Die Ausgabe sieht ungefähr so aus:

Berechtigungen von einem MySQL-Benutzerkonto widerrufen #

Die Syntax zum Widerrufen eines oder mehrerer Berechtigungen von einem Benutzerkonto ist fast identisch mit der bei der Gewährung von Berechtigungen.,

Um alle Berechtigungen von einem Benutzerkonto über eine bestimmte Datenbank zu widerrufen, führen Sie den folgenden Befehl aus:

REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';

Entfernen Sie ein vorhandenes MySQL-Benutzerkonto #

Um ein MySQL-Benutzerkonto zu löschen, verwenden Sie die DROP USER Anweisung:

DROP USER 'user'@'localhost'

Der obige Befehl entfernt das Benutzerkonto und seine Privilegien.

Fazit #

Dieses Tutorial behandelt nur die Grundlagen, sollte jedoch ein guter Anfang für alle sein, die lernen möchten, wie Sie neue MySQL-Benutzerkonten erstellen und Berechtigungen erteilen.