Ma poate ajuta cineva sa inteleg la ce se uita mariadb (cu engine-ul
innodb) cand decide query plan la un query? Problema mea e ca am niste
query-uri care se fac mult mai greu pe master fata de slave care au date
identice, diferenta fiind ca slave-ul are date refacute dintr-un dump
recent (si resincronizat). Query planul arata diferit intre cele doua
servere si in trecut cand am mai avut problema asta s-a rezolvat dupa ce am
"optimizat" tabelele implicate (cu un alter table force).

Stiu eu asa din legendele Olimpului ca planul se face pe baza unor
statistici pe indecsi mentinute in background, dar nu m-am lamurit din
documentatie unde sunt tinute, cum sa le urmaresc si daca le pot da un sut
mai simplu fara sa fac alter care dureaza 10 minute. Am gasit niste povesti
despre mysql.innodb_index_stats dar la o prima vedere si aia e replicata si
am oricum o jena sa modific chestii pe acolo fara sa inteleg. Also, nu m-am
prins daca am vreun mecanism de-a-l convinge pe mariadb sa zica cum a ajuns
la concluziile din explain.

Ce carti de mysql am prin casa trec mai rapid peste subiectul asta si am o
banuiala ca implementarea de innodb din mariadb s-ar putea sa faca
lucrurile putin altfel (as putea sa ma dau prin codul sursa dar nu prea
sunt familiarizat cu internals, prefer sa intreb inainte).

Mersi,

-- 
P.
_______________________________________________
RLUG mailing list
RLUG@lists.lug.ro
http://lists.lug.ro/mailman/listinfo/rlug_lists.lug.ro

Raspunde prin e-mail lui