Šis straipsnis yra veidrodinis mašininio vertimo straipsnis, spauskite čia norėdami pereiti prie originalaus straipsnio.

Rodinys: 13963|Atsakyti: 0

[Šaltinis] MySQL naudoja profiliavimą, kad išanalizuotų lėto SQL teiginių vykdymo priežastis

[Kopijuoti nuorodą]
Paskelbta 2017-07-06 11:12:17 | | | |

Kolega iš "CleverCode" neseniai rekomendavo įrankį, skirtą analizuoti sql teiginius MySQL, profiliavimą, ir nustatė, kad šis įrankis yra labai geras, kuris gali tiksliai išanalizuoti, kur konkretus laikas, praleistas SQL teiginiams užklausos proceso metu. "CleverCode" apibendrina tai čia ir dalijasi su jumis.

1 Įvadas

"MySQL" užklausų profiliuotojas yra labai patogus užklausų diagnostikos analizės įrankis, per kurį galite gauti kelių išteklių sunaudojimą visame užklausos vykdymo procese, pvz., CPU, IO, IPC, SWAP ir kt., taip pat PUSLAPIO GEDIMŲ, KONTEKSTO JUNGIKLIO ir kt. atsiradimą, taip pat gauti kiekvienos funkcijos, kurią MySQL iškviečia, vietą šaltinio faile vykdant užklausą.

"MySQL" 5.0.37 ar naujesnė versija palaiko PROFILING derinimo funkciją, kuri leidžia suprasti išsamią informaciją apie SQL sakinių sunaudotus išteklius. Kadangi reikia iškviesti sistemos getrusage() funkciją, ją galima naudoti tik Linux/Unix klasės platformose, o ne Windows. Be to, PROFILING skirtas procesams, o ne gijoms apdoroti, o kitos serverio programos gali turėti įtakos jūsų derinimo rezultatams, todėl šis įrankis tinka derinimui kūrimo metu, o jei norite derinti gamybos aplinkoje, turėtumėte atkreipti dėmesį į jo apribojimus.

2 Operacija

2.1 Patikrinkite, ar profilis įjungtas, jis išjungtas pagal numatytuosius nustatymus.


2.2 Įgalinti profiliavimą. Kintamasis profiliavimas yra vartotojo kintamasis, kurį kiekvieną kartą reikia įjungti iš naujo.


2.3 Vykdykite šiuos teiginius: Norint išvengti anksčiau saugomo SQL QCACHE, rekomenduojama priversti SELECT sakinį neatlikti QCACHE aptikimo vykdant SQL. Tai leidžia pateikti analizės tikslumą.


2.4 NaudojimasRodyti profilio užklausąNaujausiasIšrašo vykdymo informacija。 (Analizė: pasirinkite sql_no_cache skaičių(*) iš system_user, kur amžius > 20 metų)




2.5 Rodyti profilius. Peržiūrėti serveryje vykdomų sakinių sąrašą. (užklausos ID, praleistas laikas, pareiškimas).




2.6 Naudokite show profile, kad užklaustumėte formulės ID vykdymo informacijos. Čia analizuojame pareiškimą su ID 6. (Analizė: pasirinkite sql_no_cache skaičių(*) iš system_user, kurioje amžius > 20 metų).


2.7 Gaukite procesoriaus ir bloko IO suvartojimą.




2.8 Papildomos informacijos gavimas. galima gauti atliekant "SHOW PROFILE *** FOR QUERY n". Nuorodos adresas: http://dev.mysql.com/doc/refman/5.6/en/show-profile.html.







Ankstesnis:Naujokų ataskaitos
Kitą:Populiarios naujienos! Mini programos kūrimas yra nemokamas!
Atsakomybės apribojimas:
Visa programinė įranga, programavimo medžiaga ar straipsniai, kuriuos skelbia Code Farmer Network, yra skirti tik mokymosi ir mokslinių tyrimų tikslams; Aukščiau nurodytas turinys negali būti naudojamas komerciniais ar neteisėtais tikslais, priešingu atveju vartotojai prisiima visas pasekmes. Šioje svetainėje pateikiama informacija gaunama iš interneto, o ginčai dėl autorių teisių neturi nieko bendra su šia svetaine. Turite visiškai ištrinti aukščiau pateiktą turinį iš savo kompiuterio per 24 valandas nuo atsisiuntimo. Jei jums patinka programa, palaikykite autentišką programinę įrangą, įsigykite registraciją ir gaukite geresnes autentiškas paslaugas. Jei yra kokių nors pažeidimų, susisiekite su mumis el. paštu.

Mail To:help@itsvse.com