Puncte:0

Cum să găsiți îmbinări efectuate fără indexuri?

drapel jp

Rulez un site WordPress pe Mariadb 10.6, iar recent am văzut o eroare Joins efectuate fără indexuri în Mysqltuner.

Deși numărul nu este foarte mare, Mysqltuner vă recomandă să creșteți în continuare Key_buffer_size.

Cu toate acestea, VPS-ul meu nu are multă memorie liberă, așa că rezolv această eroare cu o altă problemă.

Deoarece am aproximativ zeci de pluginuri active, vreau să verific care plugin minunat provoacă problema.

Deci, în primul rând, am activat jurnalul de erori după cum urmează.

jurnal-interogări-nu-utilizare-indexuri = 1
log_error = /var/log/mysql/mysql-error.log
slow_query_log = 1
slow_query_log_file = /var/log/mysql/mysql-slow.log
timp_interogare_lung = 3

Și după o anumită perioadă de timp, am rulat pt-query-digest pentru a analiza jurnalul de erori.

pt-query-digest /var/log/mysql/mysql-slow.log

Dar nu imi pot da seama de alte probleme.

Printre multele interogări din jurnalul lent, cum puteți determina care dintre ele încearcă să se alăture cu o coloană fără index?

Nu cunosc baza de date, așa că nu o pot da seama doar privind interogarea.

Puncte:0
drapel jp

Pentru a GĂSI NUMAI alinări efectuate fără indexuri,

Din promptul de comandă MySQL, determinați valorile curente, astfel încât să puteți reveni la normal după 1 oră de înregistrare NUMAI JPWI în jurnalul de interogări lente

SELECT @@long_query_time;
SELECTAȚI @@min_examined_row_limit;
      notează valorile de mai sus

SETARE GLOBAL long_query_time=3600; pentru un declanșare lent de log de UN MINUT
SETARE GLOBAL min_examined_row_limit=1; dacă interogarea citește un rând, luați în considerare înregistrarea în jurnal
SETARE GLOBAL log_queries_not_using_indexes=1; pentru a obține jurnalul de care aveți nevoie

ÎNTR-O ORĂ, SET GLOBAL long_query_time=descoperit mai sus; SET GLOBAL min_examined_row_limit=descoperit mai sus; SETARE GLOBAL log_queries_not_using_indexes=0; # pentru a dezactiva funcția

BUȘTENI DE ÎNCĂTARE;

consultați ultima oră din jurnalul de interogări lent pentru interogările implicate fără indexuri.

Vizualizați profilul pentru informații de contact, contactați-vă, dacă aveți nevoie de sfaturi suplimentare, vă rugăm.

Majoritatea oamenilor NU înregistrează interogări lente și interogări fără indexuri pentru a evita separarea spaghetelor. PRIMIȚI UNUL sau ALTUL, doar pentru a păstra o formă de sănătate mentală.

Puncte:0
drapel ua

Aveți tabele MyISAM? Dacă nu (și tabelele dvs ar trebui să fi InnoDB), inferior key_buffer_size la 30M.

„Asocierile fără indexuri” nu este neapărat o problemă. Daca ai încet întrebări, asta este mai important. Vezi SlowLog. Adică, lucrați la îmbunătățirea cel mai lent, indiferent dacă sunt sau nu „uniuni fără indexuri”. Utilizare pt-query-digest sau mysqldumpslow -s t

Pentru performanța WordPress, adăugați acest plugin: Îmbunătățiri ale indicelui WP

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.