Was ist ein Profil? Wir können es verwenden, wenn wir die Leistung eines bestimmten SQL analysieren möchten. Profiling ist erst nach MySQL 5.0.3 verfügbar. Nach dem Erstellen des Profils werden sämtliche Abfragen inklusive Falschangaben protokolliert. Schließen Sie die Sitzung oder setzen Sie „profile=0“, um sie zu schließen. (Wenn Sie den Parameter „profiling_history_size“ auf 0 setzen, wird dadurch auch die MySQL-Profilerstellung deaktiviert.) Mit diesem Tool können Sie den SQL-Ausführungsstatus, die für die Systemsperre, die Tabellensperre usw. aufgewendete Zeit usw. abfragen. Es ist sehr wichtig, den E/A-Verbrauch und den CPU-Verbrauch einer Anweisung zu ermitteln. (Die beiden größten Ressourcen, die bei der Ausführung von SQL-Anweisungen verbraucht werden, sind IO und CPU) --Nach MySQL 5.7 werden Profilinformationen nach und nach aufgegeben. MySQL empfiehlt die Verwendung eines Leistungsschemas MySQL – offizielle Website-Definition
Einfach ausgedrückt: der aktuelle Ressourcenverbrauch der Sitzung. Hinweis: show profile und show Profiles werden nicht empfohlen und können in späteren Versionen von MySQL gelöscht werden; die offizielle Website empfiehlt die Verwendung von Performance Schema Anwendung Das Profil ist standardmäßig deaktiviert und wird für Produktionsumgebungen empfohlen. Anzeigen der Profileinstellungen der aktuellen Umgebung mysql> Variablen wie „%profiling%“ anzeigen; +------------------------+----------+ | Variablenname | Wert | +------------------------+----------+ | habe_profiling | JA | | Profilierung | AUS | | Größe des Profilverlaufs | 15 | +------------------------+----------+ „profile off“ bedeutet, dass die Profilerstellung ausgeschaltet ist, und „profile_history_size 15“ bedeutet, dass der Ressourcenverbrauch der letzten 15 SQL-Anweisungen gespeichert wird. Um die Profilfunktion zu aktivieren, können Sie den Befehl verwenden Setze globales Profiling = 1; Anschließend können Sie den folgenden Befehl verwenden Profile anzeigen; Zeigen Sie die letzten 15 SQL-Anweisungen an; Wenn Sie die spezifische Situation eines bestimmten Artikels anzeigen möchten, lautet das SQL-Format: PROFIL ANZEIGEN [Typ [, Typ] ... ] [FÜR ANFRAGE n] [LIMIT Zeilenanzahl [OFFSET Offset]] Typ: { ALLE | BLOCK IO | KONTEXTWECHSEL | Zentralprozessor |IPC | SPEICHER | SEITENFEHLER | QUELLE | TAUSCH } Auf der offiziellen Website werden die einzelnen Felder im Typ wie folgt erklärt:
Die Profilerstellung ist für jede Sitzung gültig. Wenn die Sitzung beendet wird, gehen die aktuellen Profilinformationen verloren. Anwendungsfälle mysql> Profile anzeigen; +----------+------------+----------------------------+ | Abfrage-ID | Dauer | Abfrage | +----------+------------+----------------------------+ | 1 | 0,00060275 | * aus Kunden auswählen | | 2 | 0,00222450 | Tabellen anzeigen | | 3 | 0,00567425 | Wählen Sie * aus Büros aus | | 4 | 0,00052050 | Tabellen anzeigen | | 5 | 0,01123300 | Wählen Sie * aus Zahlungen aus | | 6 | 0,00111675 | Tabellen anzeigen | | 7 | 0,02049625 | Wählen Sie * aus Produktlinien | +----------+------------+----------------------------+ Bei der Fehlerbehebung bei der SQL-Ausführung oder bei der Ermittlung, welches SQL sehr langsam ausgeführt wird und wo es langsam ist, sind Profile sehr nützliche Tools. Zeigt, wo eine SQL-Anweisung ausgegeben wird mysql> Profil für Abfrage 7 anzeigen; +----------------------+----------+ | Status | Dauer | +----------------------+----------+ | beginnt | 0,000043 | | Berechtigungen werden geprüft | 0,000005 | | Eröffnungstabellen | 0,014552 | | init | 0,000025 | | Systemsperre | 0,000009 | | optimieren | 0,000004 | | Statistik | 0,000011 | | wird vorbereitet | 0,000010 | | wird ausgeführt | 0,000003 | | Daten werden gesendet | 0,005653 | | Ende | 0,000010 | | Abfrageende | 0,000009 | | Tabellen schließen | 0,000020 | | Elemente freigeben | 0,000121 | | aufräumen | 0,000023 | +----------------------+----------+ Die Informationen sind auf einen Blick klar, sodass ich mir einen allgemeinen Überblick über die SQL-Ausführung verschaffen kann. Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: Vue Element UI-Komponente für benutzerdefinierte Beschreibungsliste
>>: So richten Sie die passwortfreie SSH-Anmeldung beim Linux-Server ein
In diesem Artikel wird der spezifische Code von V...
CentOS 8 ist offiziell veröffentlicht! CentOS ent...
Problemerklärung: Wenn Sie die CSS-Eigenschaft „a...
Deaktivieren und Aktivieren von MySQL-Fremdschlüs...
Das Team ersetzte den neuen Rahmen. Alle neuen Un...
Inhaltsverzeichnis 1. Einführung in SQL-Injection...
Docker entspricht einem Container, der je nach de...
Inhaltsverzeichnis 01 Was ist das Wesen eines Con...
1. Commonjs Commonjs ist ein benutzerdefiniertes ...
Was ist die CN2-Linie? CN2 steht für China Teleco...
Ausführen des Skripts im Debugmodus Sie können da...
Mit beiden Methoden kann ein JavaScript-Code nach...
Viele Leute sagen, dass IE6 PNG-Transparenz nicht...
Vor Kurzem hat das Unternehmen die Anforderung ge...
In diesem Artikel werden 3 Methoden beschrieben, ...