Die Benutzertabelle befindet sich in einer Datenbank namens „mysql“. MySQL erstellt während der Installation automatisch eine Datenbank mit dem Namen „mysql“. Die Benutzertabelle ist die wichtigste Berechtigungstabelle in der MySQL-Datenbank und wird zum Aufzeichnen der Konten verwendet, die eine Verbindung zum Server herstellen dürfen. Alle in der Benutzertabelle aktivierten Berechtigungen sind global und gelten für alle Datenbanken.
Die Betriebsumgebung dieses Tutorials: Windows7-System, MySQL8-Version, Dell G3-Computer.
Die Benutzertabelle befindet sich in einer Datenbank namens „mysql“.
MySQL erstellt während der Installation automatisch eine Datenbank mit dem Namen MySQL. Die MySQL-Datenbank speichert Benutzerberechtigungstabellen. Nachdem sich der Benutzer angemeldet hat, erteilt MySQL jedem Benutzer entsprechende Berechtigungen basierend auf dem Inhalt dieser Berechtigungstabellen.
Die Benutzertabelle ist die wichtigste Berechtigungstabelle in MySQL und dient zum Aufzeichnen von Kontoinformationen, die eine Verbindung zum Server herstellen dürfen. Es ist zu beachten, dass alle in der Benutzertabelle aktivierten Berechtigungen global sind und für alle Datenbanken gelten.
Felder in der Benutzertabelle
Die Felder in der Benutzertabelle können grob in 4 Kategorien unterteilt werden, nämlich Benutzerspalten, Berechtigungsspalten, Sicherheitsspalten und Ressourcenkontrollspalten Felder dieser Felder Bedeutung.
Benutzerspalte
Die Benutzerspalte speichert die Informationen, die Benutzer eingeben müssen, wenn sie eine Verbindung zur MySQL-Datenbank herstellen. Es ist zu beachten, dass die MySQL-Version 5.7 nicht mehr „Password“ als Passwortfeld verwendet, sondern es in „authentication_string“ geändert hat.
Die Benutzerliste für MySQL Version 5.7 ist in Tabelle 1 dargestellt.
Feldname | Feldtyp | Ist es leer | Standardwert | Beschreibung |
---|---|---|---|---|
Host | char(60) | NEIN | Keine | Hostname |
Benutzer | char(32) | NEIN | Keine | Benutzername |
Authentifizierungszeichenfolge | Text | JA | N ein | Passwort |
Wenn sich ein Benutzer anmeldet und diese drei Felder gleichzeitig übereinstimmen, erlaubt ihm das MySQL-Datenbanksystem die Anmeldung. Beim Anlegen eines neuen Benutzers werden auch die Werte dieser drei Felder festgelegt. Wenn Sie das Kennwort eines Benutzers ändern, ändern Sie tatsächlich den Wert des Felds „authentication_string“ der Benutzertabelle. Daher bestimmen diese 3 Felder, ob sich der Benutzer anmelden kann.
Berechtigungsspalte
Die Felder in der Berechtigungsspalte bestimmen die Berechtigungen des Benutzers und werden verwendet, um die Vorgänge zu beschreiben, die für Daten und Datenbanken im globalen Bereich zulässig sind.
Berechtigungen werden grob in zwei Kategorien unterteilt, nämlich erweiterte Verwaltungsberechtigungen und normale Berechtigungen:
Die Berechtigungsspalten der Benutzertabelle umfassen Select_priv, Insert_priv und andere Felder, die mit priv enden. Die einzigen möglichen Werte sind Y und N: Y bedeutet, dass der Benutzer verfügt über die entsprechenden Berechtigungen, und N bedeutet, dass der Benutzer über die entsprechenden Berechtigungen verfügt. Es gibt keine entsprechenden Berechtigungen. Aus Sicherheitsgründen ist der Standardwert für diese Felder N.
Feldname | Feldtyp | Ob leer | Standardwert | Beschreibung | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Select_priv | enum('N','Y' ) ?? INSERT-Befehl 'Y') | NEIN | N | Ist es möglich, vorhandene Daten über den DELETE-Befehl zu löschen? um neue Datenbanken und Tabellen zu erstellen. N','Y') | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
N | Ist es möglich, bestimmte Befehle auszuführen, um die verschiedenen von MySQL verwendeten internen Caches zu leeren und neu zu laden, einschließlich Protokolle, Berechtigungen, Hosts, Abfragen und Tabellen | Shutdown_priv | enum('N','Y') | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
N | Ist es möglich, den MySQL-Server herunterzufahren? Sie sollten sehr vorsichtig sein, wenn Sie diese Berechtigung einem anderen Benutzer als dem Root-Konto erteilen PROCESSLIST-Befehl Der Prozess anderer Benutzer leFile_priv | enum ('n', 'y') | Nein | n | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Grant_priv | enum (' 'N','Y') | NEIN | N | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Ist es möglich, Prüfungen zum Hinzufügen und Löschen des Index durchzuführen? umbenannt und geändert | Show_db_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NO | N | Kann der Server angezeigt werden? Name aller Datenbanken auf | Super_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Ist es möglich, bestimmte leistungsstarke Verwaltungsfunktionen auszuführen, z. B. solche, für die der Benutzer über ausreichende Zugriffsrechte verfügt? Verwenden Sie den Befehl SET GLOBAL um globale MySQL-Variablen zu ändern und verschiedene Befehle zur Replikation und Protokollierung auszuführen. (Super-Berechtigungen) | Create_tmp_table_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Ist es möglich, temporäre Tabellen zu erstellen | Lock_tables_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Ist es möglich, den Befehl LOCK TABLES zu verwenden, um den Zugriff/die Änderung von Tabellen zu verhindern? | Ob die gespeicherte Prozedur | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enum('N','Y') | NEIN | N | die Binärprotokolldatei lesen kann, die zum Verwalten einer replizierten Datenbankumgebung verwendet wird | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enum( 'N','Y') | NEIN | N | Ist es möglich, den Standort des Replikations-Slave-Servers und des Master-Servers zu bestimmen | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enum('N','Y' ) | NEIN | N | Ist es möglich, eine Ansicht zu erstellen? | Create_routine_priv | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Können gespeicherte Prozeduren und Funktionen geändert oder verworfen werden | Alter_routine_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Kann der Speicher geändert oder gelöscht werden? Funktionen und Funktionen | Create_user_priv | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
NEIN | N | Ob es möglich ist, CREATE USER auszuführen Befehl, der zum Erstellen eines neuen MySQL-Kontos verwendet wird. | Event_priv | enum('N','Y')||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
N | Ist es möglich, Trigger zu erstellen und zu löschen? | Ist es möglich, einen Tablespace zu erstellen |
Feldname | Feldtyp | Ob es leer ist | Standardwert | Beschreibung |
---|---|---|---|---|
ssl_type | enum('','ANY','X509','SPECIFIED') | NEIN | Unterstütztes SSL-Standard-Verschlüsselungssicherheitsfeld | |
ssl_cipher | blob | NEIN | Unterstütztes SSL-Standard-Verschlüsselungssicherheitsfeld | |
x509_issuer | blob | NEIN | Unterstützt x509-Standardfelder | |
x509_subject | Blob | NEIN | Unterstützt x509-Standardfelder | |
plugin | char(64) | NEIN | mysql_n ative_password | Führt Plugins zur Passwortüberprüfung ein, wenn Benutzer eine Verbindung herstellen, Plugins erstellen externe /Proxy-Benutzer |
password_expired | enum('N','Y') | NO | N | Ist das Passwort abgelaufen (N ist nicht abgelaufen, y ist abgelaufen) |
password_last_changed | Zeitstempel | JA | Notieren Sie die Zeit, zu der das Passwort zuletzt geändert wurde. | |
password_lifetime | account_lockedenum ('N','Y' ) | NEIN | N | Ob der Benutzer gesperrt ist (Y gesperrt, N entsperrt) |
Hinweis: Auch wenn „password_expired“ „Y“ ist, kann der Benutzer das weiterhin verwenden Passwort für die Anmeldung bei MySQL, es sind jedoch keine Vorgänge erlaubt. | Normalerweise unterstützen Standarddistributionen kein SSL. Leser können die SHOW VARIABLES LIKE „have_openssl“-Anweisung verwenden, um zu überprüfen, ob sie über SSL-Funktionalität verfügen. Wenn der Wert von have_openssl DISABLED ist, wird die SSL-Verschlüsselungsfunktion nicht unterstützt. | Ressourcenkontrollspalte |
Feldname
Feldtyp
Ob leer
int (11) unsigniert | NEIN | 0 | Gibt die Anzahl der pro Stunde zulässigen Abfragevorgänge an | |
---|---|---|---|---|
int(11) unsigned | NEIN | 0 | Gibt die Anzahl der pro Stunde zulässigen Aktualisierungsvorgänge an | |
int(11) unsigned | NO | 0 | Gibt die Anzahl der Verbindungsvorgänge an, die pro Stunde ausgeführt werden dürfen Anzahl von Verbindungen dürfen gleichzeitig hergestellt werden | |
Der Standardwert der oben genannten Felder ist 0, was bedeutet, dass es keine Begrenzung gibt. Wenn die Anzahl der Benutzeranfragen oder -verbindungen innerhalb einer Stunde das Ressourcenkontrolllimit überschreitet, wird der Benutzer gesperrt und kann hier bis zur nächsten Stunde keine entsprechenden Vorgänge ausführen. Die Werte dieser Felder können mit der GRANT-Anweisung aktualisiert werden. | So greifen Sie auf die Benutzertabelle zu | 1. Stellen Sie eine Verbindung zur MySQL-Datenbank her und zeigen Sie alle Standarddatenbankinformationen an | ||
2. Da die Benutzertabelle in der MySQL-Datenbank vorhanden ist, können Sie die Datenbank wechseln über den use-Befehl | Nachdem Sie die Datenbank gewechselt haben, können Sie alle Datentabellen in der Datenbank über den show-Befehl anzeigen. Am Ende können Sie die Benutzerdatentabelle sehen |
In dem Fall, in dem standardmäßig keine anderen Benutzer erstellt werden, gibt es nur die Informationen zum Superadministrator
[Verwandte Empfehlungen:
MySQL-Video-Tutorial]
Das obige ist der detaillierte Inhalt vonWo ist die Benutzertabelle von MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!