Zusammenfassend:
Beim Entwerfen einer Tabelle:
Index:
Zusammenfassung: Verwenden Sie den geeigneten Datentyp und wählen Sie den geeigneten Index Das Schreiben von SQL muss optimiert werden: Verwenden Sie „Limit“, um die Datensätze in den Abfrageergebnissen einzuschränken Vermeiden Sie „select *“ und listen Sie die Felder auf, nach denen Sie suchen müssen. Verwenden Sie Verknüpfungen anstelle von Unterabfragen Aufteilen großer Delete- oder Insert-Anweisungen Sie können das langsame SQL herausfinden, indem Sie das Protokoll für langsame Abfragen aktivieren Keine Spaltenoperationen: SELECT id WHERE age + 1 = 10. Jede Operation an der Spalte führt zu einem Tabellenscan, einschließlich Datenbank-Tutorialfunktionen, Berechnungsausdrücke usw. Versuchen Sie beim Abfragen, die Operation rechts neben das Gleichheitszeichen zu verschieben. Die SQL-Anweisung sollte so einfach wie möglich sein: Eine SQL-Anweisung kann nur auf einer CPU ausgeführt werden; große Anweisungen sollten in kleine Anweisungen aufgeteilt werden, um die Sperrzeit zu verkürzen; eine große SQL-Anweisung kann die gesamte Datenbank blockieren Schreiben Sie OR in IN um: OR hat eine Effizienz von n, während IN eine Effizienz von log(n) hat. Es wird empfohlen, die Anzahl der INs auf 200 zu begrenzen. Es sind keine Funktionen oder Trigger erforderlich, um Vermeiden Sie Abfragen im %xxx-Stil Verwenden Sie JOIN sparsam Verwenden Sie zum Vergleich den gleichen Typ, z. B. „123“ und „123“, 123 und 123 Vermeiden Sie nach Möglichkeit die Verwendung der Operatoren != oder <> in der WHERE-Klausel. Andernfalls gibt die Engine den Index auf und führt einen vollständigen Tabellenscan durch. Für aufeinanderfolgende Werte verwenden Sie BETWEEN statt IN: SELECT id FROM t WHERE num BETWEEN 1 AND 5 Verwenden Sie nicht die gesamte Tabelle für Listendaten. Verwenden Sie LIMIT, um die Daten in Seiten aufzuteilen. Die Anzahl der Seiten sollte nicht zu groß sein. Motor: MeinIsAM Zeilensperren werden nicht unterstützt. Alle Tabellen, die gelesen werden müssen, werden beim Lesen gesperrt, und beim Schreiben werden den Tabellen exklusive Sperren hinzugefügt. Keine Unterstützung für Transaktionen Fremdschlüssel werden nicht unterstützt Unterstützt keine sichere Wiederherstellung nach einem Absturz Unterstützt das Einfügen neuer Datensätze in die Tabelle, während die Tabelle gelesen und abgefragt wird Unterstützt die Indizierung der ersten 500 Zeichen von BLOB und TEXT sowie die Volltextindizierung Unterstützt verzögerte Aktualisierung von Indizes, was die Schreibleistung erheblich verbessert Für Tabellen, die nicht geändert werden, wird die Komprimierung unterstützt, um den Speicherplatzbedarf erheblich zu reduzieren InnoDB Unterstützt Zeilensperren und verwendet MVCC, um hohe Parallelität zu unterstützen Supportangelegenheiten Unterstützt Fremdschlüssel Unterstützt die sichere Wiederherstellung nach einem Absturz Keine Unterstützung für Volltextindizierung Im Allgemeinen eignet sich MyISAM für SELECT-intensive Tabellen, während InnoDB für INSERT- und UPDATE-intensive Tabellen geeignet ist. Partition, Tabelle und Datenbank (Trennung von Lesen und Schreiben) Oben finden Sie eine ausführliche Erklärung und Integration der vom Herausgeber vorgestellten MySQL-Optimierungsstrategien. Ich hoffe, dass es für alle hilfreich sein wird. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und der Herausgeber wird Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken! Das könnte Sie auch interessieren:
|
<<: Detaillierte Erläuterung der Nginx-Rewrite-Jump-Anwendungsszenarien
>>: Vue + Express + Socket realisiert Chat-Funktion
Unterschiede zwischen Docker und Docker Machine D...
Hier stellen wir das Wissen über Formularelemente...
Als ich vor einiger Zeit an einer kleinen Funktio...
Inhaltsverzeichnis 1. Nachfrage 1. Nachfrage 2. S...
Fünf Verzögerungsmethoden für die MySQL-Zeitblind...
1. Voraussetzungen Wir verwenden zum Importieren ...
Die unbedeutende flex-basis hat bei der kleinen F...
Szenario Angenommen, es gibt 10 Anfragen, aber di...
Spezifische Methode: 1. Drücken Sie [ Win+R ], um...
1. Legen Sie den CORS-Antwortheader fest, um domä...
Inhaltsverzeichnis Überblick 1. Download über URL...
Es ist ganz einfach, Nachrichten an andere Benutz...
Dieser Artikel erläutert anhand von Beispielen di...
1. Fenster -> Einstellungen, um das Eclipse-Ei...
Ich habe vor kurzem Porter gelernt. Ich habe das ...