MySQL Series 6-Benutzer und Autorisierung

MySQL Series 6-Benutzer und Autorisierung

Tutorial-Reihe

MySQL-Reihe: Grundlegende Konzepte der relationalen MySQL-Datenbank
MariaDB-Serverinstallation der MySQL-Reihe
MySQL Series II-Konfiguration für mehrere Instanzen
MySQL Serie 3 Grundlagen
MySQL Serie 4 SQL-Syntax
MySQL-Serie fünf Ansichten, gespeicherte Funktionen, gespeicherte Prozeduren, Trigger
MySQL Series 7 MySQL-Speicher-Engine
MySQL Serie 8 MySQL Server-Variablen
MySQL-Serie 9 MySQL-Abfrage-Cache und -Index
MySQL Series 10 MySQL-Transaktionsisolierung zur Implementierung der Parallelitätskontrolle
MySQL Series 11-Protokollierung
MySQL Serie 12 Backup und Wiederherstellung
MySQL Serie 13 MySQL-Replikation
MySQL Serie 14 MySQL Hochverfügbarkeitsimplementierung
MySQL-Serie 15: Allgemeine MySQL-Konfiguration und Leistungsstresstest

1. Benutzerverwaltung

1. Benutzerkonto

Das Benutzerkonto besteht aus zwei Teilen: Benutzername und HOST ('USERNAME'@'HOST')

HOST bedeutet:

  • Hostname
  • Spezifische IP-Adresse
  • Netzwerksegment/Maske

Sie können Platzhalter, % und _ verwenden; 192.168.% bedeutet alle Hosts in diesem Netzwerksegment

2. Konten hinzufügen und löschen

Main: Nach dem Ändern der Benutzerinformationen in der Datenbank müssen Sie FLUSH PRIVILEGES ausführen, um die Autorisierungstabelle zu aktualisieren und wirksam zu machen.

erstellen

  MariaDB [mysql]> CREATE USER 'Benutzer1'@'192.168.%';
  MariaDB [mysql]> ERSTELLEN SIE BENUTZER 'user2'@'192.168.%' IDENTIFIZIERT DURCH 'Ihr_Passwort';
  MariaDB [mysql]> SELECT Benutzer, Host, Passwort FROM Benutzer;
  +----------+-----------+-------------------------------------------+
  | Benutzer | Host | Passwort |
  +----------+-----------+-------------------------------------------+
  | root | lokaler Host | *4A54C3F37C03C7FBACE31591D6A8C546F93DF5C5 |
  | Wurzel | centos7 | |
  | Wurzel | 127.0.0.1 | |
  | Wurzel | ::1 | |
  | | lokaler Host | |
  | | centos7 | |
  | Benutzer1 | 192,168.% | |
  | Benutzer2 | 192,168.% | *9E72259BA9214F692A85B240647C4D95B0F2E08B |
  +----------+-----------+-------------------------------------------+

löschen

  MariaDB [mysql]> DROP USER Benutzer2@'192.168.%';
  MariaDB [mysql]> SELECT Benutzer, Host, Passwort FROM Benutzer;      
  +----------+-----------+-------------------------------------------+
  | Benutzer | Host | Passwort |
  +----------+-----------+-------------------------------------------+
  | root | lokaler Host | *4A54C3F37C03C7FBACE31591D6A8C546F93DF5C5 |
  | Wurzel | centos7 | |
  | Wurzel | 127.0.0.1 | |
  | Wurzel | ::1 | |
  | | lokaler Host | |
  | | centos7 | |
  | Benutzer1 | 192,168 % | |
  +----------+-----------+-------------------------------------------+

Umbenennen

  MariaDB [mysql]> BENUTZER umbenennen user1@'192.168.%' in testuser@'%';
  MariaDB [mysql]> SELECT Benutzer, Host, Passwort FROM mysql.user;
  +----------+----------+-------------------------------------------+
  | Benutzer | Host | Passwort |
  +----------+----------+-------------------------------------------+
  | root | lokaler Host | *4A54C3F37C03C7FBACE31591D6A8C546F93DF5C5 |
  | Wurzel | centos7 | |
  | Wurzel | 127.0.0.1 | |
  | Wurzel | ::1 | |
  | | lokaler Host | |
  | | centos7 | |
  | Testbenutzer | % | |
  +----------+----------+-------------------------------------------+

Kennwort ändern

  MariaDB [mysql]> PASSWORT FÜR Testbenutzer festlegen@'%' = PASSWORT('testpass');
  MariaDB [mysql]> SELECT Benutzer, Host, Passwort FROM mysql.user;          
  +----------+----------+-------------------------------------------+
  | Benutzer | Host | Passwort |
  +----------+----------+-------------------------------------------+
  | root | lokaler Host | *4A54C3F37C03C7FBACE31591D6A8C546F93DF5C5 |
  | Wurzel | centos7 | |
  | Wurzel | 127.0.0.1 | |
  | Wurzel | ::1 | |
  | | lokaler Host | |
  | | centos7 | |
  | Testbenutzer | % | *00E247AC5F9AF26AE0194B41E1E769DEE1429A29 |
  +----------+----------+-------------------------------------------+

Weitere Möglichkeiten zum Ändern Ihres Passworts:

​ UPDATE Benutzer SET Passwort=PASSWORT('Testpass') WHERE Benutzer='Testbenutzer';

# mysqladmin -uroot -poldpass Passwort „newpass“

3. Knacken Sie das Administratorkennwort

Wiederherstellen von Passwörtern aus einer leeren Datenbank

  # systemctl stop mariadb
  # rm -rf /var/lib/mysql/* #Datenbank löschen und weglaufen # systemctl start mariadb

Passwort mit Daten wiederherstellen

1) Fügen Sie die Parameter „skip-grant-tables“ und „skip-networking“ unter [mydqld] in der Konfigurationsdatei /etc/my.cnf hinzu.

2) # systemctl restart MariaDB-Neustartdienst

3) Führen Sie MySQL aus, um sich bei der Datenbank anzumelden

4) MariaDB [(keine)]> UPDATE mysql.user SET password=PASSWORD('newpassword') WHERE user='root' AND host='localhost'; #Passwort aktualisieren

5) MariaDB [(keine)]> FLUSH PRIVILEGES; #Autorisierungstabelle aktualisieren

6) Beenden Sie den Dienst, ändern Sie die Konfigurationsdatei, löschen Sie die Parameter „skip-grant-tables“ und „skip-networking“ und starten Sie ihn neu. Sie können beim Starten des mysqld-Prozesses auch die folgenden Optionen dafür verwenden:

--skip-grant-tables

--skip-networking

2. Berechtigungsmanagement

1. Autorisierung

​ Syntax: GRANT priv_type ON [Objekttyp] priv_level TO Benutzer@'%' [IDENTIFIZIERT DURCH 'Passwort'] [MIT GRANT OPTION];

Wenn der Benutzer während der Autorisierung nicht existiert, wird er erstellt. Daher erstellen wir normalerweise keinen separaten Benutzer, sondern schließen die Autorisierungserstellung gleichzeitig ab.

priv_type Autorisierungstyp

-WÄHLEN

- EINFÜGEN

- AKTUALISIEREN

- LÖSCHEN

- ERSTELLEN

- FALLEN

-INDEX

-ÄNDERN

- ​DATENBANKEN ANZEIGEN

- ​Temporäre Tabellen erstellen

- TABELLEN VERRIEGELN

- ​ANSICHT ERSTELLEN

- ANSICHT ANZEIGEN

- BENUTZER ERSTELLEN

- ALLE PRIVILEGIEN oder ALLE

object_type Autorisierungsobjekt

-TISCH

- FUNKTION

- VERFAHREN

priv_level Autorisierungsstufe

- * oder *.* bedeutet alle Bibliotheken

- db_name.* bedeutet alle Tabellen in der angegebenen Datenbank

- db_name.tbl_name Die angegebene Tabelle in der angegebenen Bibliothek

- tbl_name gibt die Tabelle der aktuellen Bibliothek an

- db_name.routine_name gibt die Funktion, die gespeicherte Prozedur oder den Trigger der angegebenen Bibliothek an

MIT ZUSCHUSSOPTION

- MAX_QUERIES_PER_HOUR Anzahl

- MAX_UPDATES_PER_HOUR Anzahl

-MAX_CONNECTIONS_PER_HOUR Anzahl

-MAX_USER_CONNECTIONS Anzahl

MariaDB [Schule]> GRANT SELECT(stuid,name) ON TABLE school.students TO admin@'%' IDENTIFIED BY 'admin'; #Autorisieren Sie die Abfrageberechtigung für die Felder „stuid“ und „name“ der Tabelle „students“ für den Benutzer admin@'%'. MariaDB [Schule]> FLUSH PRIVILEGES; #Aktualisieren Sie die Autorisierungstabelle.

2. Autorisierung abfragen

MariaDB [Schule]> SHOW GRANTS FOR admin@'%'\G #Berechtigungen des angegebenen Benutzers anzeigen**************************** 1. Zeile ***************************
Berechtigungen für admin@%: GRANT USAGE ON *.* TO ‚admin‘@‚%‘ IDENTIFIED BY PASSWORD ‚*4ACFE3202A5FF5CF467898FC58AAB1D615029441‘
*************************** 2. Reihe ***************************
Zuschüsse für admin@%: GRANT SELECT (stuid, name) ON `school`.`students` TO 'admin'@'%'
[root@working ~]# mysql -uadmin -padmin -h192.168.0.7
MariaDB [(keine)]> SHOW GRANTS FOR CURRENT_USER()\G #Eigene Berechtigungen abfragen**************************** 1. Zeile ***************************
Berechtigungen für admin@%: GRANT USAGE ON *.* TO ‚admin‘@‚%‘ IDENTIFIED BY PASSWORD ‚*4ACFE3202A5FF5CF467898FC58AAB1D615029441‘
*************************** 2. Reihe ***************************
Zuschüsse für admin@%: GRANT SELECT (stuid, name) ON `school`.`students` TO 'admin'@'%'

3. Widerruf der Vollmacht

MariaDB [Schule]> REVOKE SELECT(stuid) ON school.students FROM admin@'%'; #Widerruf der Abfrageberechtigung des Benutzers admin@'%' für das Feld „stuid“

Zusammenfassen

Dies ist das Ende dieses Artikels über MySQL-Benutzer und -Autorisierung. Weitere relevante Inhalte zu MySQL-Benutzern und -Autorisierung finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • MySQL-Benutzererstellung und Autorisierungsmethode
  • MySql Benutzer hinzufügen, Autorisierung, Passwort ändern und andere Anweisungen
  • So erstellen, autorisieren und widerrufen Sie MySQL-Benutzer
  • Gemeinsame Nutzung von Methoden zum Anlegen neuer Benutzer und zur Autorisierung in MySQL
  • Methoden zur Benutzerautorisierung und Autorisierungslöschung in MySQL
  • MySQL-Datenbank erstellen, Benutzer hinzufügen, Benutzerautorisierung, praktische Methode
  • mysql5.7 Benutzerberechtigung erstellen Benutzer löschen Berechtigung widerrufen
  • MySql-Installations- und Konfigurationsmethode (MySQL-Benutzer hinzufügen, Benutzer löschen und Autorisierung)
  • Erstellen, Autorisieren, Löschen und Ändern von Passwörtern von MySQL-Benutzern in der WIN-Eingabeaufforderung
  • MySQL erstellt Benutzer, autorisiert Benutzer, widerruft Benutzerberechtigungen, ändert Benutzerkennwörter und löscht Benutzer (praktische Tipps)

<<:  Detaillierte Erklärung zum Festlegen des Kontextpfads in der Webanwendung

>>:  Die spezifische Verwendung von CSS-Attributen zur Optimierung der Frontend-Seitendarstellung wird sich ändern

Artikel empfehlen

Erläuterung der HTML-Tags

Erläuterung der HTML-Tags 1. HTML-Tags Tag: !DOCT...

Einführung in die Rolle des HTML-Doctypes

Der Dokumentmodus verfügt über die folgenden zwei ...

Erfahrung mit parallelen React-Funktionen (gleichzeitiger Front-End-Modus)

React ist eine Open-Source-JavaScript-Bibliothek,...

Vue und React im Detail

Inhaltsverzeichnis 1. Panorama II. Hintergrund 1....

Webdesign-Tutorial (1): Schritte und Gesamtlayout

<br /> Hinweis: Alle Texte, mit Ausnahme der...

JavaScript Snake-Implementierungscode

In diesem Artikelbeispiel wird der spezifische Ja...

Vue realisiert Click-Flip-Effekt

Verwenden Sie Vue, um einfach einen Click-Flip-Ef...

Informationen zur Layoutmethode für Inhaltsüberlauf in Tabellen

Was ist Inhaltsüberlauf? Wenn tatsächlich viel Te...

Detailliertes Tutorial zur Installation von Docker auf CentOS 8

1. Frühere Versionen yum entfernen Docker Docker-...

Vue simuliert die Warenkorb-Abrechnungsfunktion

In diesem Artikelbeispiel wird der spezifische Co...

Zusammenfassung der Vue3-Slot-Nutzung

Inhaltsverzeichnis 1. Einführung in den V-Slot 2....

XHTML-Tags sollten richtig verwendet werden

<br />In früheren Tutorials von 123WORDPRESS...