Heim > Java > JavaInterview Fragen > Java-Interview-langsame Abfrage

Java-Interview-langsame Abfrage

王林
Freigeben: 2020-11-20 15:24:39
nach vorne
10093 Leute haben es durchsucht

Java-Interview-langsame Abfrage

Werfen wir zunächst einen Blick auf die Interviewfragen:

Interviewfrage: Wie beurteilt man, ob der SQL-Abfragevorgang langsam ist und wie kann man ihn optimieren (Alibaba-Interviewfragen)

Interviewfrage: Langsame MySQL-Abfrageaktivierung, Anweisungsanalyse (Alibaba-Interviewfragen)

(Teilen von Lernvideos: Java-Lehrvideo)

1. Aktivieren Sie die langsame MySQL-Abfrage

Methode 1: Ändern Sie die Konfigurationsdatei

Fügen Sie ein paar Zeilen in my.ini hinzu:

[mysqlld]
//定义查过多少秒的查询算是慢查询,我这里定义的是2秒
long_query_time=2

#5.0、5.1等版本配置如下选项
log-slow-queries="mysql_slow_query.log"
#5.5及以上版本配置如下选项
slow-query-log=On
slow_query_log_file="mysql_slow_query.log"

//记录下没有使用索引的query
log-query-not-using-indexes
Nach dem Login kopieren

( Verwandte Lernvideos teilen: Java-Interview-Fragen und -Antworten)

Methode 2: Langsame Abfrage über MySQL-Datenbank aktivieren

mysql>set global slow_query_log=ON
mysql>set global long_query_time = 3600;
mysql>set global log_querise_not_using_indexes = ON;
Nach dem Login kopieren

Zweitens: Führen Sie einen langsamen Abfragevorgang aus

Tatsächlich ist es schwierig, eine sinnvolle langsame Abfrage auszuführen, weil Wenn Sie es selbst testen, dauert es nur wenige Sekunden, selbst wenn Sie eine riesige Tabelle mit 200.000 Daten abfragen. Wir können stattdessen die folgende Anweisung verwenden:

SELECT SLEEP(10);
Nach dem Login kopieren

3. Überprüfen Sie die Anzahl langsamer Abfragen
Verwenden Sie die folgende SQL-Anweisung, um zu überprüfen, wie viele langsame Abfragen ausgeführt wurden:

show global status like '%slow%';
Nach dem Login kopieren

4. Analysieren Sie das Protokoll langsamer Abfragen

Methode 1: Analyse durch Tools

MySQL wird mit dem Tool mysqldumpslow zum Analysieren langsamer Abfrageprotokolle geliefert. Darüber hinaus gibt es einige nützliche Open-Source-Tools.

Hier wird davon ausgegangen, dass das gespeicherte Protokoll den Namen long.log hat

Listen Sie die 10 SQL-Anweisungen mit den meisten Datensätzen auf:

mysqldumpslow -s c -t 10 long.log
Nach dem Login kopieren

Listen Sie die 10 SQL-Anweisungen auf, die die meisten Datensatzsätze zurückgeben:

mysqldumpslow -s r -t 10 long.log
Nach dem Login kopieren

Methode 2: Direkt analysieren MySQL-Langsamkeit Abfrageprotokoll

# Time: 121017 17:38:54 
# User@Host: root[root] @ localhost [127.0.0.1] 
# Query_time: 3.794217 Lock_time: 0.000000 Rows_sent: 1  Rows_examined: 4194304 
SET timestamp=1350466734; 
select * from wei where text='orange'; 
# Time: 121017 17:46:22 
# User@Host: root[root] @ localhost [127.0.0.1] 
# Query_time: 3.819219  Lock_time: 0.000000 Rows_sent: 0  Rows_examined: 4194304 
SET timestamp=1350467182; 
select * from wei where text='long';
Nach dem Login kopieren

Verwandte Empfehlungen: Java-Einführungs-Tutorial

Das obige ist der detaillierte Inhalt vonJava-Interview-langsame Abfrage. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage