Tutorial-Reihe MySQL-Reihe: Grundlegende Konzepte der relationalen MySQL-Datenbank 1. Benutzerverwaltung 1. BenutzerkontoDas Benutzerkonto besteht aus zwei Teilen: Benutzername und HOST ('USERNAME'@'HOST') HOST bedeutet:
Sie können Platzhalter, % und _ verwenden; 192.168.% bedeutet alle Hosts in diesem Netzwerksegment 2. Konten hinzufügen und löschenMain: 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 AdministratorkennwortWiederherstellen 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:
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
object_type Autorisierungsobjekt
priv_level Autorisierungsstufe
MIT ZUSCHUSSOPTION
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 abfragenMariaDB [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 VollmachtMariaDB [Schule]> REVOKE SELECT(stuid) ON school.students FROM admin@'%'; #Widerruf der Abfrageberechtigung des Benutzers admin@'%' für das Feld „stuid“ ZusammenfassenDies 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:
|
<<: Detaillierte Erklärung zum Festlegen des Kontextpfads in der Webanwendung
Erläuterung der HTML-Tags 1. HTML-Tags Tag: !DOCT...
Der Dokumentmodus verfügt über die folgenden zwei ...
React ist eine Open-Source-JavaScript-Bibliothek,...
Es gibt einige Unterschiede zwischen Filter und H...
Vorwort Wie Sie alle wissen, sind wir bei MySQL-B...
Inhaltsverzeichnis 1. Panorama II. Hintergrund 1....
<br /> Hinweis: Alle Texte, mit Ausnahme der...
In diesem Artikelbeispiel wird der spezifische Ja...
Verwenden Sie Vue, um einfach einen Click-Flip-Ef...
Was ist Inhaltsüberlauf? Wenn tatsächlich viel Te...
1. Frühere Versionen yum entfernen Docker Docker-...
In diesem Artikelbeispiel wird der spezifische Co...
Inhaltsverzeichnis 1. Einführung in den V-Slot 2....
<br />In früheren Tutorials von 123WORDPRESS...
Schritt 1: Erstellen Sie ein Django-Projekt Öffne...