Ta članek je zrcalni članek strojnega prevajanja, kliknite tukaj za skok na izvirni članek.

Pogled: 13963|Odgovoriti: 0

[Vir] MySQL uporablja profiliranje za analizo razlogov počasnega izvajanja SQL ukazov

[Kopiraj povezavo]
Objavljeno na 6. 07. 2017 11:12:17 | | | |

Kolega pri CleverCode mi je pred kratkim priporočil orodje za analizo SQL stavkov v MySQL, profiliranje, in ugotovil, da je to orodje zelo dobro, saj lahko natančno analizira, kje je točen čas, porabljen za SQL stavke med poizvedbo. CleverCode to tukaj povzema in deli z vami.

1 Uvod

MySQL Query Profiler je zelo priročno orodje za diagnostično analizo poizvedb, s katerim lahko pridobite porabo več virov v celotnem procesu izvajanja poizvedbe, kot so CPU, IO, IPC, SWAP itd., pa tudi pojav napak strani, preklapljanja konteksta itd., ter prav tako pridobite lokacijo vsake funkcije, ki jo MySQL kliče, v izvorni datoteki med izvajanjem poizvedbe.

MySQL različica 5.0.37 ali novejša podpira funkcijo razhroščevanja PROFILING, ki vam omogoča razumevanje podrobnosti virov, ki jih porabijo SQL stavki. Ker zahteva klic funkcije getrusage() sistema, jo je mogoče uporabljati le na platformah razreda Linux/Unix, ne pa na Windows. Poleg tega je PROFILIRANJE namenjeno obdelavi procesov in ne niti, druge aplikacije na strežniku pa lahko vplivajo na rezultate odpravljanja napak, zato je to orodje primerno za odpravljanje napak med razvojem, in če želite odpravljati napake v produkcijskem okolju, morate biti pozorni na njegove omejitve.

2 Obratovanje

2.1 Preveri, če je profil omogočen, je privzeto izklopljen.


2.2 Omogočite profiliranje. Profiliranje spremenljivk je uporabniška spremenljivka, ki jo je treba vsakič ponovno omogočiti.


2.3 Izvedite naslednje stavke: Da bi se izognili predhodnemu shranjevanju SQL v QCACHE, je priporočljivo, da se ukaz SELECT pri izvajanju SQL ne izvaja zaznavanja QCACHE. To vam omogoča, da oddate natančnost analize.


2.4 UporabaPokaži poizvedbo profilaNajnovejšiInformacije o izvršitvi izjave。 (Analiza: izberi sql_no_cache štetje(*) iz system_user, kjer je starost > 20 let)




2.5 Uporaba serijskih profilov. Oglejte si seznam stavkov, ki se izvajajo na strežniku. (ID poizvedbe, porabljeni čas, izjava).




2.6 Uporabite show profile za poizvedbo po informacijah o izvajanju ID-ja formulacije. Tukaj analiziramo izjavo z ID 6. (Analiza: izberi sql_no_cache štetje(*) iz system_user, kjer je starost > 20 let).


2.7 Pridobi CPU in blokiraj porabo vhodnih operacij.




2.8 Pridobivanje dodatnih informacij. je mogoče pridobiti z izvedbo "PRIKAŽI PROFIL *** ZA POIZVEDBO n". Referenčni naslov: http://dev.mysql.com/doc/refman/5.6/en/show-profile.html.







Prejšnji:Poročila novincev
Naslednji:Novice o velikih uspešnicah! Razvoj mini programov je brezplačen!
Disclaimer:
Vsa programska oprema, programski materiali ali članki, ki jih izdaja Code Farmer Network, so namenjeni zgolj učnim in raziskovalnim namenom; Zgornja vsebina ne sme biti uporabljena v komercialne ali nezakonite namene, sicer uporabniki nosijo vse posledice. Informacije na tej strani prihajajo z interneta, spori glede avtorskih pravic pa nimajo nobene zveze s to stranjo. Zgornjo vsebino morate popolnoma izbrisati z računalnika v 24 urah po prenosu. Če vam je program všeč, podprite pristno programsko opremo, kupite registracijo in pridobite boljše pristne storitve. Če pride do kakršne koli kršitve, nas prosimo kontaktirajte po elektronski pošti.

Mail To:help@itsvse.com