MySQL ist wohl eines der führenden und am weitesten verbreiteten Open-Source-Datenbankverwaltungssysteme. Es ist das bevorzugte relationale Datenbankverwaltungssystem der meisten Webhosting-Unternehmen und anderen Cloud-Anbieter.
In diesem Tutorial sehen wir uns an, wie Sie MySQL-Benutzerkonten erstellen und ihnen Berechtigungen erteilen, auf die erstellten Datenbanken zuzugreifen und sie zu verwalten.
Voraussetzungen
Bevor Sie beginnen, geht das Tutorial davon aus, dass Sie bereits eine Instanz der MySQL-Datenbank oder MariaDB, eine Abzweigung von MySQL, auf Ihrem System installiert haben.
Zugriff auf die MySQL-Shell
Sobald MySQL oder MariaDB installiert und gesichert ist, können Sie auf die Shell zugreifen, indem Sie den Befehl ausführen
$ mysql -u root -p
Danach werden Sie nach dem Root-Passwort gefragt, und wenn Sie es erhalten, drücken Sie die EINGABETASTE, um auf die Shell zuzugreifen
So erstellen Sie einen Benutzer in MySQL
Um einen Benutzer in MYSQL hinzuzufügen, verwenden Sie den Befehl mysql create user wie gezeigt
CREATE USER 'linoxide_user'@'localhost' IDENTIFIED BY 'P@ssword123';

Der MySQL-Benutzer besteht aus 2 Abschnitten: Die username
und das hostname
. Aus dem obigen Befehl lautet der Benutzername linoxide_user
und während der Hostname ist localhost
Der Abschnitt hostname zeigt an, dass der Benutzer linoxide_user
kann sich nur lokal mit MySQL verbinden, dh von dem Server, auf dem MySQL gehostet wird.
Um den Zugriff von einem externen Hostsystem zu gewähren, ersetzen Sie localhost
mit der IP-Adresse des entfernten Hosts.
Für example, um Zugriff von einem Hostsystem mit einer IP ‘172.16.10.10’ zu gewähren, führen Sie Folgendes aus:
CREATE USER 'linoxide_user'@'172.16.10.10' IDENTIFIED BY 'P@ssword123';

Um den Zugriff von einem beliebigen Hostsystem aus zu gewähren, verwenden Sie das ‘%’, das als Platzhalter fungiert.
CREATE USER 'linoxide_user'@'%' IDENTIFIED BY 'P@ssword123';
Erteilen von Privilegien an einen MySQL-Benutzer
Wenn ein Benutzer erstellt wird, möchten Sie der Datenbank-Engine möglicherweise bestimmte Berechtigungen zuweisen. Diese Berechtigungen gewähren Benutzern Zugriff auf Datenbanken und ermöglichen ihnen, einige Änderungen an den Datenbanken vorzunehmen.
In MySQL gibt es unzählige Privilegien die einem Benutzer zugeordnet werden können. In diesem Leitfaden beleuchten wir jedoch die am häufigsten verwendeten Privilegien:
WÄHLEN: Dies ermöglicht einem Benutzer, die gesamte Datenbank zu lesen
AKTUALISIEREN: Dies ermöglicht einem Benutzer, die Zeilen in einer Tabelle zu aktualisieren
EINFÜGUNG: Ermöglicht einem Benutzer das Einfügen von Zeilen in eine bestimmte Tabelle
LÖSCHEN: Gewährt eine Nutzungsberechtigung zum Löschen von Zeilen in einer bestimmten Tabelle
ERSTELLEN: Ermöglicht einem Benutzer das Erstellen von Datenbanken und Tabellen
FALLEN: Gewährt dem Benutzer die Berechtigung, die gesamte Datenbank und die Tabellen zu löschen
Um einem Benutzer bestimmte Berechtigungen für den Zugriff auf eine Datenbank zu erteilen, verwenden Sie die unten gezeigte Syntax:
GRANT privilege1, privilege2 ON database_name.* TO 'database_user'@'localhost';
Für example:
GRANT SELECT, INSERT, ON database_name.* TO database_user@'localhost';

Um einem bestimmten Benutzer alle Berechtigungen für eine bestimmte Tabelle in einer Datenbank zu erteilen, geben Sie den folgenden Befehl ein:
GRANT ALL PRIVILEGES ON database_name.table_name TO 'database_user'@'localhost';

Um einem Benutzer alle Berechtigungen für alle Datenbanken zu erteilen, führen Sie den folgenden Befehl aus:
GRANT ALL PRIVILEGES ON database_name.* TO 'database_user'@'localhost

Benutzerkontoberechtigungen anzeigen
Nachdem ein Benutzer erstellt und Berechtigungen für die Datenbanken zugewiesen wurden, können Sie die dem Benutzer gewährten Berechtigungen einfach mit dem SHOW GRANTS
Befehle wie unten dargestellt:
SHOW GRANTS FOR 'database_user'@'localhost';

Widerrufen von Berechtigungen eines MySQL-Benutzers
Darüber hinaus können Sie einem MySQL-Benutzer eine oder mehrere Berechtigungen entziehen. Die Syntax ist fast ähnlich wie bei der Vergabe von Benutzerrechten.
REVOKE ALL PRIVILEGES ON database_name.* FROM 'database_user'@'localhost';

Löschen Sie einen bestehenden MySQL-Benutzer
Um einen MySQL-Benutzer zu entfernen oder zu löschen, führen Sie Folgendes aus: DROP
Befehl wie gezeigt:
DROP USER 'database_user'@'localhost';
Für example:

Fazit
Dieses Tutorial behandelt die grundlegenden Konzepte zum Erstellen und Verwalten von MySQL-Benutzern durch Zuweisen und Entziehen von Berechtigungen. Dies sollte ein guter Ausgangspunkt für Anfänger sein. Wir hoffen, dass Sie problemlos MySQL-Benutzerkonten erstellen und Berechtigungen und Benutzer verwalten können.