MySQL ist heute die Datenbank, die von den meisten Unternehmen und Betrieben verwendet wird. Der Grund für die Verwendung von MySQL ist, dass MySQL Open Source-Software ist. Einige fähige Unternehmen ändern und passen die vorhandene MySQL-Architektur an ihre eigenen Geschäftsanforderungen an. Ein Grund dafür ist, dass MySQL kostenlos ist, während der Oracle-Dienst relativ teuer ist. Für viele Start-up-Unternehmen ist es die am besten geeignete Datenbank. Der Grund, warum wir die logische Architektur von MySQL verstehen müssen, liegt darin, dass wir – genau wie bei unserer eigenen Entwicklung – zuerst die von unserem eigenen System verwendete Schichtenarchitektur beherrschen müssen, damit bei Problemen mit einer beliebigen Verbindung während des Entwicklungsprozesses die Fehlerbehebung einfach ist. Dasselbe gilt für das Verständnis der logischen Architektur von MySQL. Wenn wir MySQL verwenden, wissen wir nicht, wann Probleme auftreten, aber wenn Probleme auftreten (z. B. bei der Optimierung der SQL-Abfrage, wo soll ich anfangen), können wir das Problem klarer lokalisieren. 1.VerbindungenWir verbinden uns als Client mit dem Mysql-Dienst, um eine Verbindung zum Mysql-Server herzustellen. Mysql kann eine Verbindung zu verschiedenen Programmiersprachenplattformen herstellen 2. Verwaltungsdienste und VersorgungsunternehmenAls Verwaltungs- und Steuerungstool für MySQL-Dienste wie Backup, Wiederherstellung, Replikation, Clustering usw. 3. VerbindungspoolDie Hauptfunktion des Verbindungspools besteht darin, Verbindungsauthentifizierung, Thread-Wiederverwendung, Verbindungsnummernbegrenzung usw. bereitzustellen. 4.SQL-SchnittstelleHier erhalten wir hauptsächlich Mysql DML, DDL-Anweisungen sowie gespeicherte Prozeduren, Ansichten, Trigger usw. 5. AnalysierenDie Hauptsache hier ist, die übergebene SQL-Zeichenfolge zu analysieren. Beispielsweise besteht die JDBC-Programmierung, mit der wir zum ersten Mal in Berührung gekommen sind, darin, die SQL-Anweisung vom Typ Zeichenfolge an MySQL zu senden. Anschließend führt der Parser zunächst eine lexikalische Analyse der SQL-Anweisung durch, um einen Syntaxbaum zu erstellen. Anschließend führt er eine grammatikalische Analyse des Syntaxbaums durch, um festzustellen, ob jedes Wortsegment dem SQL92-Standard entspricht. Wenn dies der Fall ist, wird der nächste Geschäftsverarbeitungslink ausgeführt. 6. Abfrage-Optimierer Der Abfrageoptimierer analysiert die ihm übergebene SQL-Anweisung, um zu ermitteln, ob es sich um eine optimale Ausführungsanweisung handelt. Dabei achtet er hauptsächlich auf die folgenden drei Aspekte: 7. Abfrage-Cache (Cache und Puffer)MySQL hasht jede SQL-Anweisung und fügt den Hashwert in eine Map ein. Bei jeder SQL-Anweisung wird zuerst der Hashwert der SQL-Anweisung berechnet, um zu sehen, ob sie gleich sind. Wenn sie gleich sind, kann die SQL-Anweisung im Speicher ausgeführt werden, ohne dass die neue SQL-Anweisung analysiert und optimiert werden muss, wodurch die Ausführungseffizienz beschleunigt wird. 8. Steckbare Speicher-EnginesDie MSQL-Speicher-Engine unterstützt steckbare Funktionen, d. h. Benutzer können die Speicher-Engine, die sie verwenden möchten, nach Belieben ersetzen oder ihre eigene Speicher-Engine anpassen. Hier analysieren und vergleichen wir hauptsächlich die Speicher-Engines INNODB und MYISAM. Wenn Sie eine Speicher-Engine auswählen, sollten Sie diese im Allgemeinen in erster Linie auf der Grundlage Ihrer Geschäftsanforderungen auswählen und sich auf die jeweiligen Merkmale beziehen. Auswahl der Speicher-Engine:InnoDB:Unterstützt Transaktionsverarbeitung, Fremdschlüssel, Wiederherstellungsfunktionen nach Abstürzen und Parallelitätskontrolle. Wenn Sie hohe Anforderungen an die Transaktionsintegrität stellen (z. B. Banken) und eine Parallelitätskontrolle benötigen (z. B. Ticketverkauf), bietet die Wahl von InnoDB große Vorteile. Wenn Sie eine Datenbank mit häufigen Aktualisierungs- und Löschvorgängen benötigen, können Sie sich auch für InnoDB entscheiden, da es das Commit und Rollback von Transaktionen unterstützt. MyISAM:Das Einfügen von Daten geht schnell und der Speicherplatz- und Arbeitsspeicherverbrauch ist relativ gering. Wenn die Tabelle hauptsächlich zum Einfügen neuer Datensätze und zum Lesen von Datensätzen verwendet wird, kann durch die Wahl von MyISAM eine hohe Verarbeitungseffizienz erzielt werden. Wenn die Integritäts- und Parallelitätsanforderungen der Anwendung relativ gering sind, kann es auch verwendet werden. ERINNERUNG:Alle Daten befinden sich im Speicher und die Datenverarbeitungsgeschwindigkeit ist schnell, die Sicherheit ist jedoch nicht hoch. Wenn Sie schnelle Lese- und Schreibgeschwindigkeiten benötigen, geringe Anforderungen an die Datensicherheit haben und keinen dauerhaften Speicher benötigen, können Sie sich für MEMOEY entscheiden. Es stellt Anforderungen an die Größe der Tabelle und kann keine zu große Tabelle erstellen. Daher wird dieser Datenbanktyp nur bei relativ kleinen Datenbanktabellen verwendet. Hier ist ein einfaches Ausführungsflussdiagramm von MySQL. Mit diesem Diagramm erhalten Sie ein klares Verständnis des gesamten Ausführungsprozesses von MySQL. Dies ist das Ende der Einführung in die logische Architektur von MySQL. Natürlich verfügt MySQL auch über eine entsprechende physische Architektur, aber dieser Teil umfasst hauptsächlich die verschiedenen Protokolldateien von MySQL sowie die Datendateien und Indexdateien jeder Tabelle, die in den folgenden Kapiteln vorgestellt werden. Das Obige ist der detaillierte Inhalt für ein vertieftes Verständnis der logischen MySQL-Architektur. Weitere Informationen zur logischen MySQL-Architektur finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM! Das könnte Sie auch interessieren:
|
<<: Docker-Image-Zugriff auf den lokalen Elasticsearch-Port-Vorgang
>>: React kapselt die globale Bullet-Box-Methode
Inhaltsverzeichnis Hintergrund 1) Aktivieren Sie ...
1. Concat-Funktion. Häufig verwendete Verbindungs...
1. Überlauf Überlauf ist Überlauf (Container). We...
Großes Problem: Löschen Sie nicht einfach die Pyt...
Inhaltsverzeichnis 1. Herunterladen 2. Installati...
Vorwort Die häufigste Aufgabe nach der Installati...
Angesichts der Tatsache, dass mittlerweile viele M...
Sinnvolle Einstellung des MySQL sql_mode sql_mode...
Vor kurzem sind mehrere Datenanomalien in MySQL o...
Inhaltsverzeichnis 1. Kurzbeschreibung 2. Schritt...
In diesem Artikel gibt es keine Spitzfindigkeiten,...
Inhaltsverzeichnis Vorwort 1. Projektarchitektur ...
Die Betriebsumgebung dieses Tutorials: Windows 7-...
Heute werde ich über einen CSS-Spezialeffekt spre...
Inhaltsverzeichnis Was ist Docker Compose Anforde...