Inhaltsverzeichnis
Benutzerverwaltung
Erleichtert die Entwicklung von Datenbankanwendungssystemen
Heim Datenbank MySQL-Tutorial Wie entwerfe ich die Datenbank und erteile Berechtigungen?

Wie entwerfe ich die Datenbank und erteile Berechtigungen?

Jul 07, 2021 am 09:14 AM
Datenbank

In der Datenbank können wir viele Dinge tun, z. B. Benutzern Berechtigungen erteilen, die Datenbank entwerfen usw. Heute stellen wir vor, wie man eine Datenbank entwirft und Berechtigungen erteilt.

Wie entwerfe ich die Datenbank und erteile Berechtigungen?

Datenbank für Berechtigungen und Design

Benutzerverwaltung

Verwenden Sie SQLyog, um Benutzer zu erstellen und Berechtigungen zu erteilen. Demonstration.

Grundlegende Befehle

/* 用户和权限管理 */ ------------------
用户信息表:mysql.user

-- 刷新权限
FLUSH PRIVILEGES
 
-- 增加用户  CREATE USER kuangshen IDENTIFIED BY '123456'
CREATE USER 用户名 IDENTIFIED BY [PASSWORD] 密码(字符串)
    - 必须拥有mysql数据库的全局CREATE USER权限,或拥有INSERT权限。
    - 只能创建用户,不能赋予权限。
    - 用户名,注意引号:如 'user_name'@'192.168.1.1'
    - 密码也需引号,纯数字密码也要加引号
    - 要在纯文本中指定密码,需忽略PASSWORD关键词。要把密码指定为由PASSWORD()函数返回的混编值,需包含关键字PASSWORD

-- 重命名用户  RENAME USER kuangshen TO kuangshen2
RENAME USER old_user TO new_user

-- 设置密码
SET PASSWORD = PASSWORD('密码')    -- 为当前用户设置密码
SET PASSWORD FOR 用户名 = PASSWORD('密码')    -- 为指定用户设置密码

-- 删除用户  DROP USER kuangshen2
DROP USER 用户名

-- 分配权限/添加用户
GRANT 权限列表 ON 表名 TO 用户名 [IDENTIFIED BY [PASSWORD] 'password']
    - all privileges 表示所有权限
    - *.* 表示所有库的所有表
    - 库名.表名 表示某库下面的某表

-- 查看权限   SHOW GRANTS FOR root@localhost;
SHOW GRANTS FOR 用户名
    -- 查看当前用户权限
    SHOW GRANTS; 或 SHOW GRANTS FOR CURRENT_USER; 或 SHOW GRANTS FOR CURRENT_USER();

-- 撤消权限
REVOKE 权限列表 ON 表名 FROM 用户名
REVOKE ALL PRIVILEGES, GRANT OPTION FROM 用户名    -- 撤销所有权限
MySQL Backup

Datenbank Notwendigkeit einer Sicherung

Stellen Sie sicher, dass wichtige Daten nicht verloren gehen.

  • Datenübertragung

  • Kopieren die Datenbank direkt Dateien und zugehörige Konfigurationsdateien

mysqldump-Client

  • Funktion:

  • Datenbank sichern

  • Datenbank zur Sicherung sammeln

Daten auf einen anderen SQL-Server übertragen, nicht unbedingt auf MySQL Server

-- 权限列表
ALL [PRIVILEGES]    -- 设置除GRANT OPTION之外的所有简单权限
ALTER    -- 允许使用ALTER TABLE
ALTER ROUTINE    -- 更改或取消已存储的子程序
CREATE    -- 允许使用CREATE TABLE
CREATE ROUTINE    -- 创建已存储的子程序
CREATE TEMPORARY TABLES        -- 允许使用CREATE TEMPORARY TABLE
CREATE USER        -- 允许使用CREATE USER, DROP USER, RENAME USER和REVOKE ALL PRIVILEGES。
CREATE VIEW        -- 允许使用CREATE VIEW
DELETE    -- 允许使用DELETE
DROP    -- 允许使用DROP TABLE
EXECUTE        -- 允许用户运行已存储的子程序
FILE    -- 允许使用SELECT...INTO OUTFILE和LOAD DATA INFILE
INDEX     -- 允许使用CREATE INDEX和DROP INDEX
INSERT    -- 允许使用INSERT
LOCK TABLES        -- 允许对您拥有SELECT权限的表使用LOCK TABLES
PROCESS     -- 允许使用SHOW FULL PROCESSLIST
REFERENCES    -- 未被实施
RELOAD    -- 允许使用FLUSH
REPLICATION CLIENT    -- 允许用户询问从属服务器或主服务器的地址
REPLICATION SLAVE    -- 用于复制型从属服务器(从主服务器中读取二进制日志事件)
SELECT    -- 允许使用SELECT
SHOW DATABASES    -- 显示所有数据库
SHOW VIEW    -- 允许使用SHOW CREATE VIEW
SHUTDOWN    -- 允许使用mysqladmin shutdown
SUPER    -- 允许使用CHANGE MASTER, KILL, PURGE MASTER LOGS和SET GLOBAL语句,mysqladmin debug命令;允许您连接(一次),即使已达到max_connections。
UPDATE    -- 允许使用UPDATE
USAGE    -- “无权限”的同义词
GRANT OPTION    -- 允许授予权限


/* 表维护 */

-- 分析和存储表的关键字分布
ANALYZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE 表名 ...
-- 检查一个或多个表是否有错误
CHECK TABLE tbl_name [, tbl_name] ... [option] ...
option = {QUICK | FAST | MEDIUM | EXTENDED | CHANGED}
-- 整理数据文件的碎片
OPTIMIZE [LOCAL | NO_WRITE_TO_BINLOG] TABLE tbl_name [, tbl_name] ...
    Normalisiertes Datenbankdesign
  • Warum Datenbankdesign benötigt wird

  • Wenn die Datenbank komplexer ist, müssen wir die Datenbank entwerfen

  • Schlechtes Datenbankdesign:

Datenredundanz, Speicherplatz Verschwendung: Ausnahmen bei der Datenaktualisierung und -einfügung

Erleichtert die Entwicklung von Datenbankanwendungssystemen

Datenbankdesign im Softwareprojektentwicklungszyklus:

Anforderungsanalysephase: Analysieren Sie die Geschäfts- und Datenverarbeitungsanforderungen des Kunden

  • Übersicht Designphase: Entwerfen Sie das Datenbank-ER-Modelldiagramm , bestätigen Sie, dass die Bedarfsinformationen korrekt und vollständig sind.

  • Datenbankschritte entwerfen
  • Informationen sammeln

Kommunizieren und besprechen Sie mit den zuständigen Mitarbeitern des Systems, um die Benutzeranforderungen vollständig zu verstehen und zu verstehen, was die Datenbank benötigt um die Aufgabe abzuschließen.

  • Identifizieren Sie die Entität [Entität]
  • Identifizieren Sie wichtige Objekte oder Entitäten, die von der Datenbank verwaltet werden sollen.

Identifizieren Sie die detaillierten Informationen, die jede Entität enthält muss [Attribut] speichern

  • Identifiziert die Beziehung zwischen Entitäten [Beziehung]

  • Drei Hauptparadigmen

Frage: Warum ist eine Datennormalisierung erforderlich?

Probleme durch nicht standardmäßiges Tabellendesign:

  • Information dupliziert

    • Update-Ausnahme

  • Einfügungsausnahme
  • Informationen können nicht korrekt dargestellt werden
    • Löschausnahme.
  • Lo st gültige Informationen

Drei große Paradigmen

Erste Normalform (1. NF)

Das Ziel der ersten Normalform besteht darin, die Atomizität jeder Spalte sicherzustellen. Wenn jede Spalte die kleinste Dateneinheit ist, die nicht unterteilt werden kann, ist die erste Normalform erfüllt

  • Die zweite Normalform (2. NF)

  • Die zweite Normalform (2NF) wird auf der Grundlage der ersten Normalform (1NF) erstellt, dh um die zweite Normalform (2NF), die erste, zu erfüllen Zuerst muss die Normalform (1NF) erfüllt sein.
  • Die Zweite Normalform erfordert, dass jede Tabelle nur eine Sache beschreibt.

  • Die Dritte Normalform (3. NF)

      Wenn eine Beziehung die Zweite Normalform erfüllt und keine anderen Spalten außer dem Primärschlüssel transitiv von der Primärschlüsselspalte abhängig sind , Dann erfüllt es die dritte Normalform.
    • Die dritte Normalform muss sicherstellen, dass jede Datenspalte in der Datentabelle direkt mit dem Primärschlüssel verknüpft ist und nicht indirekt verknüpft werden kann.

    Die Beziehung zwischen Normalisierung und Leistung
  • Um bestimmte Geschäftsziele zu erreichen, ist die Datenbankleistung wichtiger als die Normalisierung der Datenbank

      Während der Datennormalisierung muss die Leistung der Datenbank umfassend berücksichtigt werden
    • Durch Hinzufügen zusätzlicher Daten zu a gegebene Tabellenfelder, um die Zeit, die für die Suche nach Informationen in ihnen erforderlich ist, erheblich zu reduzieren

    • Durch das Einfügen berechneter Spalten in eine bestimmte Tabelle, um Abfragen zu erleichtern
  • Verwandte Lernempfehlungen:
MySQL-Tutorial
(Video)

Das obige ist der detaillierte Inhalt vonWie entwerfe ich die Datenbank und erteile Berechtigungen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
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

Heiße KI -Werkzeuge

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

MySQL: Einfache Konzepte für einfaches Lernen MySQL: Einfache Konzepte für einfaches Lernen Apr 10, 2025 am 09:29 AM

MySQL ist ein Open Source Relational Database Management System. 1) Datenbank und Tabellen erstellen: Verwenden Sie die Befehle erstellte und creatEtable. 2) Grundlegende Vorgänge: Einfügen, aktualisieren, löschen und auswählen. 3) Fortgeschrittene Operationen: Join-, Unterabfrage- und Transaktionsverarbeitung. 4) Debugging -Fähigkeiten: Syntax, Datentyp und Berechtigungen überprüfen. 5) Optimierungsvorschläge: Verwenden Sie Indizes, vermeiden Sie ausgewählt* und verwenden Sie Transaktionen.

Orakels Rolle in der Geschäftswelt Orakels Rolle in der Geschäftswelt Apr 23, 2025 am 12:01 AM

Oracle ist nicht nur ein Datenbankunternehmen, sondern auch ein führender Anbieter von Cloud -Computing- und ERP -Systemen. 1. Oracle bietet umfassende Lösungen von der Datenbank bis zu Cloud -Diensten und ERP -Systemen. 2. Oraclecloud fordert AWS und Azure heraus und liefert IaaS-, PaaS- und SaaS -Dienste. 3. ERP-Systeme von Oracle wie E-Businesssuite und Fusion Applications helfen Unternehmen dabei, den Betrieb zu optimieren.

MySQL: Eine Einführung in die beliebteste Datenbank der Welt MySQL: Eine Einführung in die beliebteste Datenbank der Welt Apr 12, 2025 am 12:18 AM

MySQL ist ein Open Source Relational Database Management -System, das hauptsächlich zum schnellen und zuverlässigen Speicher und Abrufen von Daten verwendet wird. Sein Arbeitsprinzip umfasst Kundenanfragen, Abfragebedingungen, Ausführung von Abfragen und Rückgabergebnissen. Beispiele für die Nutzung sind das Erstellen von Tabellen, das Einsetzen und Abfragen von Daten sowie erweiterte Funktionen wie Join -Operationen. Häufige Fehler umfassen SQL -Syntax, Datentypen und Berechtigungen sowie Optimierungsvorschläge umfassen die Verwendung von Indizes, optimierte Abfragen und die Partitionierung von Tabellen.

MySQL gegen andere Datenbanken: Vergleich der Optionen MySQL gegen andere Datenbanken: Vergleich der Optionen Apr 15, 2025 am 12:08 AM

MySQL eignet sich für Webanwendungen und Content -Management -Systeme und ist beliebt für Open Source, hohe Leistung und Benutzerfreundlichkeit. 1) Im Vergleich zu Postgresql führt MySQL in einfachen Abfragen und hohen gleichzeitigen Lesevorgängen besser ab. 2) Im Vergleich zu Oracle ist MySQL aufgrund seiner Open Source und niedrigen Kosten bei kleinen und mittleren Unternehmen beliebter. 3) Im Vergleich zu Microsoft SQL Server eignet sich MySQL besser für plattformübergreifende Anwendungen. 4) Im Gegensatz zu MongoDB eignet sich MySQL besser für strukturierte Daten und Transaktionsverarbeitung.

MySQL: Ein anfängerfreundlicher Ansatz zur Datenspeicherung MySQL: Ein anfängerfreundlicher Ansatz zur Datenspeicherung Apr 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.

MySQL: Strukturierte Daten und relationale Datenbanken MySQL: Strukturierte Daten und relationale Datenbanken Apr 18, 2025 am 12:22 AM

MySQL verwaltet strukturierte Daten effizient durch Tabellenstruktur und SQL-Abfrage und implementiert Inter-Tisch-Beziehungen durch Fremdschlüssel. 1. Definieren Sie beim Erstellen einer Tabelle das Datenformat und das Typ. 2. Verwenden Sie fremde Schlüssel, um Beziehungen zwischen Tabellen aufzubauen. 3.. Verbessern Sie die Leistung durch Indexierung und Abfrageoptimierung. 4. regelmäßig Sicherung und Überwachung von Datenbanken, um die Datensicherheit und die Leistungsoptimierung der Daten zu gewährleisten.

Warum MySQL verwenden? Vorteile und Vorteile Warum MySQL verwenden? Vorteile und Vorteile Apr 12, 2025 am 12:17 AM

MySQL wird für seine Leistung, Zuverlässigkeit, Benutzerfreundlichkeit und Unterstützung der Gemeinschaft ausgewählt. 1.MYSQL bietet effiziente Datenspeicher- und Abruffunktionen, die mehrere Datentypen und erweiterte Abfragevorgänge unterstützen. 2. Übernehmen Sie die Architektur der Client-Server und mehrere Speichermotoren, um die Transaktion und die Abfrageoptimierung zu unterstützen. 3. Einfach zu bedienend unterstützt eine Vielzahl von Betriebssystemen und Programmiersprachen. V.

Redis: Ein Vergleich mit herkömmlichen Datenbankservern Redis: Ein Vergleich mit herkömmlichen Datenbankservern May 07, 2025 am 12:09 AM

Redis ist traditionellen Datenbanken in hoher Parallelitäts- und Latenz -Szenarien überlegen, ist jedoch nicht für komplexe Abfragen und Transaktionsverarbeitung geeignet. 1.Redis verwendet Speicherspeicher-, Schnelllese- und Schreibgeschwindigkeit, geeignet für Anforderungen an eine hohe Parallelität und niedrige Latenz. 2. Traditionelle Datenbanken basieren auf Festplatten, unterstützen komplexe Abfragen und Transaktionsverarbeitung und haben eine starke Datenkonsistenz und -dauer. 3.. Redis ist als Ergänzung oder Ersatz für herkömmliche Datenbanken geeignet, muss jedoch nach bestimmten Geschäftsbedürfnissen ausgewählt werden.

See all articles