Berechtigungen und Datenbankdesign Benutzerverwaltung
/* Benutzer- und Berechtigungsverwaltung */ ------------------ Benutzerinformationstabelle: mysql.user -- FLUSH-PRIVILEGIEN -- Benutzer hinzufügen CREATE USER kuangshen IDENTIFIED BY '123456' CREATE USER Benutzername IDENTIFIED BY [PASSWORT] Passwort (Zeichenfolge) – Sie müssen über das globale CREATE USER-Privileg für die MySQL-Datenbank oder über das INSERT-Privileg verfügen. - Kann nur Benutzer erstellen, kann aber keine Berechtigungen erteilen. - Benutzername, beachten Sie die Anführungszeichen: zB 'Benutzername'@'192.168.1.1' - Das Passwort muss ebenfalls in Anführungszeichen gesetzt werden, und rein numerische Passwörter müssen ebenfalls in Anführungszeichen gesetzt werden. - Um das Passwort im Klartext anzugeben, lassen Sie das Schlüsselwort PASSWORD weg. Um das Kennwort als Hashwert anzugeben, der von der Funktion PASSWORD() zurückgegeben wird, schließen Sie das Schlüsselwort PASSWORD ein. -- Benutzer umbenennen BENUTZER kuangshen in kuangshen2 umbenennen BENENNEN SIE BENUTZER ALT_BENUTZER IN NEUER_BENUTZER UM -- Passwort festlegen SET PASSWORD = PASSWORD('Passwort') -- Passwort für aktuellen Benutzer festlegen SET PASSWORD FOR Benutzername = PASSWORD('Passwort') -- Passwort für angegebenen Benutzer festlegen -- Benutzer löschen DROP USER kuangshen2 DROP USER Benutzername -- Berechtigungen zuweisen/Benutzer hinzufügen GRANT Berechtigungsliste ON Tabellenname TO Benutzername [IDENTIFIED BY [PASSWORT] 'Passwort'] – Alle Berechtigungen bedeutet alle Berechtigungen – *.* bedeutet alle Tabellen in allen Bibliotheken – Bibliotheksname.Tabellenname bedeutet eine Tabelle unter einer Bibliothek – Berechtigungen anzeigen SHOW GRANTS FOR root@localhost; GRANTS FÜR Benutzernamen ANZEIGEN – aktuelle Benutzerberechtigungen anzeigen GRANTS ANZEIGEN; oder GRANTS FÜR CURRENT_USER ANZEIGEN; oder GRANTS FÜR CURRENT_USER ANZEIGEN(); -- Berechtigungen widerrufen REVOKE permission list ON table name FROM user name REVOKE ALL PRIVILEGES, GRANT OPTION FROM user name -- Alle Berechtigungen widerrufen
-- Berechtigungsliste ALL [PRIVILEGES] -- Alle einfachen Berechtigungen außer GRANT OPTION ALTER setzen -- Verwendung von ALTER TABLE erlauben ALTER ROUTINE – Ändern oder Löschen einer gespeicherten Prozedur CREATE – Aktivieren der Verwendung von CREATE TABLE CREATE ROUTINE -- eine gespeicherte Routine erstellen CREATE TEMPORARY TABLES -- Verwendung von CREATE TEMPORARY TABLE zulassen BENUTZER ERSTELLEN – Ermöglicht die Verwendung der Funktionen „BENUTZER ERSTELLEN“, „BENUTZER LÖSCHEN“, „BENUTZER UMBENENNEN“ und „ALLE PRIVILEGIEN WIDERRUFEN“. CREATE VIEW -- Ermöglicht die Verwendung von CREATE VIEW DELETE -- Ermöglicht die Verwendung von DELETE DROP - Ermöglicht die Verwendung von DROP TABLE EXECUTE -- Ermöglicht dem Benutzer, eine gespeicherte Prozedur auszuführen. FILE -- Ermöglicht die Verwendung von SELECT ... INTO OUTFILE und LOAD DATA INFILE. INDEX - Ermöglicht die Verwendung von CREATE INDEX und DROP INDEX INSERT -- Ermöglicht die Verwendung von INSERT LOCK TABLES – Ermöglicht Ihnen, LOCK TABLES auf Tabellen anzuwenden, für die Sie über SELECT-Berechtigungen verfügen. PROZESS - Aktivieren Sie die Verwendung von „Vollständige Prozessliste anzeigen“. REFERENCES -- nicht implementiert RELOAD -- FLUSH ist erlaubt REPLICATION CLIENT -- ermöglicht dem Benutzer, die Adresse eines Slave- oder Master-Servers anzufordern. REPLICATION SLAVE -- für Replikations-Slave-Server (liest Binärlog-Ereignisse vom Master-Server) SELECT -- Ermöglicht die Verwendung von SELECT SHOW DATABASES -- Zeigt alle Datenbanken an SHOW VIEW -- Ermöglicht die Verwendung von SHOW CREATE VIEW SHUTDOWN – ermöglicht die Verwendung von mysqladmin shutdown SUPER – Ermöglicht die Verwendung der Anweisungen CHANGE MASTER, KILL, PURGE MASTER LOGS und SET GLOBAL sowie des Debug-Befehls mysqladmin; ermöglicht Ihnen die (einmalige) Verbindung, auch wenn die Anzahl der Verbindungen erreicht wurde. UPDATE -- Ermöglicht die Verwendung von UPDATE USAGE - Synonym für "keine Privilegien" GRANT OPTION - Gewährung von Privilegien erlauben /* Tabellenwartung */ --Analysieren und speichern Sie die Schlüsselwortverteilung der Tabelle ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE Tabellenname… -- Überprüfen Sie eine oder mehrere Tabellen auf Fehler CHECK TABLE tbl_name [, tbl_name] ... [Option] ... Option = {SCHNELL | SCHNELL | MITTEL | ERWEITERT | GEÄNDERT} -- Defragmentieren Sie die Datendatei OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ... MySQL-SicherungNotwendigkeit einer Datenbanksicherung
MySQL-Datenbank-Sicherungsmethode
mysqldump-Client Wirkung:
-- Exportieren 1. Exportieren Sie eine Tabelle -- mysqldump -uroot -p123456 school student >D:/a.sql mysqldump -u Benutzername -p Passwort Datenbankname Tabellenname > Dateiname (D:/a.sql) 2. Mehrere Tabellen exportieren -- mysqldump -uroot -p123456 school student result >D:/a.sql mysqldump -u Benutzername -p Passwort Datenbankname Tabelle 1 Tabelle 2 Tabelle 3 > Dateiname (D:/a.sql) 3. Exportieren Sie alle Tabellen --mysqldump -uroot -p123456 school >D:/a.sql mysqldump -u Benutzername -p Passwort Datenbankname > Dateiname (D:/a.sql) 4. Exportieren Sie eine Bibliothek -- mysqldump -uroot -p123456 -B school >D:/a.sql mysqldump -u Benutzername -p Passwort -B Datenbankname > Dateiname (D:/a.sql) Sie können -w verwenden, um Sicherungsbedingungen zu übernehmen -- Importieren 1. Beim Anmelden bei mysql: -- Quelle D:/a.sql Quell-Backup-Datei 2. Ohne Anmeldung mysql -u Benutzername -p Passwort Datenbankname < Backup-Datei Normalisiertes DatenbankdesignWarum brauchen wir Datenbankdesign?Wenn die Datenbank komplex ist, müssen wir die Datenbank entwerfen Schlechtes Datenbankdesign:
Gutes Datenbankdesign:
Datenbankdesign im Softwareprojektentwicklungszyklus:
Schritte zum Entwerfen einer Datenbank
Drei ParadigmenFrage: Warum ist eine Datennormalisierung notwendig? Probleme, die durch unsachgemäßes Tabellendesign verursacht werden:
Erste Normalform (1. NF) Das Ziel des ersten Paradigmas besteht darin, die Atomizität jeder Spalte sicherzustellen. Wenn jede Spalte die kleinste unteilbare Dateneinheit ist, ist das erste Paradigma erfüllt. Zweite Normalform (2. NF) Die zweite Normalform (2NF) basiert auf der ersten Normalform (1NF), d. h. um die zweite Normalform (2NF) zu erfüllen, muss zuerst die erste Normalform (1NF) erfüllt sein. Das zweite Paradigma erfordert, dass jede Tabelle nur eine Sache beschreibt Dritte Normalform (3. NF) Eine Relation befindet sich in der dritten Normalform, wenn sie in der zweiten Normalform vorliegt und keine anderen Spalten als der Primärschlüssel transitiv von den Primärschlüsselspalten abhängig sind. Das dritte Paradigma erfordert die Gewährleistung, dass jede Datenspalte in der Datentabelle direkt und nicht indirekt mit dem Primärschlüssel verknüpft ist. Die Beziehung zwischen Normalisierung und Leistung Um bestimmte Geschäftsziele zu erreichen, ist die Datenbankleistung wichtiger als die Normalisierung der Datenbank Bei der Normalisierung von Daten sollte die Leistungsfähigkeit der Datenbank umfassend berücksichtigt werden. Durch das Hinzufügen zusätzlicher Felder zu einer bestimmten Tabelle können Sie den Zeitaufwand für die Suche nach Informationen darin erheblich reduzieren. Durch das Einfügen berechneter Spalten in eine gegebene Tabelle ist es einfacher abzufragen Dies ist das Ende dieses Artikels über MySQL-Berechtigungen und Datenbankdesignfälle. Weitere Informationen zu MySQL-Berechtigungen und Datenbankdesign finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Podman bootet den Container automatisch und vergleicht ihn mit Docker
>>: Reines CSS zum Ändern der Layoutgröße durch Ziehen nach links und rechts
Inhaltsverzeichnis 1. Einführung in die Grundfunk...
Inhaltsverzeichnis Eröffnungsszene Direktes Rende...
Vorwort Aufgrund von Bandbreitenbeschränkungen un...
Dieser Artikel beschreibt, wie man das Linux-Syst...
Der erste Schritt besteht darin, einen MySQL-Cont...
Vor kurzem wollte ich natives JS verwenden, um ei...
Inhaltsverzeichnis 1. Erstellen Sie einen Socket ...
1. Medienabfragemethode /*iPhone X-Anpassung*/ @m...
Es ist Nationalfeiertag und jeder kann es kaum er...
Da der Standard-AB nur Stresstests für eine einze...
Heute habe ich beim Testen des Nullwertes ein kle...
Werfen wir einen Blick auf das dynamische Spleiße...
js realisiert den Spezialeffekt des Klickens und ...
Hintergrund Um die Docker-Containerisierung währe...
Inhaltsverzeichnis 1. Einführung in den Implement...