suchen
HeimDatenbankMySQL-TutorialDetaillierte Erläuterung der Berechtigungsverwaltung beim MySQL-Lernen

Die Bedeutung von Datenbankberechtigungen:

Um sicherzustellen, dass die Geschäftsdaten in der Datenbank nicht illegal von unbefugten Benutzern gestohlen werden, müssen den Besuchern der Datenbank verschiedene Einschränkungen auferlegt werden, und Datenbank SicherheitEs gibt hauptsächlich drei Arten von Sicherheitskontrollmaßnahmen. Die erste ist die Authentifizierung der Benutzeridentität, bei der es sich um ein Passwort, eine Magnetkarte, einen Fingerabdruck und andere Technologien handeln kann Datenbank. Die zweite Art der Zugriffsberechtigungskontrolle. Verschiedene Rollen haben unterschiedliche Zugriffsberechtigungen für die Datenbank Objekte und Berechtigungen, auf die sie zugreifen, müssen für jede Rolle festgelegt werden. Der dritte Typ besteht darin, ein Managementsystem für die Datenbankverwaltung zu formulieren. Das System beschränktdas Verhalten und kann so sicherstellen, dass die Daten ordnungsgemäß verarbeitet werden Menschen zur richtigen Zeit.

MySQLDie Prüfung der Benutzerberechtigungen ist in zwei Stufen unterteilt

1. Ob eine Verbindung mit dem MySQL-Server hergestellt werden kann

Ob Es gibt bestimmte Betriebsberechtigungen (z. B.: Datum auswählen usw.)

1. Stellen Sie eine Verbindung mit dem MySQL-Server her

Wie Überprüft der MySQL-Server, ob der Benutzer einen Link herstellen kann

Überprüfen Sie, woher Sie kommen

Wer sind Sie?

ord

So verknüpfen Sie eine Verbindung zu MySQL: C:UsersPC003>mysql -h192.168.6.223 -uroot -pjalja

Parametererklärung: -h: Wo soll die Verbindung hergestellt werden

-u: Benutzer

  -p: Passwort

host=localhost bedeutet, dass Sie den Standardhost für die Verknüpfung verwenden können (C:UsersPC003>mysql -uroot -pjalja, C:UsersPC003>mysql -hlocalhost -uroot -pjalja, C:UsersPC003>mysql -h127.0.0.1 -uroot -pjalja)
mysql> select user,host,password from user;
+------+-----------+-------------------------------------------+
| user | host      | password                                  |
+------+-----------+-------------------------------------------+
| root | localhost | *CFAFE434FB0E5D64538901E668E1EACD077A54DF |
| root | %         | *CFAFE434FB0E5D64538901E668E1EACD077A54DF |
+------+-----------+-------------------------------------------+

host=% bedeutet, dass der Server Verbindungen zu allen Hosts herstellen kann in einem lokalen Netzwerk (öffentliches Netzwerk), in dem es sich befindet. Diese Methode ist in einer Produktionsumgebung nicht sicher.


host=192.168.6.224 bedeutet, dass der Server nur eine Verbindung mit dem 192.168.6.224-Host C herstellen kann: UsersPC003>mysql -h192.168.6.223 -uroot -pjalja

So ändern Sie den Host:

mysql> Flush-Berechtigungen (da die geänderte Daten befinden sich im Speicher und müssen jedes Mal aktualisiert werden, wenn Vorgänge im Zusammenhang mit Benutzerrechten ausgeführt werden)
mysql> update user set host='192.168.6.223' where user ='root'

Passwort ändern:

mysql> update user set password=password('111111') where user='root';
mysql> flush privileges;
2 Überprüfen Sie die Berechtigungen in MySQL

Es gibt eine MySQL-Bibliothek in MySQL und den Benutzer unter dieser Bibliothek. Die Tabelle prüft, ob der Benutzer existiert, die Datenbanktabelle prüft, welche Betriebsberechtigungen der Benutzer für welche Bibliotheken hat und die Die Tabelle tables_priv prüft, welche Betriebsberechtigungen der Benutzer für diese Tabellen hat.

Benutzer erstellen und autorisieren:

Gewähren Sie [Berechtigung 1, Berechtigung 2] auf *.* an Benutzer@'Host', identifiziert durch 'Passwort';

Allgemeine Berechtigungen: alle, erstellen, löschen, einfügen, löschen, aktualisieren, auswählen

Zum Beispiel: Erteilen Sie dem Benutzer ls alle Berechtigungen für alle Datenbanken und alle Tabellen und können Sie sich von jedem Host in diesem LAN aus anmelden Segment.

Verwenden Sie diesen Benutzer zum Anmelden: C:UsersPC003>mysql -h192.168.6.223 -uls -p111111;
mysql> grant all on *.* to 'ls'@'192.168.6.%' identified by '111111';


Sehen Sie sich die spezifischen Berechtigungen des ls-Benutzers an:

Berechtigungswiederherstellung: alle Berechtigungen von ls widerrufen
mysql> select * from  mysql.user where user='ls' \G;
*************************** 1. row ***************************
                  Host: 192.168.6.%
                  User: ls
              Password: *FD571203974BA9AFE270FE62151AE967ECA5E0AA
           Select_priv: Y
           Insert_priv: Y
           Update_priv: Y
           Delete_priv: Y
           Create_priv: Y
             Drop_priv: Y
           Reload_priv: Y
         Shutdown_priv: Y
          Process_priv: Y
             File_priv: Y
            Grant_priv: N
       References_priv: Y
            Index_priv: Y
            Alter_priv: Y
          Show_db_priv: Y
            Super_priv: Y
 Create_tmp_table_priv: Y
      Lock_tables_priv: Y
          Execute_priv: Y
       Repl_slave_priv: Y
      Repl_client_priv: Y
      Create_view_priv: Y
        Show_view_priv: Y
   Create_routine_priv: Y
    Alter_routine_priv: Y
      Create_user_priv: Y
            Event_priv: Y
          Trigger_priv: Y
Create_tablespace_priv: Y
              ssl_type:
            ssl_cipher:
           x509_issuer:
          x509_subject:
         max_questions: 0
           max_updates: 0
       max_connections: 0
  max_user_connections: 0
                plugin:
 authentication_string: NULL

mysql> alle Berechtigungen für *.* von ls@'192.168.6.%';

Autorisieren Sie jemandem Berechtigungen für die Datenbank:

mysql> gewähren Sie alle Berechtigungen für den Blog.* an ls@'192.168.6.%';

Auf diese Weise verfügt der ls-Benutzer nicht über Berechtigungen in der Benutzertabelle. Zu diesem Zeitpunkt wird eine Berechtigungsprüfung auf Datenbankebene durchgeführt

Alle Berechtigungen wiederherstellen des ls-Benutzers und erteilen Sie Berechtigungen für eine bestimmte Tabelle: Gewähren Sie Crud-Berechtigungen für die Benutzertabelle in der ls-Benutzer-Blogbibliothek
mysql> select * from  mysql.db where user='ls' 
\G;*************************** 1. row ***************************
                 Host: 192.168.6.%
                   Db: blog                 
                   User: ls
          Select_priv: Y
          Insert_priv: Y
          Update_priv: Y
          Delete_priv: Y
          Create_priv: Y
            Drop_priv: Y
           Grant_priv: N
      References_priv: Y
           Index_priv: Y
           Alter_priv: Y
Create_tmp_table_priv: Y
     Lock_tables_priv: Y
     Create_view_priv: Y
       Show_view_priv: Y
  Create_routine_priv: Y
   Alter_routine_priv: Y
         Execute_priv: Y
           Event_priv: Y
         Trigger_priv: Y

Auf diese Weise hat der ls-Benutzer keine Berechtigungen am Datenbankebene. Zu diesem Zeitpunkt wird die Berechtigungsprüfung auf der Ebene tables_priv durchgeführt:

mysql> revoke all on *.* from ls@'192.168.6.%';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

mysql> grant insert,update,select,delete on blog.user to ls@'192.168.6.%';
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

MySQL-Berechtigungskontrollprozess:
mysql> select * from  mysql.tables_priv where user='ls' 
\G;*************************** 1. row ***************************
       Host: 192.168.6.%
         Db: blog       
         User: ls
 Table_name: user
    Grantor: root@localhost
  Timestamp: 2017-02-09 14:35:38
 Table_priv: Select,Insert,Update,DeleteColumn_priv:1 row in set (0.00 sec)


Hinweis: Die MySQL-Berechtigungsprüfung kann für eine bestimmte Datenspalte genau sein.

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung der Berechtigungsverwaltung beim MySQL-Lernen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
MySQLs Rolle: Datenbanken in WebanwendungenMySQLs Rolle: Datenbanken in WebanwendungenApr 17, 2025 am 12:23 AM

Die Hauptaufgabe von MySQL in Webanwendungen besteht darin, Daten zu speichern und zu verwalten. 1.Mysql verarbeitet effizient Benutzerinformationen, Produktkataloge, Transaktionsunterlagen und andere Daten. 2. Durch die SQL -Abfrage können Entwickler Informationen aus der Datenbank extrahieren, um dynamische Inhalte zu generieren. 3.Mysql arbeitet basierend auf dem Client-Server-Modell, um eine akzeptable Abfragegeschwindigkeit sicherzustellen.

MySQL: Erstellen Sie Ihre erste DatenbankMySQL: Erstellen Sie Ihre erste DatenbankApr 17, 2025 am 12:22 AM

Zu den Schritten zum Erstellen einer MySQL -Datenbank gehören: 1. Erstellen einer Datenbank und Tabelle, 2. Daten einfügen, und 3. Durchführen von Abfragen. Verwenden Sie zunächst die Anweisungen für erstellte und creatEtable, um die Datenbank und Tabelle zu erstellen, und verwenden Sie dann die Anweisung InsertInto, um die Daten einzulegen, und verwenden Sie schließlich die Auswahlanweisung, um die Daten abzufragen.

MySQL: Ein anfängerfreundlicher Ansatz zur DatenspeicherungMySQL: Ein anfängerfreundlicher Ansatz zur DatenspeicherungApr 17, 2025 am 12:21 AM

MySQL ist für Anfänger geeignet, da es einfach zu bedienen und leistungsfähig ist. 1.Mysql ist eine relationale Datenbank und verwendet SQL für CRUD -Operationen. 2. Es ist einfach zu installieren und erfordert, dass das Stammbenutzerkennwort konfiguriert wird. 3.. Verwenden Sie Einfügen, Aktualisieren, Löschen und Wählen Sie, um Datenvorgänge auszuführen. 4. OrderBy, wo und Join kann für komplexe Abfragen verwendet werden. 5. Debugging erfordert die Überprüfung der Syntax und verwenden Sie Erklärungen zur Analyse der Abfrage. 6. Die Optimierungsvorschläge umfassen die Verwendung von Indizes, die Auswahl des richtigen Datentyps und der guten Programmiergewohnheiten.

Ist MySQL Anfänger-freundlich? Bewertung der LernkurveIst MySQL Anfänger-freundlich? Bewertung der LernkurveApr 17, 2025 am 12:19 AM

MySQL ist für Anfänger geeignet, weil: 1) Einfach zu installieren und konfigurieren, 2) Rich Learning Resources, 3) Intuitive SQL -Syntax, 4) leistungsstarke Toolunterstützung. Anfänger müssen jedoch Herausforderungen wie Datenbankdesign, Abfrageoptimierung, Sicherheitsmanagement und Datensicherung überwinden.

Ist SQL eine Programmiersprache? Klärung der TerminologieIst SQL eine Programmiersprache? Klärung der TerminologieApr 17, 2025 am 12:17 AM

Ja, sqlisaprogrammingLuagespezialisierteForDatamanagement.1) Es ist dieklarativ, fokussierte Waagewhattoachieveratherthanhow.2)

Erklären Sie die Säureeigenschaften (Atomizität, Konsistenz, Isolation, Haltbarkeit).Erklären Sie die Säureeigenschaften (Atomizität, Konsistenz, Isolation, Haltbarkeit).Apr 16, 2025 am 12:20 AM

Säureattribute umfassen Atomizität, Konsistenz, Isolation und Haltbarkeit und sind der Eckpfeiler des Datenbankdesigns. 1. Atomizität stellt sicher, dass die Transaktion entweder vollständig erfolgreich oder vollständig gescheitert ist. 2. Konsistenz stellt sicher, dass die Datenbank vor und nach einer Transaktion konsistent bleibt. 3. Isolation stellt sicher, dass sich Transaktionen nicht stören. 4. Persistenz stellt sicher, dass Daten nach der Transaktionsuntersuchung dauerhaft gespeichert werden.

MySQL: Datenbankverwaltungssystem vs. ProgrammierspracheMySQL: Datenbankverwaltungssystem vs. ProgrammierspracheApr 16, 2025 am 12:19 AM

MySQL ist nicht nur ein Datenbankverwaltungssystem (DBMS), sondern auch eng mit Programmiersprachen zusammen. 1) Als DBMS wird MySQL verwendet, um Daten zu speichern, zu organisieren und abzurufen und Indizes zu optimieren, können die Abfrageleistung verbessern. 2) Kombinieren Sie SQL mit Programmiersprachen, eingebettet in Python, und unter Verwendung von ORM -Tools wie SQLalchemy kann die Operationen vereinfachen. 3) Die Leistungsoptimierung umfasst Indexierung, Abfrage, Caching, Bibliothek und Tabellenabteilung und Transaktionsmanagement.

MySQL: Verwalten von Daten mit SQL -BefehlenMySQL: Verwalten von Daten mit SQL -BefehlenApr 16, 2025 am 12:19 AM

MySQL verwendet SQL -Befehle, um Daten zu verwalten. 1. Grundlegende Befehle umfassen Auswahl, Einfügen, Aktualisieren und Löschen. 2. Die erweiterte Verwendung umfasst die Funktionen, Unterabfragen und Aggregate. 3. Häufige Fehler sind Syntax-, Logik- und Leistungsprobleme. 4. Die Optimierungstipps umfassen die Verwendung von Indizes, die Vermeidung von Auswahl* und die Verwendung von Limit.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

EditPlus chinesische Crack-Version

EditPlus chinesische Crack-Version

Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft