Detaillierte Erläuterung der MySQL-Benutzer- und Berechtigungsverwaltung

Detaillierte Erläuterung der MySQL-Benutzer- und Berechtigungsverwaltung

Dieser Artikel beschreibt anhand von Beispielen die Verwaltung von MySQL-Benutzern und -Berechtigungen. Teilen Sie uns die Einzelheiten zu Ihrer Information mit:

Benutzer stellen eine Verbindung zu MySQL her und können verschiedene Abfragen durchführen. Diese werden alle im Hintergrund von den MySQL-Benutzer- und Berechtigungsfunktionen verwaltet.

Der Datenaustausch zwischen Benutzern und Datenbankservern gliedert sich in zwei Phasen:

(1) Haben Sie das Recht, die Verbindung herzustellen? (2) Haben Sie das Recht, diesen Vorgang durchzuführen?

1. Haben Sie das Recht, eine Verbindung herzustellen?

Wie bestimmt der Server, ob der Benutzer das Recht hat, eine Verbindung herzustellen?

in Übereinstimmung mit:

1) Woher kommen Sie? Gastgeber
2) Wer sind Sie? Benutzer
3) Wie lautet Ihr Passwort? Passwort

Diese drei Benutzerinformationen werden in der Benutzertabelle in der MySQL-Datenbank gespeichert.

Ändern Sie die Hostdomäne, damit die IP eine Verbindung herstellen kann

mysql>Benutzer aktualisieren, Host festlegen = "192.168.137.123", wobei Benutzer = "root" ist;
mysql>Berechtigungen leeren; -- Berechtigungen leeren

Benutzerkennwort ändern

mysql>Benutzer aktualisieren, Passwort festlegen=Passwort('11111111'), wobei xxx;
mysql>Berechtigungen leeren; -- Berechtigungen leeren

2. Sind Sie berechtigt, diesen Vorgang durchzuführen?

In MySQL gibt es eine Bibliothek namens MySQL-Bibliothek. In dieser Bibliothek gibt es drei Tabellen, von denen eine die Benutzertabelle ist, in der die Berechtigungsinformationen aller Benutzer gespeichert sind. Eine davon ist die Datenbanktabelle, die die Berechtigungsinformationen aller Benutzer auf Datenbankebene speichert. Eine davon ist die Tabelle „tables_priv“, die die Berechtigungsinformationen aller Benutzer auf Tabellenebene speichert.

Wenn sich ein Benutzer anmeldet, kann die Benutzertabelle erstens die Benutzeranmeldungen einschränken und zweitens werden darin auch die globalen Berechtigungen des Benutzers gespeichert. Wenn der Benutzer keine Berechtigungen hat, wird anhand der db-Tabelle geprüft, ob der Benutzer die Berechtigung hat, eine bestimmte Datenbank zu bedienen. Wenn keine von beiden vorhanden ist, wird anhand der table_priv-Tabelle geprüft, ob der Benutzer die Berechtigung hat, eine bestimmte Tabelle zu bedienen. Wenn ja, kann der Benutzer die Tabelle gemäß den vorhandenen Berechtigungen bedienen.

1) Globale Autorisierung und Widerruf

Globales Autorisierungsformat:

gewähre [Berechtigung 1, Berechtigung 2, Berechtigung 3] am *.* dem durch „Passwort“ identifizierten Benutzer@„Host“

Allgemeine Berechtigungen: Alle, Erstellen, Löschen, Auswählen, Einfügen, Löschen, Aktualisieren

Genehmigung:

Erstellen Sie den Benutzer lisi, stellen Sie den Host auf 192.168.191.% ein und das %-Platzhalterzeichen gibt an, dass jeder Host, der mit 192.168.191.xxx endet, eine Verbindung herstellen kann. Das Passwort lautet 12345678.

gewähre alles auf *.* an lisi@'192.168.191.%', identifiziert durch '12345678';

Berechtigungen zurückfordern:

widerrufe alles auf *.* von lisi@'192.168.191.%';

2) Autorisierung und Widerruf auf Datenbankebene

Voraussetzung: Der lisi-Benutzer muss alle Betriebsberechtigungen für die mysqlmaster-Datenbank haben.

Genehmigung:

gewähre alles auf mysqlmaster.* an lisi@'192.168.191.%', identifiziert durch '12345678';

Zurücknehmen:

widerrufe alles auf mysqlmaster.* von lisi@'192.168.191.%';

3) Autorisierung und Widerruf auf Tabellenebene

Anforderung: Geben Sie dem Benutzer „lisi“ die Berechtigungen für Einfüge-, Aktualisierungs- und Auswahlvorgänge für die Tabelle „goods“ in der mysqlmaster-Datenbank.

Genehmigung:

Gewähren Sie Einfügen, Aktualisieren und Auswählen für mysqlmaster.goods an lisi@'192.168.191.%', identifiziert durch '12345678'.

Zurücknehmen:

Widerrufen Sie Insert, Update, Select auf mysqlmaster.goods von lisi@'192.168.191.%';

Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen auf dieser Site ansehen: „MySQL-Abfragekenntnisse“, „MySQL-Transaktionsoperationskenntnisse“, „MySQL-gespeicherte Prozedurkenntnisse“, „Zusammenfassung der Kenntnisse zu MySQL-Datenbanksperren“ und „Zusammenfassung der allgemeinen MySQL-Funktionen“.

Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist.

Das könnte Sie auch interessieren:
  • So verwenden Sie DCL zum Verwalten von Benutzern und Steuern von Berechtigungen in MySQL
  • So erstellen Sie Benutzer und verwalten Berechtigungen in MySQL
  • Beispielanalyse der MySQL-Benutzerrechteverwaltung
  • Ausführliche Erläuterung der MySQL-Benutzerkontenverwaltung und Berechtigungsverwaltung
  • Detaillierte Erläuterung der Methoden zur Überprüfung und Verwaltung von MySQL-Benutzerrechten
  • Detaillierte Erläuterung der MySQL-Benutzerrechteverwaltung
  • Zusammenfassung der grundlegenden Methoden zur Benutzer- und Berechtigungsverwaltung in MySQL
  • Detaillierte Erläuterung der MySQL-Benutzerrechteverwaltung

<<:  Node.js verwendet die Express-Fileupload-Middleware zum Hochladen von Dateien

>>:  So verwenden Sie nginx, um auf lokale statische Ressourcen auf einem Linux-Server zuzugreifen

Artikel empfehlen

Vier Methoden zur Datentypbeurteilung in JS

Inhaltsverzeichnis 1. Art von 2. Instanz von 3. K...

So installieren Sie den Apache-Dienst im Linux-Betriebssystem

Downloadlink: Betriebsumgebung CentOS 7.6 in eine...

So importieren Sie Vue-Komponenten automatisch bei Bedarf

Inhaltsverzeichnis Globale Registrierung Teilregi...

Ein umfassendes Verständnis der funktionalen Komponenten von Vue.js

Inhaltsverzeichnis Vorwort Funktionale React-Komp...

JS realisiert den Effekt des Bildwasserfallflusses

In diesem Artikel wird der spezifische JS-Code zu...

Verwenden von js, um den Effekt eines Karussells zu erzielen

Lassen Sie uns heute darüber sprechen, wie Sie mi...

Vue führt weltweit SCSS (Mixin) ein

Inhaltsverzeichnis 1. mixin.scss 2. Einzeldateinu...

js Canvas realisiert zufällige Partikeleffekte

In diesem Artikelbeispiel wird der spezifische Co...

Beispielcode zur Implementierung eines reinen CSS-Popup-Menüs mit Transform

Vorwort Wenn Sie ein Topmenü erstellen, müssen Si...

Einfache Implementierungsmethode der Vue3-Quellcodeanalyse

Inhaltsverzeichnis Vorwort 🍹Vorbereitung 🍲vue3-Nu...

Bedingte Kommentare zur Bestimmung des Browsers (IE-Reihe)

<!--[if IE 6]> Nur IE6 kann erkennen <![e...

Font Treasure House 50 exquisite kostenlose englische Schriftartenressourcen Teil 2

Designer verfügen über eine eigene Schriftartenbi...