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
Vorwort: In MySQL wird die Funktion CONCAT() verw...
In einer komplexen Tabellenstruktur erstrecken si...
Kürzlich habe ich auf der Grover-Website eine lus...
Inhaltsverzeichnis 1. Umweltvorbereitung 2. Daten...
1. Benutzerdefinierte Textauswahl ::Auswahl { Hin...
In diesem Artikel wird der spezifische JavaScript...
In einigen Fällen müssen die Daten in den Daten w...
Ich bin vor Kurzem auf ein Problem gestoßen, als ...
Inhaltsverzeichnis Überblick Build-Prozess Verwan...
1. Schritte zur Installation des RPM-Pakets: 1. S...
Wirkungsprüfungsadresse: Tourplan (uplanok.com) C...
Inhaltsverzeichnis Beschränkung der Bezeichnerlän...
Über let, um Probleme durch Schließung zu vermeid...
Inhaltsverzeichnis Überblick Was ist die O-Notati...
Inhaltsverzeichnis Vorwort Zur APP-Methode spring...