Ez a cikk egy tükör gépi fordítás, kérjük, kattintson ide, hogy ugorjon az eredeti cikkre.

Nézet: 13963|Válasz: 0

[Forrás] A Mysql profilozást használ az SQL utasítások lassú végrehajtásának okainak elemzésére

[Linket másol]
Közzétéve 2017. 07. 06. 11:12:17 | | | |

Egy kolléga a CleverCode-nál nemrégiben ajánlott egy SQL-alapú SQL-állítások elemzésére, a profilozásra, és azt találta, hogy ez az eszköz nagyon jó, pontosan képes elemezni, hogy mennyi időt töltenek a sql utasításokra a lekérdezési folyamat során. A CleverCode itt foglalja össze és megosztja veled.

1 Bevezetés

A MySQL Query Profiler egy nagyon kényelmes lekérdezésdiagnosztikai elemző eszköz, amelyen keresztül megkaphatod a lekérdezés teljes végrehajtási folyamatában több erőforrás fogyasztását, például CPU, IO, IPC, SWAP stb., valamint az PAGE FAULTS, CONTEXT SWITCHE stb. előfordulását, valamint a MySQL által meghívott függvények helyét a forrásfájlban a lekérdezés végrehajtása során.

A MySQL 5.0.37-es vagy újabb verzió támogatja a PROFILING hibakeresési funkciót, amely lehetővé teszi, hogy megértsd az SQL utasítások által felhasznált erőforrások részleteit. Mivel a rendszer getrusage() funkciójának hívása szükséges, csak Linux/Unix osztályú platformokon használható, nem Windowson. Ráadásul a PROFILING inkább folyamatok feldolgozására szolgál, nem szálakra, és a szerveren lévő más alkalmazások befolyásolhatják a hibakeresési eredményeket, ezért ez az eszköz alkalmas fejlesztés közbeni hibakeresésre, és ha termelési környezetben akarsz hibakeresést végezni, figyelj a korlátaira.

2 Működés

2.1 Ellenőrizd, hogy a profil engedélyezett-e, alapértelmezés szerint ki van kapcsolva.


2.2 Engedélyezze a profilozást. A változóprofilozás egy felhasználói változó, amelyet minden alkalommal újra be kell kapcsolni.


2.3 Hajtsd végre a következő utasításokat: Annak érdekében, hogy elkerüljük, hogy korábban az SQL a QCACHE-ben tárolja, ajánlott a SELECT utasítást arra kényszeríteni, hogy ne végezzen QCACHE detektálást SQL futtatása során. Ez lehetővé teszi, hogy az elemzés pontosságát nyújtsd be.


2.4 HasználatProfil lekérdezés megjelenítéseA legutóbbiA nyilatkozat végrehajtási adatai。 (Elemzés: sql_no_cache count(*) a system_user közül válasszuk, ahol az életkor > 20)




2.5 Műsorprofilok használata. Tekintse meg a szerveren végrehajtott utasítások listáját. (lekérdezési azonosító, töltött idő, kijelentés).




2.6 Használd a show profile funkciót a formulációazonosító végrehajtási adatainak lekérdezéséhez. Itt az ID 6-os állítást elemzzük. (Elemzés: sql_no_cache count(*) kiválasztása a system_user között, ahol az életkor > 20).


2.7 Szerezd meg a CPU-t és blokkold az IO-fogyasztást.




2.8 További információk beszerzése. a "SHOW PROFILE *** FOR QUERY n" (PROFIL MEGJELENÍTÉSE *** LEKÉRDEZÉSÉRT) megjelöléssel érhető el. Hivatkozási cím: http://dev.mysql.com/doc/refman/5.6/en/show-profile.html.







Előző:Újonc jelentések
Következő:Nagy sikerű hírek! A mini programfejlesztés ingyenes!
Lemondás:
A Code Farmer Network által közzétett összes szoftver, programozási anyag vagy cikk kizárólag tanulási és kutatási célokra szolgál; A fenti tartalmat nem szabad kereskedelmi vagy illegális célokra használni, különben a felhasználók viselik az összes következményet. Az oldalon található információk az internetről származnak, és a szerzői jogi vitáknak semmi köze ehhez az oldalhoz. A fenti tartalmat a letöltés után 24 órán belül teljesen törölni kell a számítógépéről. Ha tetszik a program, kérjük, támogassa a valódi szoftvert, vásároljon regisztrációt, és szerezzen jobb hiteles szolgáltatásokat. Ha bármilyen jogsértés történik, kérjük, vegye fel velünk a kapcsolatot e-mailben.

Mail To:help@itsvse.com