Lösungen für Probleme bei der Leistungsoptimierung von MySQL-Indizes

Lösungen für Probleme bei der Leistungsoptimierung von MySQL-Indizes

Die von MySQL erstellte Optimierung besteht im Hinzufügen von Indizes. Manchmal können jedoch Situationen auftreten, in denen das Hinzufügen von Indizes nicht den gewünschten Effekt erzielt.

Nach dem Hinzufügen schlägt die Suche nach allen Daten immer noch fehl. Der Grund ist SQL

ERKLÄREN AUSWÄHLEN
      cs.sid,
      -- c.courseFrontTitle,
      -- c.imgBig,
      cs.studyStatus,
      coi.Gebühr,
      -- act.PROC_INST_ID_ AS Prozess-ID,
      cs.createDTM,
      cs.payStatus,
      cs.istabgeschlossen,
      cs.saleChannel,
cs.isDelete
    AUS
      Biz_CourseStudy cs

    LINKS JOIN Biz_CourseOrderItem coi ON cs.sid = coi.CourseStudyID 
    
    WO
      cs.studentID = 00001 und cs.payStatus nicht in(0)

Wenn man sich den Index ansieht, liegt der Grund darin, dass sid bigint und der Typ von CourseStudyID varchar ist. Der Grund ist hier. Nach der Änderung des Typs in bigint wird die Abfragegeschwindigkeit sofort verbessert.

Ich bin auf eine solche Situation gestoßen. Nach der Analyse des Extras stellte ich fest, dass die Geschwindigkeit ohne Reihenfolge um 0,6 s und mit hinzugefügter Reihenfolge um 6 s in Ordnung war.

Die Lösung besteht darin, einen Index für die Sortierung zu erstellen. Hier besteht meine Sortierung aus zwei Feldern.

order by endTime desc ,isDelete desc

Erstellen Sie einen gemeinsamen Index für ab, index_a_b

SELECT xxx FROM verwalten a FORCE INDEX(index_a_b)
LEFT JOIN f_name f ON f.Benutzer-ID = a.Benutzer-ID
ORDER BY a.endTime desc,a.isDelete desc

Zu diesem Zeitpunkt ist die Verwendung von Filesort bei Betrachtung der Leistung verschwunden

Die Geschwindigkeit beträgt direkt 0,6 s

Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, er wird für jedermanns Studium hilfreich sein. Ich hoffe auch, dass jeder 123WORDPRESS.COM unterstützen wird.

Das könnte Sie auch interessieren:
  • MySQL-Leistungsoptimierungs-Index-Pushdown
  • MySQL-Performance-Optimierung: So nutzen Sie Indizes effizient und richtig
  • Fallstudie zur Leistungsoptimierung bei MySQL – einschließlich Indexfreigabe
  • Fallstudie zur Leistungsoptimierung von MySQL – einschließlich Index und SQL_NO_CACHE
  • MySQL Leistungsoptimierung Indexoptimierung
  • Die Nutzungsstrategie und Optimierung hinter MySQL-Indizes (Hochleistungsindex-Strategie)
  • MySQL verwendet Indizes zur Leistungsoptimierung

<<:  Nginx kompiliert nginx - neues Modul hinzufügen

>>:  Detaillierter Prozess zum Konfigurieren eines HTTPS-Zertifikats unter Nginx

Artikel empfehlen

Verwendung des Array-Filters filter() in JS

Inhaltsverzeichnis 1. Einleitung 2. Einführung in...

Detaillierte Erläuterung der Kubernetes-Pod-Orchestrierung und des Lebenszyklus

Inhaltsverzeichnis K8S Master Grundlegende Archit...

Zusammenfassung der allgemeinen Bedienungskenntnisse der MySQL-Datenbank

Dieser Artikel fasst gängige Betriebstechniken fü...

jQuery implementiert die Registrierungsseite zur Mitarbeiterverwaltung

In diesem Artikelbeispiel wird der spezifische Co...

Einrichten der React-Native-Umgebung und grundlegende Einführung

Umgebungsvorbereitung 1. Umweltkonstruktion React...

Zusammenfassung der praktischen Methoden von CSS3 (empfohlen)

1. Abgerundeter Rand: CSS- CodeInhalt in die Zwis...

Detaillierte Erläuterung des MySQL-Clusterindex und des Nicht-Clusterindex

1. Clustered-Index Tabellendaten werden in der Re...

Tutorial zur Installation von MySQL8 auf Centos7

Neue Funktionen in MySQL 8: Meine persönliche Mei...

JavaScript-Array-Deduplizierungslösung

Inhaltsverzeichnis Methode 1: Set: Es handelt sic...

Mysql-Optimierung Zabbix-Partitionsoptimierung

Der größte Engpass bei der Verwendung von Zabbix ...

...