Tartalomjegyzék elrejtése

1. Bevezetés a SQL Server Profiler

1.1 Mi az SQL Server Profiler és miért van rá szükség?

SQL Server A Profiler egy grafikus felhasználói felületű eszköz, amely a rendszerben előforduló események monitorozására és rögzítésére szolgál. SQL ServerEz a hatékony diagnózisostAz ic eszköz lehetővé teszi az adatbázis-adminisztrátorok és a fejlesztők számára, hogy valós időben figyeljék meg az adatbázismotor tevékenységét, segítve a teljesítménybeli szűk keresztmetszetek azonosítását, az alkalmazáshibák elhárítását és a biztonsági események naplózását.

SQL Server Profiler

1.2 SQL Server Profiler 2025-ben: Jelenlegi állapot és alternatívák

A Microsoft elavult SQL Server Profilozóktarting vele SQL Server 2016-ban ajánlott Bővített események mint a helyettesítő technológia. Az eszköz azonban továbbra is elérhető a jelenlegi SQL Server verziók, beleértve SQL Server 2022-ben, és az adatbázis-szakemberek továbbra is széles körben használják.

1.3 Kinek ajánlott ez az útmutató?

  • Ez az útmutató azoknak az adatbázis-adminisztrátoroknak segít, akiknek figyelniük kell a SQL Server példányok, teljesítményproblémák diagnosztizálása és a rendszer megbízhatóságának biztosítása. Az adatbázis-adminisztrátorok gyakorlati útmutatást találnak a nyomkövetések rögzítéséhez, az események elemzéséhez és a monitorozási stratégiák megvalósításához.
  • Az alkalmazásfejlesztők számára hasznos megérteni, hogyan lép kölcsönhatásba a kódjuk SQL ServerAz SQL Profiler segít a fejlesztőknek a nem hatékony lekérdezések azonosításában, az alkalmazások viselkedésének validálásában és az adatbázisokkal kapcsolatos hibák elhárításában.
  • A teljesítményelemzők és tanácsadók fejlett technikákat ismerhetnek meg a munkaterhelés-elemzés, a kapacitástervezés és a rendszeroptimalizálás terén. A nyomkövetési konfiguráció, szűrés és elemzés átfogó lefedettsége lehetővé teszi az adatbázis-teljesítmény alapos értékelését.

2. Megértés SQL Server Profiler alapjai

2.1 Hogyan SQL Server Profiler Works

SQL Server A Profiler kliensalkalmazásként működik, amely csatlakozik a rendszeren belül futó SQL Trace motorhoz. SQL ServerAmikor létrehoz egy nyomkövetést, az adatbázismotor figyeli a megadott eseményeket, és a konfigurációnak megfelelően rögzíti azokat. A nyomkövetési motor megfelelően konfigurált esetben minimális hatással van a szerver teljesítményére, így gyűjti az eseményadatokat.

Az alapul szolgáló SQL Trace infrastruktúra könnyűsúlyú eseményhookokat használ az adatbázismotorban. Amikor egy olyan esemény történik, amely megfelel a nyomkövetési definíciónak, a motor rögzíti a releváns információkat, és vagy elküldi azokat a Profiler felületre, vagy fájlba vagy táblázatba tárolja. Ez az architektúra rugalmas adatgyűjtést tesz lehetővé az alkalmazáskód módosítása nélkül.

2.2 Kulcsfogalmak és terminológia

2.2.1 Események

Az események konkrét eseményeket képviselnek SQL Server amit a nyomkövető motor rögzíteni tud. Minden esemény egy adott adatbázis-műveletnek vagy rendszertevékenységnek felel meg. SQL Server A Profiler logikus kategóriákba rendezi az eseményeket a könnyebb konfigurálás érdekében.

A gyakori eseménykategóriák közé tartozik a TSQL a lekérdezések végrehajtásához, a tárolt eljárások az eljáráshívásokhoz, a zárolások a párhuzamosságok monitorozásához, valamint a hibák és figyelmeztetések a kivételek követéséhez. A megfelelő események kiválasztása határozza meg, hogy milyen információkat rögzít a nyomkövetés, és közvetlenül befolyásolja a nyomkövetés hasznosságát és teljesítményterhelését.

Az eseménytípusok megértése segít a hatékony nyomkövetések konfigurálásában. Az RPC:Completed események a távoli eljáráshívások befejeződéseit rögzítik, az SQL:BatchCompleted események az eseti lekérdezési kötegeket követik nyomon, a Lock:Deadlock események pedig a holtpontok előfordulását azonosítják. Válasszon olyan eseményeket, amelyek összhangban vannak az Ön konkrét hibaelhárítási vagy monitorozási céljaival.

2.2.2 Adatoszlopok

Az adatoszlopok határozzák meg, hogy a nyomkövetés milyen információkat rögzít az egyes eseményekhez. A gyakori oszlopok közé tartozik a TextData az aktuális SQL utasításhoz, a Duration a végrehajtási időhöz, a CPU a processzor kihasználtságához, az Reads a logikai lemez olvasásához és az Writes a logikai lemez írásához.

Az alapvető oszlopok felhasználási esettől függően változnak. A teljesítménybeli hibakereséshez jellemzően a Duration, CPU, Reads és Writes oszlopokra van szükség. A biztonsági auditáláshoz a LoginName, DatabaseName és ObjectName oszlopokra van szükség. Az alkalmazás-hibakereséshez az ApplicationName, SPID és Error oszlopok hasznosak.

Csak a szükséges oszlopok kiválasztása csökkenti a nyomkövetési terhelést és leegyszerűsíti az elemzést. Kerülje az összes elérhető oszlop rögzítését, kivéve, ha kifejezetten szükséges. Minden további oszlop növeli a begyűjtött és feldolgozott adatok mennyiségét, ami potenciálisan befolyásolhatja a szerver teljesítményét.

2.2.3 szűrők

A szűrők meghatározott kritériumok alapján korlátozzák, hogy a nyomkövetés mely eseményeket rögzítse. A megfelelően konfigurált szűrők jelentősen csökkentik a nyomkövetés mennyiségét, így az elemzés kezelhetővé válik, és minimalizálják a teljesítményre gyakorolt ​​hatást. A szűrők a rögzítés előtt kiértékelik az eseményadatokat, megakadályozva a szükségtelen adatgyűjtést.

Gyakori szűrőfeltételek közé tartozik a DatabaseName, amely adott adatbázisokra fókuszál, az ApplicationName, amely bizonyos alkalmazásokat izolál, a Duration, amely csak a lassú műveleteket rögzíti, és a LoginName, amely adott felhasználókat követ. Több szűrő kombinálásával pontos nyomkövetési definíciók hozhatók létre, amelyek pontosan azt rögzítik, amire szüksége van.

A teljesítménytudatos szűrés elengedhetetlen az éles környezetekben. Mindig az Adatbázisnév vagy az Alkalmazásnév alapján szűrjön, hogy elkerülje a rendszertevékenység rögzítését. Állítson be minimális időtartam-küszöbértékeket a gyorsan végrehajtódó lekérdezések figyelmen kívül hagyásához. A TextData szűrőket óvatosan használja, mivel ezek karakterlánc-összehasonlításokat igényelnek, amelyek terhelést jelentenek.

2.2.4 Nyomkövetési sablonok

A nyomkövetési sablonok előre konfigurált esemény-, oszlop- és szűrőkiválasztási lehetőségeket biztosítanak a gyakori forgatókönyvekhez. SQL Server A Profiler számos beépített sablont tartalmaz, amelyek segédeszközként szolgálnak.tarpontok rögzítése nyomkövetés létrehozásához. Az egyéni sablonok elmentik a konfigurációkat, hogy több nyomkövetési munkamenetben is újra felhasználhatók legyenek.

A Standard sablon általános eseményeket rögzít, amelyek alkalmasak az alapvető monitorozáshoz. A TSQL sablon a lekérdezések végrehajtására összpontosít minimális terheléssel. A Tuning sablon kifejezetten az Adatbázismotor Tuning Advisor elemzéséhez gyűjt eseményeket. Minden sablon egyensúlyt teremt az információgyűjtés és a teljesítményre gyakorolt ​​hatás között.

Az egyéni sablonok létrehozása időt takarít meg, és biztosítja a konzisztenciát a nyomkövetési munkamenetek között. Konfiguráljon egy nyomkövetést a kívánt eseményekkel, oszlopokkal és szűrőkkel, majd mentse el sablonként. Az egyéni sablonok különösen értékesek lesznek, ha ismételten hasonló problémákat kell elhárítania.

3. S megszerzésetarted vele SQL Server Profiler

3.1 Rendszerkövetelmények és előfeltételek

SQL Server A Profiler a következővel érkezik: SQL Server Management Studio, és támogatja az összes jelenleg karbantartott SQL Server verziók, tól SQL Server 2016 a 2022.

Az engedélyezési követelmények határozzák meg, hogy ki hozhat létre és futtathat nyomkövetéseket. A fix kiszolgálói szerepkör tagjai korlátlan hozzáféréssel rendelkeznek a következőkhöz: SQL Server Profiler funkció. Nem rendszergazdai felhasználók számára az ALTER TRACE engedély lehetővé teszi a nyomkövetések létrehozását és kezelését.

A távoli szerverek nyomkövetése során hálózati szempontokat kell figyelembe venni. Az ügyféloldali nyomkövetésekhez folyamatos hálózati kapcsolat szükséges a munkaállomás és a szerver között. SQL Server példány. A megszakadt kapcsolatok leállítják a kliensoldali nyomkövetéseket, ami potenciálisan elvesztheti a rögzített adatokat. A szerveroldali nyomkövetések ezt a korlátozást úgy kerülik el, hogy teljes egészében az adatbázis-kiszolgálón futnak.

3.2 Indítás SQL Server Profiler

S 3.2.1tarting from SQL Server Menedzsment Stúdió (SSMS)

Kövesse ezeket a lépéseket az indításhoz SQL Server Profiler az SSMS-ből:

  1. Nyisd ki SQL Server Management Studio és csatlakozás bármelyhez SQL Server példa.
  2. Kattintson az Eszközök menü a felső menüsorban.
  3. választ SQL Server Profiler a legördülő menüből.
  4. A SQL Server A Profiler alkalmazás új ablakban indul el.

Start SQL Server Profiler be SQL Server Menedzsment Stúdió.

S 3.2.2tarWindows S-bőltart Menü

Hozzáférni SQL Server Profiler közvetlenül Windowsból a következő lépésekkel:

  1. Kattintson az Ablakok gombra Start gombot.
  2. típus SQL Server Profiler a keresőmezőbe.
  3. választ SQL Server Profiler a keresési eredmények közül.
  4. Az alkalmazás aktív kapcsolatok nélkül indul el.

Start SQL Server Profiler a Windows keresőmezőjéből.

Vagy navigáljon az Start menü hierarchy:

  1. Nyissa meg a Start menüben.
  2. Keresse meg a microsoft SQL Server Eszközök mappát.
  3. Bontsa ki a mappát, és kattintson a SQL Server Profiler.

Start SQL Server Profiler a Windows rendszerbőltart menü.

3.2.3 Csatlakozás a következőhöz SQL Server Példányok

Indítás után SQL Server Profiler, hozzon létre kapcsolatot a következő lépésekkel:

  1. Kattints filé a menüsorban.
  2. választ Új nyomkövetés a legördülő menüből.
  3. A Csatlakozás a kiszolgálóhoz párbeszédablak jelenik meg.
  4. Írd be a szervered nevét a Szerver név mező.
  5. A pop-art design, négy időzóna kijelzése egyszerre és méretének arányai azok az érvek, amelyek a NeXtime Time Zones-t kiváló választássá teszik. Válassza a Windows hitelesítés or SQL Server Hitelesítés.
  6. Ha használja SQL Server Hitelesítés, adja meg bejelentkezési adatait.
  7. Kattints Csatlakozás a kapcsolat létrehozásához.

Csatlakozás a SQL Server példányban SQL Server Profilkészítő.

Távoli kapcsolatok esetén adja meg a teljes szervernevet, beleértve a példánynevet is, ha alkalmazható.cabpl. Nevezett példányok esetén használja a KISZOLGÁLÓNÉV\PÉLDÁNYNÉV formátumot. Ellenőrizze a hálózati kapcsolatot és a tűzfal beállításait, ha a csatlakozási kísérletek sikertelenek.

4. Létrehozás és konfigurálás SQL Server Nyomokban

4.1 Az első nyomvonal létrehozása sablon használatával

Az első nyomkövetés elkészítéséhez kövesse az alábbi lépéseket:

  1. Indít SQL Server Profilkészítő.
  2. Kattints filé -> Új nyomkövetés és csatlakozzon a tarszerezd meg a szervert.
  3. A Nyomkövetési tulajdonságok párbeszédablak jelenik meg.
  4. Adjon meg egy leíró nevet a Nyomkövetés neve mező.
  5. Válasszon ki egy sablont a Használja a sablont ledob.
  6. Válassza a Normál (alapértelmezett) sablon általános monitorozáshoz. Vagy egy másik sablon más célokra. A sablon előre konfigurált eseményeket, oszlopokat és szűrőket biztosít a gyakori forgatókönyvekhez.
  7. Kattints futás hogy staraz események azonnali rögzítése.

Állítsa be a nyomkövetési tulajdonságokat a SQL Server Profilkészítő.

4.2 A nyomvonal testreszabása

Sokszor előfordul, hogy a sablonok nem felelnek meg az igényeidnek. Ilyen esetben teljes mértékben testre szabhatod a nyomkövetést:

  1. A Nyomkövetési tulajdonságok párbeszéd.
  2. Válassza ki a Üres sablon a Használja a sablont ledob.Használjon üres sablont a nyomkövetéshez.
  3. Kattintson az Események kiválasztása lapon mostantól testreszabhatja az összes eseményt, adatoszlopot és szűrőt az igényei szerint. Ezeket a következő szakaszokban tárgyaljuk.
    Szabja testre a nyomkövetést a „Nyomkövetés tulajdonságai” párbeszédpanel „Eseménykiválasztás” lapján.

4.3 Rögzítendő események kiválasztása

Kiválaszthat egy eseményt a Események kiválasztása tab:

  1. Kattintson az + ikonra az Esemény kategória mellett a kibontásához.
  2. Kattintson az esemény melletti jelölőnégyzetre a kiválasztásához.

Válasszon ki egy eseményt a „Nyomkövetés tulajdonságai” párbeszédpanelen.

4.3.1 Az eseménykategóriák megértése

SQL Server A Profiler logikai csoportosítás céljából kategóriákba rendezi az eseményeket. A Tárolt eljárások kategória eljárásvégrehajtási eseményeket tartalmaz, beleértve az SP:S-t is.tarting, SP:Completed és SP:StmtCompleted. Ezek az események nyomon követik a tárolt eljáráshívásokat és az egyes utasítások végrehajtását az eljárásokon belül.

A TSQL kategória az eseti lekérdezések végrehajtását rögzíti olyan eseményekkel, mint az SQL:BatchS.tarting és SQL:BatchCompleted. Ezek az események a közvetlenül a következőhöz beküldött lekérdezéseket követik nyomon: SQL Server tárolt eljárásokon kívül.

A Zárolások kategória figyeli a párhuzamos működéssel kapcsolatos eseményeket, beleértve a Lock:Acquired, Lock:Released, Lock:Deadlock és Lock:Timeout eseményeket. Ezekkel az eseményekkel diagnosztizálhatja az alkalmazás teljesítményét befolyásoló blokkolási és holtponti problémákat.

A Hibák és figyelmeztetések kategória a kivételes eseményeket rögzíti, beleértve a Kivétel, Figyelem és Felhasználói hibaüzenet eseményeket. Ezek az események segítenek az alkalmazáshibák azonosításában és SQL Server figyelmeztetések a nyomkövetési munkamenetek során.

4.3.2 A megfelelő események kiválasztása a forgatókönyvhöz

A teljesítményfigyeléshez olyan eseményekre van szükség, amelyek rögzítik az erőforrás-felhasználást. Válassza az RPC:Completed és az SQL:BatchCompleted elemeket a lekérdezések végrehajtásának nyomon követéséhez. Az erőforrás-felhasználás méréséhez vegye fel az Duration, CPU, Reads és Writes oszlopokat. Ezek az események adják alapot a teljesítménybeli szűk keresztmetszetek azonosításához.

A biztonsági auditáláshoz olyan eseményekre van szükség, amelyek nyomon követik a hitelesítést és az engedélyezést. Az adatbázis-hozzáférés monitorozásához válassza a Bejelentkezés auditálása, a Kijelentkezés auditálása, a Bejelentkezés auditálása sikertelen és az Objektum:Megnyitva elemeket. A LoginName, DatabaseName és ObjectName oszlopok használatával azonosíthatja, hogy ki mely erőforrásokhoz fér hozzá.

A hibakeresési forgatókönyvek átfogó eseményrögzítéssel érhetők el. Tartalmazhat tárolt eljárás eseményeket, SQL kötegelt eseményeket és hibaeseményeket a teljes végrehajtási folyamatok nyomon követéséhez. További kontextus rögzítése SPID, ApplicationName és H használatával.ostNevezd el az oszlopokat az események adott munkamenetekhez való kapcsolásához.

4.4 Adatoszlopok konfigurálása

Alapértelmezés szerint egy esemény kiválasztásakor az összes adatoszlop ki lesz jelölve. A felesleges oszlopok kijelölésének megszüntetésével csökkentheti a többletterhelést és egyszerűsítheti az elemzést:

Jelölje ki/törölje a kijelölést egy eseményhez tartozó adatoszlopokon a „Nyomkövetés tulajdonságai” párbeszédpanelen.

Minden nyomkövetéshez elengedhetetlen oszlopok közé tartozik az EventClass az esemény típusának azonosítására, a TextData az aktuális SQL utasítás rögzítéséhez, a LoginName a végrehajtó felhasználó azonosítására, és az StarAz esemény bekövetkezésének időbélyegzője. Ezek az oszlopok alapvető kontextust biztosítanak minden rögzített eseményhez.

A teljesítményhez kapcsolódó oszlopok az erőforrás-felhasználást mérik. Az időtartam azt jelzi, hogy egy esemény mennyi ideig tartott mikroszekundumban. A CPU a processzor idejét mutatja milliszekundumban. Az olvasások a logikai oldalolvasásokat számolják. Az írások a logikai oldalírásokat követik nyomon. Ezek a mérőszámok azonosítják az optimalizálást igénylő erőforrás-igényes műveleteket.

A biztonsági és audit oszlopok nyomon követik az adathozzáférési mintákat. Az DatabaseName azonosítja, hogy melyik adatbázishoz fértek hozzá. Az ObjectName meghatározza az érintett táblát vagy objektumot. Az ApplicationName felfedi, hogy melyik alkalmazás kezdeményezte a tevékenységet. Ezek az oszlopok együttesen átfogó auditnaplókat biztosítanak.

4.5 Szűrők beállítása a zaj csökkentésére

4.5.1 Általános szűrőfeltételek

A szűrők konfigurálása a következő módszerrel történik:

  1. Nyissa meg a Nyomkövetési tulajdonságok párbeszéd.
  2. Kattintson az Események kiválasztása Tab.
  3. Kattints Oszlopszűrők gombot a jobb alsó sarokban.
    Kattintson az „Oszlopszűrők” gombra a „Nyomkövetés tulajdonságai” párbeszédpanelen.
  4. Válasszon ki egy oszlopot a bal oldali listából.
  5. A jobb oldali panelen konfigurálja a szűrőfeltételeket.
    Állítsa be az adatoszlop szűrőjét a „Nyomkövetés tulajdonságai” párbeszédpanelen.
  6. Kattints OK a szűrő alkalmazásához.

Az alkalmazásnév-szűrők elkülönítik az adott alkalmazások tevékenységét. Bontsa ki az Alkalmazásnév oszlopot a szűrő párbeszédpanelen, és adja meg az alkalmazás nevét a mezőben. Mint mező, és SQL Server A Profiler csak az adott alkalmazás eseményeit rögzíti. Ez a szűrő felbecsülhetetlen értékűnek bizonyul az alkalmazásspecifikus problémák elhárításakor.

Az adatbázisnév-szűrők korlátozzák a rögzítést adott adatbázisokra. Szűrjön az AdatbázisNév alapján, hogy kizárja a rendszeradatbázis-tevékenységet, és az alkalmazásadatbázisokra összpontosítson. Adja meg az adatbázisneveket a Mint or Egyenlő mezőt attól függően, hogy szükséged van-e helyettesítő karakteres egyeztetésre.

Az időtartamszűrők csak a lassan futó műveleteket rögzítik. Állítson be egy minimális küszöbértéket a Nagyobb vagy egyenlő mezőt az Időtartam oszlop alatt. Például az Időtartam >= 1000 beállítás csak az egy másodpercnél hosszabb eseményeket rögzíti, kiszűrve a gyorsan végrehajtódó lekérdezéseket.

A felhasználónév-szűrők nyomon követik az adott felhasználói tevékenységeket. Szűrés bejelentkezési név alapján az adott adatbázis-felhasználók figyeléséhez. Ez a megközelítés segít azonosítani, hogy mely felhasználók hajtanak végre problémás lekérdezéseket, vagy férnek hozzá érzékeny adatokhoz.

4.4.2 Szűrési ajánlott eljárások

A hatékony szűrés egyensúlyt teremt az adatgyűjtés és a teljesítményre gyakorolt ​​hatás között. Mindig alkalmazzon legalább egy szűrőt a túlzott rendszertevékenység rögzítésének elkerülése érdekében. Az AdatbázisNév és az AlkalmazásNév szűrőknek kell lenniük.tartalálati pont m-hezost számokat.

Kerülje a túl tág nyomkövetéseket éles környezetekben. A szűretlen nyomkövetések hatalmas mennyiségű adatot rögzítenek, ami potenciálisan ronthatja a szerver teljesítményét és a tévesztő elemzést lehetetlenné teheti. Állítson be olyan szűrési feltételeket, amelyek... tarszerezd meg a hibaelhárítási céljaidat.

Tesztelje a szűrőket az éles környezetben való telepítés előtt. Először futtasson nyomkövetéseket fejlesztői vagy tesztkörnyezetekben, hogy ellenőrizze, hogy a szűrők túlzott terhelés nélkül rögzítik-e a várt eseményeket. Módosítsa a szűrőfeltételeket a rögzített adatok mennyisége alapján.

4.5 Nyomkövetési sablonok használata

4.5.1 Beépített sablonok áttekintése

A Standard sablon kiegyensúlyozott eseményrögzítést biztosít, amely alkalmas általános monitorozásra. Tartalmazza a gyakori lekérdezés-végrehajtási eseményeket, a tárolt eljáráshívásokat és az alapvető hibakövetést. Használja ezt a sablont, ha átfogó áttekintésre van szüksége anélkül, hogy pontosan tudná, mit kell keresnie.

A TSQL sablon kifejezetten a lekérdezések végrehajtására összpontosít minimális eseménykiválasztással. Rögzíti az SQL:BatchCompleted és RPC:Completed eseményeket, a teljesítményelemzéshez szükséges oszlopokkal. Ez a sablon alacsonyabb terhelést kínál, mint a Standard sablon.

A Tuning sablon optimalizálja az események kiválasztását az Adatbázismotor Tuning Advisor elemzéséhez. Rögzíti a munkaterhelés-elemzéshez és az indexjavaslatokhoz szükséges eseményeket és oszlopokat. Használja ezt a sablont az automatikus teljesítményhangoláshoz szükséges nyomkövetések előkészítésekor.

A TSQL_Replay sablon tartalmazza az összes olyan eseményt és oszlopot, amelyek a nyomkövetési visszajátszási funkcióhoz szükségesek. Átfogó végrehajtási részleteket rögzít, lehetővé téve a rögzített munkaterhelések reprodukálását tesztkörnyezetekben. Ez a sablon nagyobb nyomkövetési fájlokat generál a kiterjedt adatgyűjtésnek köszönhetően.

4.5.2 Egyéni sablonok létrehozása

Egyéni sablonok létrehozása az alábbi lépések szerint:

  1. Kattints filé -> sablonok -> Új sablon …
  2. Adjon meg egy leíró nevet a Új sablon neve mező.
  3. Opcionálisan jelölje be Új sablon alapozása meglévő alapján és válasszon ki egy meglévő sablont, ha nem szeretne a nulláról építeni:
    Hozz létre egy új sablont a SQL Server Profilkészítő.
  4. Kattintson az Esemény kiválasztása lapon szabja testre a nyomkövetési sablont a kívánt eseményekkel, oszlopokkal és szűrőkkel, akárcsak Ön csináld egy normál nyomkövetéssel.
  5. Kattints Megtakarítás a sablon mentéséhez.

Sablonok exportálása csapattagokkal való megosztáshoz vagy biztonsági mentés céljából:

  1. Kattints filé -> sablonok -> Sablon exportálása.
  2. Válassza ki az exportálni kívánt sablont.
    Nyomkövetési sablon exportálása a SQL Server Profilkészítő.
  3. Navigálj a kívánt mentési helyre.
  4. Adjon meg egy fájlnevet, és kattintson Megtakarítás.
  5. Oszd meg a *.tdf fájlt (SQL Server Profiler sablonfájl) másokkal SQL Server Profiler felhasználók.

4.6 Nyomkövetési kimenet mentése

Alapértelmezésben, SQL Server A Profiler megjeleníti az eseményeket a nyomkövetési ablakban, de NEM menti el őket. A nyomkövetési adatokat fájlba vagy táblázatba mentheti a Nyomkövetési tulajdonságok párbeszédpanelt, amikor új nyomkövetést hoz létre.

4.6.1 Mentés fájlba

  1. A Nyomkövetési tulajdonságok párbeszédpanelen ellenőrizze Mentés fájlba.
  2. Kattintson a mappa ikonra a fájlböngésző megnyitásához.
  3. Navigálj a kívánt mentési helyre.
  4. Adjon meg egy .trc kiterjesztésű fájlnevet.
  5. Kattints Megtakarítás.
  6. Készlet Maximális fájlméret beállítása az egyes fájlok méretének korlátozására.
  7. engedélyezése Fájlátvivő engedélyezése több fájl létrehozásához.
  8. Opcionálisan engedélyezhető A szerver feldolgozza a nyomkövetési adatokat szerveroldali nyomkövetésekhez.

A „Nyomkövetés tulajdonságai” párbeszédpanelen állítsa be a nyomkövetési adatok fájlba mentését.

A fájlméret-kezelés megakadályozza a lemezterület kimerülését. Állítsa be a maximális fájlméretet egy ésszerű értékre, például 500 MB-ra vagy 1 GB-ra a rendelkezésre álló lemezterület és a várható nyomkövetési időtartam alapján. A fájlátvitel automatikusan új fájlokat hoz létre, amikor a fájl eléri a méretkorlátot, és egy számot fűz a fájlnévhez.

4.6.2 Mentés a táblázatba

  1. A Nyomkövetési tulajdonságok párbeszédpanelen ellenőrizze Mentés a táblázatba.
  2. A Céltábla párbeszédablak jelenik meg.
    Válassza ki a céltáblát a nyomkövetési adatok mentéséhez.
  3. Válassza ki a szervert a szerverünkhöz! ledob.
  4. Válassza ki az adatbázist a adatbázis ledob.
  5. Válasszon ki egy meglévő táblázatot, vagy adjon meg egy új táblázatnevet a Táblázat mező.
  6. Kattints OK megerősítéséhez.
  7. Opcionálisan beállítható Maximális sorszám beállítása a tábla méretének korlátozására.

Állítsa be a nyomkövetési adatok táblázatba mentését a „Nyomkövetési tulajdonságok” párbeszédpanelen.

A teljesítményszempontok a táblázatokba mentéskor érvényesek. A táblázatos tárolás további terhelést jelent a fájltároláshoz képest, mivel SQL Server A nyomkövetési adatokat a tárolómotoron keresztül kell írni. Használja a táblaalapú tárhelyet, ha a nyomkövetési adatokat azonnal le kell kérdeznie T-SQL-lel.

Az adatmegőrzés fontossá válik a táblázatalapú nyomkövetések esetében. Állítson be maximális sorszámkorlátokat, hogy megakadályozza a táblázatok túl nagyra növekedését. A teljesítmény fenntartása érdekében rendszeresen archiválja vagy törölje a régi nyomkövetési adatokat. A jobb kezelhetőség érdekében érdemes megfontolni a nagy nyomkövetési táblázatok particionálását.

5. Futtatás és kezelés SQL Server Nyomokban

S 5.1tarNyomkövetések rögzítése, szüneteltetése és leállítása

A nyomkövetés végrehajtásának kezelése az eszköztár gombjaival:Nyomkövetések kezelése eszköztár gombokkal itt: SQL Server Profilkészítő.

  • A zöld Start gomb megnyomásával megkezdheti az események rögzítését a konfigurációnak megfelelően.
  • Kattints szünet tempóznirarazonnal felfüggesztheti az adatgyűjtést a kapcsolat elvesztése nélkül.
  • Kattints megáll a nyomkövetés befejezéséhez és a kapcsolat lezárásához.

Menüpontokon keresztül:
Nyomkövetések kezelése menüpontokon keresztül SQL Server Profilkészítő.

Kattintson jobb gombbal bármelyik bejegyzésre a nyomkövetési ablakban:

A nyomkövetések kezelése a jobb gombbal elérhető menüelemekkel érhető el. SQL Server Profilkészítő.

A nyomkövetési életciklus-kezelés hatással van a szerver erőforrásaira. Az aktív nyomkövetések a rögzített események mennyiségével arányosan fogyasztják a memóriát és a feldolgozási teljesítményt. A nyomkövetések szüneteltetése azokban az időszakokban, amikor nincs szükség monitorozásra a terhelés csökkentése érdekében. A nyomkövetések teljes leállítása az elemzés befejezése után az erőforrások felszabadítása érdekében.

Az ügyféloldali nyomkövetésekhez aktív Profiler-kapcsolat szükséges. SQL Server A Profiler ablak azonnal leállítja a kliensoldali nyomkövetéseket. A Profiler ablak minimalizálása a bezárás helyett, hogy a nyomkövetések más alkalmazásokban való munka közben is futhassanak.

5.2 Valós idejű nyomkövetés-monitorozás

Figyelje a rögzített eseményeket a fő nyomkövetési ablakban, ahogy azok bekövetkeznek. Minden sor egyetlen eseményt jelöl, az oszlopok pedig az esemény tulajdonságait jelenítik meg. A rács folyamatosan frissül az aktív nyomkövetések során, megjelenítve az most Alapértelmezés szerint a legutóbbi események alul vannak.

Valós idejű nyomkövetési monitor SQL Server Profilkészítő.

Azonosítsa a mintákat és a problémákat az események gyakoriságának és jellemzőinek megfigyelésével. A hosszú időtartamú események teljesítményproblémákra utalnak. A gyakori hibaesemények alkalmazásproblémákra utalhatnak. A szokatlan bejelentkezési tevékenység biztonsági aggályokra utalhat. A valós idejű monitorozás lehetővé teszi az azonnali reagálást a felmerülő problémákra.

Görgessen végig a rögzített eseményeken, hogy megvizsgálja az adott előfordulásokat. Kattintson bármelyik sorra egy esemény kiválasztásához és a teljes részletek megtekintéséhez. Kattintson duplán az eseményekre a részletes tulajdonságpárbeszédablakok megnyitásához, amelyek az összes oszlop értékét tartalmazzák. Használja a görgetőzár funkciót az automatikus görgetés megakadályozásához a korábbi események áttekintése közben.

5.3 Több egyidejű nyomkövetés kezelése

Több nyomkövetés egyidejű futtatása rugalmasságot biztosít az összetett monitorozási forgatókönyvekhez. Hozzon létre külön nyomkövetéseket az adatbázis-tevékenység különböző aspektusaihoz, például egyet a teljesítménymonitorozáshoz és egy másikat a biztonsági auditáláshoz. Minden nyomkövetés függetlenül fut, saját konfigurációval.

Több egyidejű nyomkövetés kezelése SQL Server Profilkészítő.

Az erőforrás-elosztás kritikus fontosságúvá válik több nyomkövetés futtatása esetén. Minden aktív nyomkövetés memóriát, CPU-t és potenciálisan lemez I/O-t is fogyaszt. Korlátozza az egyidejű nyomkövetések számát, és gondoskodjon arról, hogy minden nyomkövetés megfelelő szűrőket használjon a terhelés minimalizálása érdekében. Figyelje a szerver teljesítményét több nyomkövetés futtatása közben.

Koordinálja a nyomkövetési időzítést a nagy terhelésű nyomkövetések átfedésének elkerülése érdekében. Ha lehetséges, futtassa az erőforrás-igényes nyomkövetéseket alacsony aktivitású időszakokban. Ütemezzen különböző nyomkövetéseket különböző időpontokra ahelyett, hogy mindent egyszerre futtatna.

5.4 Kliensoldali és szerveroldali nyomkövetések

Alapértelmezés szerint az újonnan létrehozott nyomkövetés egy kliensoldali nyomkövetés, amelyhez aktív kapcsolat szükséges a következőtől: SQL Server Profiler az adatbázis-kiszolgálóhoz. A nyomkövetés azonnal leáll, ha a kapcsolat megszakad.ost vagy a Profiler be van zárva.

Létrehozhat egy szerveroldali nyomkövetést is, amely teljes egészében a SQL Server példány aktív Profiler-kapcsolat nélkül. A kiszolgálóoldali nyomkövetés a bezárás után is fut. SQL Server Profiler, adatokat ír a megadott fájlhelyre.

Kiszolgálóoldali nyomkövetés létrehozásához:

  1. Kattintson a Fájl -> Új nyomkövetés… menüpontra.
  2. A Nyomkövetési tulajdonságok párbeszédpanelen ellenőrizze Mentés fájlba
  3. Állítsa be a fájl helyét és egyéb beállításokat.
  4. engedélyezése A szerver feldolgozza a nyomkövetési adatokat szerveroldali nyomkövetés létrehozásához.

Hozz létre egy szerveroldali nyomkövetést a SQL Server Profilkészítő.

A teljesítményvonzatok jelentősen eltérnek a nyomkövetési típusok között. Az ügyféloldali nyomkövetéseknek a hálózaton keresztül kell továbbítaniuk az adatokat a Profiler felületére, ami késleltetést és sávszélesség-fogyasztást eredményez. A szerveroldali nyomkövetések kevesebb terhelést okoznak, mivel az adatok közvetlenül a szerveren lévő lemezre íródnak.

Használjon kliensoldali nyomkövetéseket eseti hibaelhárításhoz és gyors diagnosztizáláshozostic munkamenetek, valamint olyan helyzetek, ahol az azonnali vizuális visszajelzés értékes. Válasszon szerveroldali nyomkövetéseket éles környezet monitorozásához, hosszú ideig futó rögzítésekhez és felügyelet nélküli működést igénylő forgatókönyvekhez.

6. Elemzés SQL Server Profiler adatok

6.1 Mentett görbék megnyitása és áttekintése

A mentett nyomkövetési fájlok betöltése a következő lépésekkel lehetséges:

  1. Indít SQL Server Profilkészítő.
  2. Kattints filé -> Nyisd ki -> Nyomkövetési fájl.
  3. Navigáljon a nyomkövetési fájl helyéhez.
  4. Jelölje ki a .trc fájlt, és kattintson a Nyisd ki.
  5. A nyomkövetési adatok betöltődnek a főablakba.

A nyomkövetési táblák betöltése a következő folyamat szerint:

  1. Kattints filé -> Nyisd ki -> Nyomkövetési táblázat.
  2. Csatlakozás a szerverhez hosta nyomkövetési táblázat használata.
  3. Válassza ki az adatbázist a adatbázis ledob.
  4. Válassza ki az asztalt a Táblázat ledob.
  5. Kattints OK az adatok betöltéséhez.

6.2 Nyomkövetési adatok szűrése és keresése

6.2.1 Post-Rögzítés szűrése

A betöltött nyomkövetési adatokra a következő lépésekkel alkalmazzon szűrőket:

  1. Kattints Szerkesztés -> Találjon vagy nyomja meg a gombot Ctrl + F.
  2. Írja be a keresendő szöveget a Mit keres mező.
  3. Válassza ki a keresendő oszlopot a listából Benéz ledob.
  4. Kattints Következő keresése egyező események megtalálásához.

Nyomkövetési adatok keresése itt: SQL Server Profilkészítő.

Az oszlopalapú szűrés finomítja a megjelenített adatokat az események újbóli rögzítése nélkül. Kattintson jobb gombbal bármelyik oszlopfejlécre, és válassza a szűrési beállításokat a helyi menüből. Adja meg a szűrési feltételeket, hogy csak az egyező sorokat jelenítse meg. Ez a megközelítés felgyorsítja az elemzést azáltal, hogy elrejti a nem releváns eseményeket.

6.2.2 Konkrét események keresése

A keresési funkció segít megtalálni a kívánt eseményeket nagyméretű nyomkövetési fájlokban. A Keresés párbeszédpanelen szöveges tartalom, eseménytípus vagy oszlopérték alapján kereshet. A reguláris kifejezések szükség esetén összetett keresési mintákat tesznek lehetővé.

Könyvjelzővel elláthatja a fontos eseményeket a gyors áttekintés érdekében elemzés közben. Kattintson jobb gombbal az érdekes eseményekre, és válassza a könyvjelző opciókat a megjelöléshez. Navigáljon a könyvjelzők között billentyűparancsokkal vagy menüparancsokkal, megkönnyítve a kapcsolódó események összehasonlítását.

6.3 Események csoportosítása és összesítése

Csoportosítsa az eseményeket oszlopértékek szerint a mintázatok azonosításához és a tevékenységek összegzéséhez. Kattintson jobb gombbal bármelyik oszlopfejlécre, és válassza a lehetőséget. Csoportosítás ezen oszlop szerint események rendszerezéséhez. A csoportosított nézetek összecsukják a hasonló eseményeket, így könnyebben áttekinthetők az általános minták.

Az összesített nézetek statisztikai összefoglalókat biztosítanak a nyomkövetési adatokról. Csoportosítsd szöveges adatok szerint, hogy lásd, hányszor futottak le az egyes lekérdezések. Csoportosítsd bejelentkezési név szerint, hogy lásd a felhasználónkénti aktivitás-összefoglalókat. Az összesítés olyan mintákat tár fel, amelyek nem azonnal nyilvánvalóak a részletes eseménylistákban.

A csoportok kibontásával és összecsukásával részletesebben is megtekintheti az adott kategóriákat. Kattintson a csoportok fejlécei melletti plusz és mínusz ikonokra a csoportosított események megjelenítéséhez vagy elrejtéséhez. Ez araraz okos nézet lehetővé teszi a felülről lefelé irányuló elemzést,tarmagas szintű mintákkal való játszadozás és a részletekbe való belemerülés.

6.4 SQL lekérdezések kinyerése nyomkövetésekből

A nyomkövetési adatokból a következő lépésekkel vonhat ki lekérdezéseket:

  1. Keresse meg a kívánt lekérdezést a nyomkövetési rácsban.
  2. Kattintson a sorra az esemény kiválasztásához.
  3. A teljes lekérdezés szövegét az alsó panelen tekintheti meg.
  4. Sajtó Ctrl + A a lekérdezés összes szövegének kijelöléséhez.
  5. Sajtó Ctrl + C a lekérdezés szövegének másolásához.
  6. Illessze be a lekérdezést a Management Studio programba további elemzés céljából.

SQL lekérdezés kinyerése a nyomkövetési eseményből.

A problémás lekérdezéseket teljesítményoszlopok szerinti rendezéssel azonosíthatja. Kattintson az Időtartam oszlopfejlécre a végrehajtási idő szerinti rendezéshez. A leglassabb lekérdezések a rendezési iránytól függően felül vagy alul jelennek meg. Hasonlóképpen, rendezzen CPU, Olvasások vagy Írások szerint az erőforrás-igényes műveletek azonosításához.

Lekérdezések exportálása tesztelésre a nyomkövetésből a lekérdezési ablakokba másolással. A kinyert lekérdezések módosítása optimalizálási stratégiák teszteléséhez. Végrehajtási tervek és teljesítménymutatók összehasonlítása az eredeti és az optimalizált verziók között.

6.5 Korrelációs események és a végrehajtási folyamat megértése

A szülő-gyermek események közötti kapcsolatok a végrehajtást mutatják.rarchies. SQL:BatchStarting események szülő SQL:StmtStarting eseményeket, amelyek viszont eljárásvégrehajtási eseményeket szülnek. Ezen kapcsolatok megértése segít nyomon követni a teljes végrehajtási útvonalat a kódban.

A tranzakciókövetés időben összekapcsolja a kapcsolódó eseményeket. Az SPID oszlop segítségével munkamenet szerint csoportosíthatja az eseményeket. Egy munkameneten belül az események időrendi sorrendben történnek, bemutatva a műveletek sorrendjét. Ez a nézet azt mutatja meg, hogy a különböző műveletek hogyan hatnak egymásra a tranzakciókon belül.

Az események összefüggésbe hozása megosztott oszlopértékek vizsgálatával. Az azonos SPID-vel rendelkező események ugyanabban a munkamenetben történtek. Az azonos ApplicationName-mel rendelkező események ugyanabból az alkalmazásból származnak. Használja ezeket a korrelációkat az összetett végrehajtási forgatókönyvek megértéséhez.

7. Közös SQL Server Profiler használati esetek

7.1 Teljesítménybeli hibaelhárítás

7.1.1 Lassú lekérdezések azonosítása

Lassú lekérdezések rögzítése a következő konfigurációval:

  1. Hozz létre egy új nyomkövetést a TSQL sablon.
  2. A Események kiválasztása fül, ellenőrizze SQL:BatchCompleted és a RPC:Befejezve vannak kiválasztva.
  3. Kattints Oszlopszűrők.
  4. választ Időtartam: az oszloplistából.
  5. Írja be a 1000000 értéket a Nagyobb vagy egyenlő mező az 1 másodpercnél hosszabb ideig tartó lekérdezések rögzítéséhez.
  6. Kattints OK és stara nyom.
  7. Futtassa a nyomkövetést a csúcsforgalmi időszakokban.
  8. Állítsa le a nyomkövetést, és rendezze az adatokat időtartam szerint a leglassabb lekérdezések azonosításához.

Az időtartam-alapú elemzés feltárja a végrehajtási idő mintázatait. Rendezze a rögzített eseményeket az Időtartam oszlop szerint, hogy a leghosszabb ideig futó műveletek jelenjenek meg először. Vizsgálja meg a TextData oszlopot ezekhez az eseményekhez, hogy azonosítsa a késésekért felelős tényleges lekérdezéseket.

A CPU- és I/O-igényes lekérdezések eltérő optimalizálási megközelítéseket igényelnek. Rendezze CPU oszlop szerint, hogy megtalálja a processzorhoz kötött lekérdezéseket, amelyek algoritmikus fejlesztéseket igényelnek. Rendezze Olvasások vagy Írások oszlopok szerint, hogy azonosítsa az I/O-igényes lekérdezéseket, amelyek profitálhatnak az indexelésből vagy a lekérdezés-átírásból.

7.1.2 Blokkolás és holtpontok észlelése

Konfigurálja a blokkolások észlelését a következő lépésekkel:

  1. Hozz létre egy új nyomkövetést.
  2. A Események kiválasztása fül, bontsa ki Zárak.
  3. választ Zár: Holtpont és a Zár: Holtpontlánc.
  4. Bontsa Hibák és figyelmeztetések.
  5. választ Blokkolt folyamatjelentés.
  6. Oszlopok beillesztése: SPID, Szöveges adatok, Adatbázis név, Bejelentkezési név.
  7. Stara zárolási események nyomon követése és figyelése.

A zárolási események monitorozása feltárja az alkalmazás teljesítményét befolyásoló párhuzamossági problémákat. A zárolási:holtponti események jelzik, hogy mikor SQL Server észlelte és megoldotta a patthelyzeteket. A Zárolás:Holthely-lánc események a patthelyzetekben részt vevő folyamatokat mutatják.

A holtpont-diagramok vizuálisan ábrázolják a holtpont-forgatókönyveket. Holtpont-esemény bekövetkeztekor a TextData oszlop tartalmazza a holtpontot leíró XML-t. Másolja ki ezt az XML-t, és nyissa meg a következőben: SQL Server Management Studio alkalmazásban megtekintheti a grafikus holtpontdiagramot, amely megmutatja, hogy mely folyamatok blokkolták egymást.

7.1.3 Hiányzó indexek keresése

Rögzítse a munkaterhelést az indexelemzéshez a következő lépésekkel:

  1. Hozz létre egy új nyomkövetést a Hangolás sablon.
  2. Konfigurálja a nyomkövetést úgy, hogy fájlba mentse.
  3. Futtassa a nyomkövetést reprezentatív munkaterhelési időszakokban.
  4. Gyűjts össze legalább néhány órányi tevékenységet.
  5. Állítsa le a nyomkövetést és mentse el a fájlt.
  6. Indítsa el az Adatbázismotor-hangolási tanácsadót.
  7. Válassza ki a nyomkövetési fájlt munkaterhelés forrásaként.
  8. Futtassa az elemzést az indexelési javaslatok fogadásához.

Az Adatbázis-motor Tuning Advisorral való integráció automatizálja az indexajánlásokat. A Tuning Advisor elemzi a rögzített munkaterhelést, és olyan indexeket javasol, amelyek javítanák a teljesítményt. A megvalósítás előtt gondosan tekintse át a javaslatokat, figyelembe véve a tárolási terhelést és a karbantartási költségeket.osts.

7.2 Alkalmazáshiba-elhárítás

7.2.1 Alkalmazáshibák hibakeresése

Alkalmazáshibák nyomon követése ezzel a konfigurációval:

  1. Hozz létre egy új nyomkövetést.
  2. Bontsa Hibák és figyelmeztetések az Események kiválasztása lapon.
  3. választ kivétel, Felhasználói hibaüzenetés Figyelem.
  4. Oszlopok beillesztése: hiba, Szöveges adatok, Alkalmazás neve, SPID.
  5. Szűrés Alkalmazás neve hogy a jelentkezésedre koncentrálhass.
  6. Stara nyomkövetést és a hibaüzenet reprodukálását.
  7. Diagnózis céljából ellenőrizze a rögzített hibákatostic információk.

A hibakövetés feltárja a kivételek részleteit, amelyek gyakran rejtve vannak az alkalmazások elől. A Hiba oszlop tartalmazza SQL Server hibaszámok. A TextData oszlop a hibaüzeneteket és a hibát okozó lekérdezést mutatja. A Súlyosság oszlop a hiba súlyossági szintjét jelzi.

A kivételek monitorozása rögzíti a futásidejű problémákat, beleértve a korlátozások megsértését, az engedélyezési hibákat és az időtúllépési eseményeket. A hibaesemények és a megelőző lekérdezési események összefüggéseinek megértése érdekében érdemes megérteni, hogy mi váltotta ki a kivételeket.

7.2.2 Alkalmazás-adatbázis kommunikáció nyomon követése

Az alkalmazás tevékenységének figyelése a következő lépésekkel lehetséges:

  1. Hozz létre egy új nyomkövetést a Standard sablon.
  2. Kattints Oszlopszűrők.
  3. választ Alkalmazás neve és írja be az alkalmazás nevét a Mint mező.
  4. Opcionális szűrés HostNév hogy elkülönítsenek bizonyos szervereket.
  5. Stara nyomkövetést az alkalmazásműveletek során.
  6. Tekintse át a rögzített eseményeket az összes adatbázis-interakció megtekintéséhez.

Az alkalmazásnév-szűrés elkülöníti a lekérdezéseket adott alkalmazásoktól. SQL Server A kapcsolati karakterláncokból állítja be az alkalmazás nevét, így könnyen nyomon követhetők az egyes alkalmazások többalkalmazásos környezetekben. A hatékony szűrés érdekében ellenőrizze, hogy a kapcsolati karakterlánc tartalmazza-e az Alkalmazásnév paramétert.

A kapcsolatkövetés megjeleníti a munkamenet életciklusát, beleértve a bejelentkezést, a lekérdezés végrehajtását és a kijelentkezési eseményeket. Figyelemmel kíséri a kapcsolatlétrehozási arányokat a kapcsolat-pooling problémák azonosítása érdekében. A túlzott kapcsolati forgalom potenciális alkalmazáskonfigurációs problémákra utal.

7.2.3 Alkalmazás viselkedésének validálása

Az alkalmazás várható viselkedésének ellenőrzése nyomkövetési elemzéssel. Az üzleti tranzakciók során rögzítse az összes adatbázis-műveletet, és ellenőrizze, hogy a megfelelő lekérdezések a megfelelő sorrendben futnak-e. Hasonlítsa össze a ténylegesen rögzített lekérdezéseket a várt viselkedéssel az eltérések azonosítása érdekében.

A paraméterellenőrzés biztosítja, hogy az alkalmazások helyes értékeket adjanak át a tárolt eljárásoknak és a paraméteres lekérdezéseknek. Vizsgálja meg a rögzített lekérdezési szöveget, hogy a paraméterértékek megfeleljenek az elvárásoknak. A helytelen paraméterek gyakran logikai hibákat okoznak, amelyek helytelen üzleti eredményekben nyilvánulnak meg.

7.3 Biztonsági auditálás

7.3.1 Bejelentkezési kísérletek figyelése

A bejelentkezés figyelésének konfigurálása a következő lépésekkel:

  1. Hozz létre egy új nyomkövetést.
  2. Bontsa Security Audit az Események kiválasztása lapon.
  3. választ Bejelentkezés auditáláshoz, Kijelentkezés auditáláskorés Bejelentkezési audit sikertelen.
  4. Oszlopok beillesztése: Bejelentkezési név, HostNév, Alkalmazás neve, StartTime.
  5. Stara nyomkövetést a hitelesítési tevékenység monitorozásához.
  6. Tekintse át a sikertelen bejelentkezési eseményeket a lehetséges biztonsági problémák szempontjából.

A sikeres és sikertelen bejelentkezések átfogó hitelesítéskövetést biztosítanak. Az Audit Login események rögzítik a sikeres hitelesítési kísérleteket a felhasználói identitással és a forrásadatokkal. A sikertelen bejelentkezési események sikertelen bejelentkezési kísérleteket jeleznek, amelyek támadásokra vagy konfigurációs problémákra utalhatnak.

A hitelesítéskövetés mintázatokat tár fel az adatbázis-hozzáférésekben. Figyelje a bejelentkezési gyakoriságot a szokatlan tevékenységek észlelése érdekében. Több sikertelen bejelentkezési kísérlet, majd egy sikeres bejelentkezés, veszélyeztetett hitelesítő adatokra utalhat. A váratlan helyekről történő sikertelen bejelentkezések kivizsgálást indokolnak.

7.3.2 Adathozzáférés és -módosítások nyomon követése

Adathozzáférés monitorozása a következő konfigurációval:

  1. Hozz létre egy új nyomkövetést.
  2. Bontsa Security Audit.
  3. választ Adatbázis-objektumhozzáférés naplózása.
  4. Oszlopok beillesztése: ObjectName, Bejelentkezési név, Szöveges adatok, Adatbázis név.
  5. Szűrés ObjectName bizonyos érzékeny táblázatok figyelésére.
  6. Stara nyomkövetést a hozzáférési kísérletek rögzítéséhez.

A SELECT, INSERT, UPDATE és DELETE műveletek nyomon követése átfogó adatmódosítási auditálást biztosít. Rögzítse az SQL:BatchCompleted eseményeket megfelelő szűrőkkel az összes adathozzáférési művelet monitorozásához. Szűrjön ObjectName vagy TextData alapján az érzékeny táblákra való összpontosításhoz.

A bizalmas adatokhoz való hozzáférés gondos felügyeletet igényel a biztonsági szabályzatok betartásának biztosítása érdekében. Hozzon létre nyomkövetéseket kifejezetten a személyes adatokat, pénzügyi adatokat vagy egyéb bizalmas információkat tartalmazó táblázatokhoz. Rendszeresen vizsgálja felül a hozzáférési mintákat a nem megfelelő adathozzáférések azonosítása érdekében.

7.3.3 Jogosulatlan tevékenységek azonosítása

Gyanús tevékenységek észlelése a rögzített nyomkövetésekben található lekérdezési minták elemzésével. Keressen szokatlan lekérdezéseket, amelyek nem felelnek meg az alkalmazás normál viselkedésének. A WHERE záradék nélküli SELECT utasítások, amelyek teljes táblákat kérnek le, adatkiszivárgási kísérletekre utalhatnak.

A jogosultságeszkalációs kísérletek jogosultsági hibákként vagy adminisztrátori parancsok végrehajtására tett kísérletekként jelennek meg. Figyelje a rendszertáblákhoz való hozzáférést, a kiszolgáló konfigurációjának módosítását vagy a privilegizált fiókok létrehozását célzó lekérdezéseket. Szűrje a hibákat, és tekintse át a TextData oszlopot gyanús tevékenységek szempontjából.

7.4 Kapacitástervezés és munkaterhelés-elemzés

Alapértékek meghatározása a normál működés során reprezentatív munkaterhelés rögzítésével. Nyomkövetések futtatása tipikus munkaidőben a szokásos tevékenységi minták megértése érdekében. Ezeket a nyomkövetéseket teljesítmény-alapértékként mentheti el a későbbi összehasonlítás érdekében.

A csúcsterhelés azonosítása feltárja, hogy mikor van a rendszer maximális terhelés alatt. Rögzítse a nyomkövetéseket különböző időszakokra vonatkozóan, beleértve a munkaidőt, a kötegelt feldolgozási ablakokat és a munkaidőn túli tevékenységet. Elemezze az események számát és az erőforrás-fogyasztást a csúcsidőszakok azonosításához.

Az erőforrás-kihasználtsági minták a munkaterhelés-elemzésből származnak. Csoportosítsa az eseményeket időintervallumok szerint, hogy lássa az aktivitás eloszlását a nap folyamán. Számítsa ki az összesített CPU-, lemez I/O- és időtartam-mutatókat az erőforrás-fogyasztás számszerűsítéséhez. Használja ezeket az adatokat a kapacitásbővítések megtervezéséhez vagy az optimalizálási lehetőségek azonosításához.

8. fejlett SQL Server Profilozó technikák

8.1 Kiszolgálóoldali nyomkövetések létrehozása T-SQL-lel

8.1.1 Az sp_trace_create és a kapcsolódó eljárások használata

Hozzon létre szerveroldali nyomkövetéseket programozottan TSQL tárolt eljárásokkal. Ez a megközelítés lehetővé teszi a nyomkövetések automatikus létrehozását és kezelését anélkül, hogy... SQL Server A Profiler grafikus felülete.

Definiáljon egy szerveroldali nyomkövetést a következő példakód segítségével:

  1. Deklarálja a nyomkövetési azonosító és a fájl elérési út változóit.
  2. Új nyomkövetés létrehozásához hívja meg az sp_trace_create függvényt.
  3. Események és oszlopok hozzáadásához használd az sp_trace_setevent függvényt.
  4. Opcionálisan az sp_trace_setfilter használatával konfigurálhatja a szűrőket.
  5. Hívja meg az sp_trace_setstatus függvényt s-retara nyom.

Az sp_trace_create eljárás inicializálja az új nyomkövetési definíciót. Adja meg a kimeneti fájl elérési útját, a maximális fájlméretet és az átváltási beállításokat. Az eljárás egy nyomkövetési azonosítót ad vissza, amelyet a későbbi eljáráshívásokban a nyomkövetés konfigurálásához használnak.

Események hozzáadása az sp_trace_setevent eljárással. Adja meg a rögzíteni kívánt esemény-oszlop kombinációk nyomkövetési azonosítóját, eseményazonosítóját és oszlopazonosítóját. A teljes nyomkövetési konfigurációk létrehozásához hívja meg ezt az eljárást többször.

Konfiguráljon szűrőket az sp_trace_setfilter eljárással. Adja meg a nyomkövetési azonosítót, az oszlopazonosítót, a logikai operátort, az összehasonlító operátort és a szűrő értékét. Több szűrőhívás kombinálásával összetett szűrőfeltételek hozhatók létre.

StarA nyomkövetést az sp_trace_setstatus meghívásával lehet leállítani 1-es állapotértékű meghívással. A nyomkövetéseket ugyanazon eljárás meghívásával lehet leállítani 0 állapotértékű meghívással. A nyomkövetési definíciókat törölni lehet 2-es állapotértékű meghívással.

8.1.2 A szerveroldali nyomkövetések előnyei

A csökkentett kliens terhelés ideálissá teszi a szerveroldali nyomkövetéseket az éles monitorozáshoz. Az adatbázis-kiszolgáló az összes nyomkövetési műveletet a kliensgép erőforrásainak felhasználása nélkül kezeli. A hálózati sávszélességet nem használja fel az események kliensalkalmazásnak történő továbbítása.

Az automatizált végrehajtás lehetővé teszi a felügyelet nélküli nyomkövetés-gyűjtést. A szerveroldali nyomkövetések a létrehozás után is futnak, még akkor is, ha nincs klienskapcsolat. A nyomkövetés létrehozásának ütemezése SQL Server Ügynöki feladatok automatizált monitorozáshoz.

A szerveroldali feldolgozás kisebb teljesítményre gyakorolt ​​hatást eredményez. Az események közvetlenül a lemezre íródnak további szerializálás vagy hálózati átvitel nélkül. A pufferkezelés optimalizálja a lemez I/O-ját a jobb általános teljesítmény érdekében.

8.2 Nyomkövetési visszajátszási funkció

8.2.1 Nyomvonalak rögzítése visszajátszáshoz

Hozzon létre visszajátszásra kész nyomkövetéseket a következő lépésekkel:

  1. Hozz létre egy új nyomkövetést a TSQL_Visszajátszás sablon.
  2. Győződjön meg arról, hogy minden szükséges esemény és oszlop ki van választva.
  3. Konfigurálja a nyomkövetést úgy, hogy fájlba mentse.
  4. Futtassa a nyomkövetést a rögzíteni kívánt munkaterhelés-időszak alatt.
  5. Állítsa le a nyomkövetést és mentse el a fájlt.

A kötelező események és oszlopok biztosítják a nyomkövetés teljes visszajátszását. A TSQL_Replay sablon tartalmazza az összes szükséges eseménytípust és adatoszlopot. A hiányzó kötelező elemek megakadályozzák a sikeres visszajátszást, ezért mindig ezt a sablont használja visszajátszási célú rögzítéskor.

8.2.2 Nyomvonalak visszajátszása

A rögzített munkafolyamatokat a következő lépésekkel játszhatja vissza:

  1. In SQL Server Profiler, kattints filé -> Nyisd ki -> Nyomkövetési fájl.
  2. Válassza ki a visszajátszásra kész nyomkövetési fájlt.
  3. Kattints Visszajátszás -> Start.
  4. Csatlakozzon a tarSzerver beszerzése a visszajátszás párbeszédpanelen.
  5. Konfigurálja a visszajátszási beállításokat, beleértve a visszajátszási sorrendet és az időzítést.
  6. Kattints OK a visszajátszás megkezdéséhez.
  7. Figyelemmel kísérheti a visszajátszás folyamatát az állapotablakban.

A visszajátszási konfigurációs beállítások szabályozzák, hogyan SQL Server A Profiler reprodukálja a rögzített munkaterhelést. Az időbeli kapcsolatok megőrzése érdekében a rögzítés sorrendjében játssza le az eseményeket. Állítsa be, hogy megőrzi-e az eredeti időzítést, vagy a lehető leggyorsabban játssza le az eseményeket.

8.2.3 Használati esetek a nyomkövetés visszajátszásához

A terheléstesztelés a nyomkövetések visszajátszásából profitál a valósághű munkaterhelések reprodukálásával. Rögzítse az éles munkaterhelések nyomkövetéseit, és játssza le azokat tesztrendszerekkel szemben a valós használati minták melletti teljesítmény validálásához. Módosítsa a párhuzamossági beállításokat a különböző terhelési szintek szimulálásához.

A környezetmigráció validálása biztosítja, hogy az új rendszerek képesek kezelni a meglévő munkaterheléseket. Rögzítse a nyomkövetéseket a jelenlegi éles rendszerekből, és játssza le azokat új hardveren vagy frissített rendszeren. SQL Server verziók. Hasonlítsa össze a teljesítménymutatókat annak ellenőrzéséhez, hogy a migrációk nem rontják-e a teljesítményt.

A tesztelési forgatókönyvek magukban foglalják a kódmódosítások utáni regressziós tesztelést, az optimalizáló módosításainak validálását a SQL Server verziók és hardverkonfigurációk terheléstesztelésére. A Replay konzisztens, megismételhető munkaterheléseket biztosít a megbízható teszteléshez.

8.3 Az SQL Profiler integrálása az Adatbázis-motor hangolási tanácsadójával

Hozzon létre munkaterhelés-fájlokat a Database Engine Tuning Advisor számára a megfelelő eseményekkel rendelkező nyomkövetések rögzítésével. Használja a Tuning sablont annak biztosítására, hogy minden szükséges információ rögzítésre kerüljön az elemzéshez.

Indítsa el a Database Engine Tuning Advisor programot, és válassza ki a nyomkövetési fájlt munkaterhelés forrásaként. A tanácsadó elemzi a rögzített lekérdezéseket, és indexeket, indexelt nézeteket vagy particionálási stratégiákat javasol a teljesítmény javítása érdekében.

A teljesítményoptimalizálási munkafolyamat integrálja a nyomkövetési rögzítést a hangolási elemzéssel. Rögzítse a reprezentatív munkaterheléseket normál működés közben, elemezze a Tuning Advisor segítségével, tekintse át a javaslatokat, tesztelje a javasolt változtatásokat a fejlesztés során, és végül implementálja a jóváhagyott változtatásokat az éles környezetben.

8.4 Nyomkövetési adatok gyűjtésének automatizálása

Nyomkövetések ütemezése a következővel: SQL Server Ügynökfeladatok az adatok automatikus gyűjtéséhez. Hozzon létre T-SQL szkripteket, amelyek sp_trace eljárások használatával definiálják a szerveroldali nyomkövetéseket. Ütemezze be ezeket a szkripteket adott időpontokban vagy időközönkénti futtatásra.

A PowerShell automatizálás kifinomult nyomkövetés-kezelési forgatókönyveket tesz lehetővé. Írjon PowerShell szkripteket, amelyek nyomkövetéseket hoznak létre, figyelik azok állapotát és feldolgozzák a gyűjtött adatokat. Ütemezze a PowerShell szkripteket a Feladatütemezőn vagy a SQL Server Ügynök.

SQL Server Az ügynökfeladatok megbízható ütemezett végrehajtást biztosítanak. Hozzon létre olyan feladatokat, amelyek...tarNyomkövetések rögzítése a monitorozási időszakok elején, és a nyomkövetések leállítása az adatgyűjtés befejezése után. Feladatértesítések konfigurálása a rendszergazdák figyelmeztetésére a hibákról.

8.5 Nyomkövetések programozott elemzése

Nyomkövetési fájlok olvasása T-SQL-lel az fn_trace_gettable függvénnyel. Ez a tábla értékű függvény elemzi a nyomkövetési fájlokat, és eseményadatokat ad vissza eredményhalmazként. Lekérdezheti ezeket az adatokat szabványos T-SQL használatával egyéni elemzés végrehajtásához.

Az egyéni elemző szkriptek lehetővé teszik az automatikus nyomkövetési feldolgozást. Írjon lekérdezéseket, amelyek összesített statisztikákat számítanak ki, mintákat azonosítanak vagy rendellenességeket jelölnek meg. Ütemezze be ezeket a szkripteket úgy, hogy automatikusan fussanak a nyomkövetési gyűjtés befejezése után.

Jelentések generálása táblázatokban tárolt nyomkövetési adatok lekérdezésével. Nézetek létrehozása, amelyek időszak, felhasználó vagy alkalmazás szerint összesítik az eseményeket. Jelentéskészítési megoldások létrehozása, amelyek rendszeres betekintést nyújtanak az adatbázis-tevékenységbe és teljesítménybe.

9. SQL Server Profiler ajánlott gyakorlatok

9.1 Teljesítménynövelési ajánlott gyakorlatok

9.1.1 A nyomkövetési többletterhelés minimalizálása

Csak a szükséges eseményeket válassza ki a nyomkövetési terhelés csökkentése érdekében. Minden további eseménytípus növeli a nyomkövető motor által feldolgozandó adatmennyiséget. Tekintse át a monitorozási célkitűzéseit, és csak azokat az eseményeket vegye fel, amelyek közvetlenül kapcsolódnak ezekhez a célokhoz.

Használjon hatékony szűrőket a lényegtelen adatok rögzítésének elkerülése érdekében. Szűrjön adatbázisnév szerint a rendszeradatbázisok kizárásához. Szűrjön időtartam szerint a csak lassú lekérdezések rögzítéséhez. Szűrjön alkalmazásnév szerint a konkrét alkalmazásokra való összpontosításhoz. A megfelelő szűrés jelentősen csökkenti a nyomkövetési terhelést.

A szerveroldali és kliensoldali szempontok befolyásolják a teljesítményre gyakorolt ​​hatást. A szerveroldali nyomkövetések minimális terheléssel közvetlenül lemezre írják az adatokat. A kliensoldali nyomkövetések a hálózaton keresztül továbbítják az eseményeket a Profiler felületére, ami késleltetést és sávszélesség-fogyasztást eredményez. A szerveroldali nyomkövetések használata éles környezetben történő monitorozáshoz.

9.1.2 A nyomkövetési tárolás optimalizálása

A fájlméret-kezelés megakadályozza a lemezterület kimerülését. A maximális fájlméretkorlátok beállítása a rendelkezésre álló tárhelynek megfelelően. A fájlátvitel engedélyezése több fájl létrehozásához ahelyett, hogy egyetlen fájlt a végtelenségig növelnénk. A lemezterület figyelése a nyomkövetés végrehajtása során.

A táblaalapú és a fájlalapú tárolás eltérő teljesítménybeli kompromisszumokat von maga után. A fájlalapú tárolás jobb teljesítményt nyújt a nyomkövetés végrehajtása során, mivel megkerüli a tárolómotort. A táblaalapú tárolás lehetővé teszi a T-SQL lekérdezéseket a nyomkövetési adatokon, de írási többletterhelést okoz. Válassza ki a tárolási típust az elemzési igényei alapján.

9.2 Biztonsági bevált gyakorlatok

Az engedélykezelés szabályozza, hogy kik hozhatnak létre és futtathatnak nyomkövetéseket. Az ALTER TRACE engedélyt csak megbízható felhasználóknak adhatják meg, akiknek nyomkövetési képességekre van szükségük. A rendszergazdai szerepkör tagjai korlátlan nyomkövetési hozzáféréssel rendelkeznek. A nyomkövetési engedélyeket rendszeresen felülvizsgálják és auditálják.

A bizalmas adatok védelme gondos nyomkövetési konfigurációt igényel. Kerülje a teljes lekérdezési szöveg rögzítését bizalmas adatokkal végzett munka során. Fontolja meg a bizalmas információkat tartalmazó nyomkövetési kimenet szűrését vagy titkosítását. A nyomkövetési fájlokat biztonságos helyeken tárolja megfelelő hozzáférés-vezérléssel.

A nyomkövetési fájlok biztonsága megakadályozza a rögzített adatokhoz való jogosulatlan hozzáférést. Fájlengedélyek beállítása a nyomkövetési fájlokhoz való hozzáférés korlátozásához. Titkosítsa a nyomkövetési fájlokat, ha bizalmas információkat tartalmaznak. Törölje a nyomkövetési fájlokat az elemzés befejezése után a kitettségi kockázat minimalizálása érdekében.

9.3 Termelési környezettel kapcsolatos szempontok

9.3.1 Mikor használjunk Profilert éles környezetben

A kockázatértékelés meghatározza, hogy mikor SQL Server A Profiler alkalmas éles használatra. A Profiler mérhető többletterhelést vezet be, amely a nyomkövetési hatókörrel növekszik. Értékelje, hogy a diagnosztika...ostAz ic érték igazolja a teljesítményre gyakorolt ​​hatást az éles nyomkövetések futtatása előtt.

A minimális hatású konfigurációk biztonságosabb termelési nyomkövetést tesznek lehetővé. Használjon nagy szelektív szűrőket a kritikus események rögzítésére. Állítsa be az időtartam küszöbértékeit a gyorsan végrehajtódó lekérdezések figyelmen kívül hagyásához. Korlátozza a nyomkövetés időtartamát rövid időszakokra a hibaelhárítási munkamenetek során. Konfigurálja a szerveroldali nyomkövetéseket az ügyfél terhelésének csökkentése érdekében.

9.3.2 Alternatívák a termelésfelügyeletre

A kiterjesztett események alacsonyabb terhelést jelentenek a termelési monitorozáshoz. Ez a modern technológia jobb teljesítményt és rugalmasságot kínál, mint a hagyományos SQL Server Profiler. Monitorozási megoldások migrálása kiterjesztett eseményekre hosszú távú éles használatra.

A Query Store automatikusan rögzíti a lekérdezési teljesítményadatokat manuális nyomkövetési konfiguráció nélkül. Engedélyezze a Query Store-t az éles adatbázisokon a lekérdezés-végrehajtási statisztikák időbeli nyomon követéséhez. A Query Store több funkciót is biztosít.ost teljesítményfigyelési képességek a nyomkövetés többletterhelése nélkül.

A dinamikus felügyeleti nézetek (DMV-k) könnyűszerrel monitorozzák a rendszereket bizonyos forgatókönyvekhez. A DMV-k (DMV-k) aktuális állapotinformációkat biztosítanak előzmények rögzítése nélkül. A DMV-k rendszeres időközönként lekérdezhetők a szerver állapotának monitorozásához a folyamatos nyomkövetés terhe nélkül.

9.4 Nyomkövetési kezelési bevált gyakorlatok

Az elnevezési konvenciók biztosítják a nyomkövetési fájlok azonosíthatóságát és rendszerezését. A nyomkövetési fájlok nevében szerepeljen a dátum, az időpont, a kiszolgáló neve és a cél. Használjon következetes elnevezési mintákat az összes nyomkövetésben a kezelés és az elemzés megkönnyítése érdekében.

A dokumentáció rögzíti a nyomkövetés konfigurációját és célját. Dokumentálja a rögzített eseményeket, a nyomkövetés létrehozásának okát és az elemzésből levont következtetéseket. Naplózza az éles rendszereken futtatott nyomkövetéseket a megfelelőség és a hibaelhárítás céljából.

A megőrzési szabályzatok megakadályozzák a nyomkövetési fájlok túlzott felhalmozódását. Az üzleti igények és a tárhelykapacitás alapján határozza meg a nyomkövetési fájlok megőrzési idejét. Automatizálja a régi nyomkövetési fájlok törlését a lemezterület felszabadítása érdekében. Törlés előtt archiválja a fontos nyomkövetéseket hosszú távú tárolóba.

9.5 gyakori hiba, amit el kell kerülni

A túlzott nyomkövetés túlzott teljesítményterhelést okoz, és kezelhetetlen adatmennyiségeket generál. Kerülje az összes esemény szűrők nélküli rögzítését.tarszűk, fókuszált görbékkel, és csak szükség esetén bővítsd a hatókört. Több adat nem mindig jobb a hatékony hibaelhárításhoz.

A nyomkövetések leállításának elfelejtése erőforrásokat pazarol és lemezterületet foglal. Mindig állítsa le a nyomkövetéseket, amikor a monitorozás befejeződött. Állítson be nyomkövetési időtartamkorlátokat vagy maximális fájlméreteket a meglovagolt nyomkövetések elkerülése érdekében. Rendszeresen figyelje a futó nyomkövetéseket, és állítsa le az inaktív vagy felesleges nyomkövetéseket.

A szűrőoptimalizálás figyelmen kívül hagyása gyenge teljesítményhez és bonyolult elemzéshez vezet. Szánjon időt a hatékony szűrők konfigurálására, mielőtt...tarting nyomkövetések. Szűrők tesztelése fejlesztői környezetekben annak ellenőrzésére, hogy rögzítik-e a várt adatokat. A szűrők áttekintése és finomítása a rögzített eredmények alapján.

10. Alternatívák SQL Server Profiler 2025-ben

10.1 Kiterjesztett események: A modern pótlás

10.1.1 Mik azok a kiterjesztett események?

A kiterjesztett események a következőket jelentik: SQL Servermodern eseménykezelő architektúráját. A Microsoft ezt a rendszert kifejezetten a ... kezelésére tervezte. SQL Server A Profiler korlátai, beleértve a teljesítménybeli többletterhelést és a konfigurációs rugalmasságot. Az Extended Events átfogó monitorozási képességeket biztosít jelentősen alacsonyabb erőforrás-felhasználással.

Az architektúra és az előnyök megkülönböztetik a kiterjesztett eseményeket a régebbi nyomkövetési technológiáktól. Az eseménymotor mélyen integrálódik a SQL Serveralapvető architektúrája, amely minimális terheléssel rögzíti az eseményeket. Az aszinkron eseménypufferelés megakadályozza, hogy a monitorozás blokkolja az adatbázis-műveleteket. Rugalmas tarA getelési opciók változatos kimeneti konfigurációkat tesznek lehetővé.

A teljesítménybeli előnyök miatt a kiterjesztett események ideálisak az éles környezetben történő monitorozáshoz. A benchmarkok azt mutatják, hogy a kiterjesztett események 50-90%-kal kevesebb többletterhelést jelentenek, mint a hasonló megoldások. SQL Server Profiler nyomkövetések. Az architektúra jobban skálázható nagy eseménymennyiséggel, és több egyidejű monitorozási munkamenetet támogat.

10.1.2 Átállás Profilerről Extended Events-re

Eseménytérképezés lefordítva SQL Server Profiler eseményekből kibővített események megfelelői. Most A Profiler eseményekhez megfelelő kiterjesztett események tartoznak. A Microsoft dokumentációt biztosít a két rendszer közötti gyakori események feltérképezéséről.

A munkamenetek létrehozása az Extended Eventsben új szintaxis és fogalmak elsajátítását igényli. Az esemény-munkameneteket T-SQL CREATE EVENT SESSION utasításokkal vagy a Management Studio Extended Events grafikus felületével definiálhatja. A munkamenetek határozzák meg, hogy mely eseményeket rögzítse a rendszer, milyen adatokat gyűjtsön, és hol tárolja az eredményeket.

10.1.3 Bővített eseménykezelő eszközök és interfészek

Az SSMS kiterjesztett események felhasználói felülete grafikus munkamenet-kezelést biztosít. A kiterjesztett eseményekhez az Objektumkezelő Kezelés mappáján keresztül férhet hozzá. Esemény-munkameneteket hozhat létre, módosíthat és figyelhet meg a felületen keresztül. A rögzített adatokat grafikus formátumban, például rácsokban és diagramokon tekintheti meg.

A T-SQL munkamenet-kezelés lehetővé teszi a programozott kiterjesztett események vezérlését. CREATE EVENT SESSION utasításokkal definiálhat munkameneteket a kódban. Az ALTER EVENT SESSION utasítással módosíthatja a futó munkameneteket. A DROP EVENT SESSION paranccsal munkameneteket szüntethet meg. Ez a megközelítés automatizált monitorozási megoldásokat tesz lehetővé.

10.2 SQL Server QueryStore

A Query Store automatikusan rögzíti a lekérdezési teljesítményadatokat azokban az adatbázisokban, ahol engedélyezve van. Ez a funkció nyomon követi a lekérdezési terveket, a végrehajtási statisztikákat és a teljesítménymutatókat az idő múlásával, manuális nyomkövetési konfiguráció nélkül. A Query Store megőrzi a korábbi adatokat, lehetővé téve a trendelemzést és a regresszióészlelést.

A Query Store valós idejű lekérdezési teljesítményfigyelése feltárja a rendszer aktuális viselkedését. Megtekintheti a nemrég végrehajtott lekérdezéseket, azok végrehajtási terveit és erőforrás-felhasználását. Azonosíthatja a növekvő időtartamú vagy változó végrehajtási tervekkel rendelkező lekérdezéseket, amelyek problémákra utalhatnak.

A korábbi lekérdezéselemzés lehetővé teszi az időszakok közötti összehasonlítást. A Query Store konfigurálható megőrzési időszakokra őrzi meg a teljesítményadatokat. Hasonlítsa össze a jelenlegi teljesítményt a korábbi alapértékekkel a regressziók azonosítása érdekében. Elemezze a teljesítménytrendeket a jövőbeni kapacitásigények előrejelzéséhez.

Használja a Query Store-t, ha automatikus, folyamatosan bekapcsolt teljesítményfigyelésre van szüksége. Engedélyezze a Query Store-t az éles adatbázisokon a lekérdezések viselkedésének folyamatos nyomon követéséhez. A Query Store kiegészíti a nyomkövetésen alapuló hibaelhárítást azáltal, hogy előzménykontextust biztosít a teljesítményproblémákhoz.

10.3 Dinamikus kezelési nézetek (DMV-k)

A járműnyilvántartó rendszerek (DMV-k) segítségével történő egyszerűsített monitorozás aktuális állapotinformációkat nyújt a korábbi események rögzítése nélkül. A járműnyilvántartó rendszerek belső adatokat tesznek közzé. SQL Server statisztikák és metaadatok lekérdezhető nézeteken keresztül. DMV-k lekérdezése szabványos T-SQL SELECT utasításokkal.

A teljesítményfigyeléshez használt gyakori DMV-lekérdezések közé tartozik a sys.dm_exec_query_stats a lekérdezési teljesítménystatisztikákhoz, a sys.dm_exec_requests az aktuálisan végrehajtott kérésekhez és a sys.dm_os_wait_stats a várakozási statisztikákhoz. Ezek a nézetek időpontbeli betekintést nyújtanak a szerver állapotába és tevékenységébe.

A DMV-k (DMV-k) valós idejű mérőszámok biztosításával egészítik ki a nyomkövetés-alapú monitorozást. Használja a DMV-ket gyors állapotellenőrzésekhez és aktuális állapotelemzéshez. Kombinálja a DMV-lekérdezéseket a nyomkövetési adatokkal az átfogó hibaelhárítási megközelítések érdekében.

10.4 Harmadik féltől származó felügyeleti eszközök

A kereskedelmi alternatívák a következőkön túlmutató, fokozott monitorozási lehetőségeket kínálnak: SQL Serverbeépített eszközei. Az olyan gyártók termékei, mint a SolarWinds, a Redgate és a Quest, átfogó monitorozási, riasztási és elemzési funkciókat kínálnak. Ezek az eszközök gyakran több adatforrást kombinálnak, beleértve a nyomkövetéseket, a digitális mozgóátlagokat (DMV) és a teljesítményszámlálókat.

A funkciók összehasonlítása feltárja a különböző monitorozási megközelítések erősségeit. A harmadik féltől származó eszközök kiváló felhasználói felületeket, automatizált riasztásokat és előzménytrendeket biztosítanak. SQL ServerA beépített eszközei nulla további c-t kínálnakost és mélyebb integráció. Értékelje az eszközöket az Ön konkrét igényei és költségvetése alapján.

10.5 A megfelelő eszköz kiválasztása az Ön igényeinek megfelelően

Egy döntési mátrix segít a megfelelő monitorozó eszközök kiválasztásában. Eseti hibaelhárítás esetén SQL Server A Profiler továbbra is elérhető és hatékony marad. Éles monitorozáshoz a kiterjesztett események vagy a lekérdezéstároló jobb teljesítményt biztosít. Átfogó vállalati monitorozáshoz harmadik féltől származó megoldások kínálják az most jellemzők.

Az eszközkiválasztási kritériumok közé tartozik a teljesítménybeli többletterhelés, a könnyű használat, az adatmegőrzési követelmények és a költségvetési korlátok. Az eszközök kiválasztásakor vegye figyelembe csapata szakértelmét. Az ismerős eszközök gyorsabb hibaelhárítást tesznek lehetővé, még akkor is, ha az újabb alternatívák jobb funkciókat kínálnak.

Több eszköz kombinálásával átfogó monitorozási stratégiákat hozhat létre. Használja a Query Store-t a folyamatos teljesítménykövetéshez, a Extended Events-et a konkrét problémák kivizsgálásához, a DMV-ket pedig a valós idejű állapotellenőrzésekhez. Ez a rétegzett megközelítés robusztus monitorozást biztosít túlzott terhelés nélkül.

11. Hibaelhárítás SQL Server Profilerrel kapcsolatos problémák

11.1 Gyakori csatlakozási problémák

Hitelesítési hibák megakadályozzák SQL Server Profiler csatlakozása ehhez: tarszerverek beszerzése. Ellenőrizze, hogy a kiválasztott hitelesítési módszerhez megfelelő hitelesítő adatokat használ-e. A Windows-hitelesítéshez a Windows-fiókjának rendelkeznie kell a megfelelő adatokkal. SQL Server engedélyeket. SQL Server A hitelesítéshez érvényes SQL bejelentkezési adatok szükségesek.

A hálózati kapcsolódási problémák időtúllépési hibákként vagy csatlakozási hibákként jelentkeznek. SQL Server engedélyezi a távoli kapcsolatokat a konfigurációjában. Ellenőrizze, hogy a tűzfal beállításai engedélyezik-e a forgalmat SQL Serverportját. A Profilerrel kapcsolatos problémák elhárítása előtt tesztelje az alapvető kapcsolatokat ping és telnet használatával.

11.2 Teljesítményproblémák a Profilerrel

A lassú nyomkövetési végrehajtás a nyomkövetési konfiguráció túlzott terhelését jelzi. Tekintse át a kiválasztott eseményeket, és távolítsa el a feleslegeseket. Adjon hozzá szűrőket a rögzített események mennyiségének csökkentése érdekében. Fontolja meg a szerveroldali nyomkövetések használatát az ügyféloldali feldolgozási terhelés csökkentése érdekében.

A magas erőforrás-fogyasztás mindkettőre hatással van SQL Server és a Profiler kliens. A kiszolgáló CPU-jának és memóriájának figyelése a nyomkövetés végrehajtása során. Ha a kiszolgáló erőforrásai korlátozottak, növelje a szűrő szelektivitását vagy csökkentse a rögzítés időtartamát. Az ügyfél erőforrásaival kapcsolatos problémák miatt más alkalmazások bezárása vagy az ügyfél hardverének frissítése szükséges.

11.3 Nyomkövetési fájlokkal és táblázatokkal kapcsolatos problémák

A sérült nyomkövetési fájlok megakadályozzák a megnyitást SQL Server Profiler. A sérülés jellemzően a nyomkövetés nem megfelelő megszakításából vagy lemezhibákból ered. Próbálja meg megnyitni a fájlt egy szövegszerkesztőben, hogy ellenőrizze, nem sérült-e teljesen. Előfordul, hogy a részleges adatok visszaállíthatók egy táblázatba importálással az fn_trace_gettable használatával.

Táblahozzáférési problémák merülnek fel, amikor nyomkövetéseket próbálunk betölteni a következőből: SQL Server táblák. Ellenőrizze, hogy rendelkezik-e SELECT jogosultsággal a nyomkövetési táblához. Ellenőrizze, hogy a tábla nincs-e elvetve vagy átnevezve. Győződjön meg arról, hogy a nyomkövetési táblát tartalmazó megfelelő kiszolgálóhoz és adatbázishoz csatlakozik.

11.4 Hiányzó események vagy hiányos adatok

A szűrők helytelen konfigurációja miatt a nyomkövetések kihagyják a várt eseményeket. Gondosan ellenőrizze a szűrőfeltételeket, hogy azok ne zárják ki a kívánt eseményeket. Tesztelje a szűrőket rövid nyomkövetések futtatásával, és annak ellenőrzésével, hogy a rögzített adatok megfelelnek-e az elvárásoknak. A szűrők időbeli eltávolításararhogy megállapítsák, vajon ők okozzák-e a problémát.

Puffer túlcsordulás akkor fordul elő, amikor SQL Server nem tudja elég gyorsan írni a nyomkövetési adatokat ahhoz, hogy lépést tartson az események generálásával. Ez jellemzően szűretlen nyomkövetések esetén fordul elő nagy aktivitás esetén. A tünetek közé tartoznak a hiányzó események vagy az „Eseményeket nem rögzítették” figyelmeztetések. A probléma megoldásához adjon hozzá szűrőket az események mennyiségének csökkentése érdekében, vagy növelje a nyomkövetési fájl helyének lemez I/O teljesítményét.

11.5 Profiler összeomlások és hibák

Gyakori hibaüzenetek közé tartozik az „Unable to create trace” (Nem sikerült létrehozni a nyomkövetést), amely jogosultsági problémákra vagy erőforrás-korlátozásokra utal. A „Trace was stopped” (Nyomkövetés leállítva) üzenetek szerveroldali nyomkövetési hibákra utalnak, amelyek valószínűleg a lemez megteltéből adódnak. Az „Invalid trace definition” (Érvénytelen nyomkövetési definíció) hibák konfigurációs problémákra utalnak.

A megoldási stratégiák az adott hibától függenek. Az engedélyezési hibákhoz ALTER TRACE engedély megadása szükséges a felhasználónak. Az erőforrás-hibákhoz lemezterület vagy memória felszabadítása szükséges. A konfigurációs hibákhoz a nyomkövetési beállítások felülvizsgálata és javítása szükséges.tart SQL Server Profiler, ha nem reagál.

12. Gyakorlati SQL Server Profiler forgatókönyvek és példák

12.1 1. forgatókönyv: A leglassabb lekérdezések azonosítása az adatbázisban

Ez az útmutató bemutatja a lassú lekérdezések rögzítését és elemzését.

Konfigurálja a nyomkövetést a következő lépésekkel:

  1. Indít SQL Server Profiler és csatlakozás a tarszerezd meg a szervert.
  2. Kattints filé -> Új nyomkövetés.
  3. Írja be a „Lassú lekérdezéselemzés” kifejezést a Nyomkövetés neve mező.
  4. választ TSQL tól Használja a sablont ledob.
  5. Kattints Események kiválasztása Tab.
  6. Kattints Oszlopszűrők.
  7. választ Időtartam: és írd be az 1000000-et Nagyobb vagy egyenlő.
  8. választ Adatbázis név és írd be az adatbázisod nevét Mint.
  9. Kattints OK a szűrők bezárásához.
  10. engedélyezése Mentés fájlba és adjon meg egy fájl elérési utat.
  11. Kattints futás hogy start rögzítés.

A reprezentatív munkaterhelés rögzítéséhez futtassa a nyomkövetést csúcsidőszakban legalább 30 percig. Elegendő adatgyűjtés után állítsa le a nyomkövetést.

Az eredmények elemzése a következő folyamattal:

  1. Kattintson az Időtartam: oszlopfejléc a végrehajtási idő szerinti rendezéshez.
  2. Határozza meg a 10 leghosszabb ideig futó lekérdezést.
  3. Minden lekérdezésnél vizsgálja meg a Szöveges adatok oszlop.
  4. Másolja ki a lekérdezés szövegét, és illessze be a Management Studio programba.
  5. Felhasználás Becsült végrehajtási terv megjelenítése a lekérdezés elemzéséhez.
  6. Keressen táblabeolvasásokat, hiányzó indexeket vagy nem hatékony illesztéseket.
  7. Áttekintés CPU, Olvasés Írások oszlopok az erőforrás-fogyasztási mintákhoz.

12.2 2. forgatókönyv: Holtponti probléma hibakeresése

Ez a példa bemutatja, hogyan lehet rögzíteni és elemezni a holtpontokat.

Konfigurálja a holtpont-figyelést a következő lépésekkel:

  1. Hozz létre egy új nyomkövetést „Deadlock Investigation” néven.
  2. Kattints Események kiválasztása Tab.
  3. Kattints Az összes esemény megjelenítése.
  4. Bontsa Zárak kategória.
  5. választ Zár: Holtpont.
  6. választ Zár: Holtpontlánc.
  7. Bontsa Hibák és figyelmeztetések kategória.
  8. választ Blokkolt folyamatjelentés.
  9. Biztosít Szöveges adatok oszlop van kiválasztva.
  10. Kattints futás hogy start-monitorozás.

Amikor a nyomkövetés végrehajtása során holtpont történik, a Lock:Deadlock esemény jelenik meg a nyomkövetési rácsban.

A holtpontra vonatkozó információkat a következő lépésekkel értelmezheti:

  1. Kattintson az Zár: Holtpont esemény sor.
  2. Megtekintése Szöveges adatok oszlop az alsó panelen.
  3. Másolja ki az XML tartalmat a TextData-ból.
  4. Nyissa meg a Management Studiot, és hozzon létre egy új lekérdezési ablakot.
  5. Illessze be az XML-t a lekérdezési ablakba.
  6. Mentse el a fájlt .xdl kiterjesztéssel.
  7. Nyissa meg az .xdl fájlt a Management Studioban a holtpont-gráf megtekintéséhez.
  8. A grafikon mutatja az érintett folyamatokat, a zárolt erőforrásokat és a kiválasztott áldozatot.
  9. Tekintse át mindkét folyamat lekérdezéseit az ütközés megértése érdekében.

A megoldási lépések jellemzően magukban foglalják a műveletek átrendezését az alkalmazáskódban az erőforrásokhoz való hozzáférés egységes sorrendje érdekében, a tranzakciók hatókörének csökkentését vagy megfelelő zárolási tippek megvalósítását.

12.3 3. forgatókönyv: Egy adott alkalmazás összes lekérdezésének nyomon követése

Ez a forgatókönyv az alkalmazásspecifikus lekérdezés-monitorozást mutatja be.

Az alkalmazásspecifikus nyomkövetés konfigurálása a következő lépésekkel:

  1. Hozzon létre egy új nyomkövetést „Alkalmazáslekérdezés-követés” néven.
  2. Válassza ki a Standard sablon.
  3. Kattints Események kiválasztása Tab.
  4. Kattints Oszlopszűrők.
  5. választ Alkalmazás neve.
  6. Írd be az alkalmazásod nevét a Mint mező.
  7. Ha az alkalmazás kapcsolat-készletezést használ, helyettesítő karakteres egyeztetésre lehet szükség.
  8. Kattints OK a szűrő alkalmazásához.
  9. engedélyezése Mentés a táblázatba a könnyebb lekérdezés érdekében.
  10. Kattints futás hogy start rögzítés.

A lekérdezési minta elemzése feltárja, hogyan működik együtt az alkalmazásod a SQL Server:

  1. Az adatgyűjtés után állítsa le a nyomkövetést.
  2. Nyissa meg a Management Studiot, és csatlakozzon a nyomkövetési táblázatot tartalmazó kiszolgálóhoz.
  3. A minták elemzéséhez kérdezze le a nyomkövetési táblát.
  4. A műveletek keverékének megtekintéséhez típus szerint számolja a lekérdezéseket.
  5. Azonosítsa m-etost gyakran végrehajtott lekérdezések.
  6. Keressen olyan lekérdezéseket, amelyek gyorsítótárazhatók vagy optimalizálhatók.
  7. Ellenőrizze az ismételt azonos lekérdezéseket, amelyek hiányzó kapcsolat-készletezésre utalnak.

12.4 4. forgatókönyv: Adathozzáférés auditálása a megfelelőség érdekében

Ez a példa a biztonsági auditnapló létrehozását mutatja be.

Konfigurálja a biztonsági naplózást a következő lépésekkel:

  1. Hozzon létre egy új nyomkövetést „Biztonsági auditnapló” néven.
  2. Kattints Események kiválasztása Tab.
  3. Kattints Az összes esemény megjelenítése.
  4. Bontsa Security Audit kategória.
  5. választ Bejelentkezés auditáláshoz, Kijelentkezés auditáláskor, Bejelentkezési audit sikertelen.
  6. választ Adatbázis-objektumhozzáférés naplózása.
  7. Bontsa TSQL kategória.
  8. választ SQL:BatchCompleted.
  9. Kattints Oszlopszűrők.
  10. Szűrés ObjectName bizonyos érzékeny táblázatok figyelésére.
  11. engedélyezése Mentés a táblázatba hosszú távú megtartása érdekében.
  12. Engedélyezze a szerveroldali nyomkövetést a felügyelet nélküli működéshez.
  13. Kattints futás hogy start auditálás.

Naplójelentések létrehozása a nyomkövetési tábla lekérdezésével:

  1. Hozzon létre lekérdezéseket, amelyek összegzik a hozzáférést felhasználó és időszak szerint.
  2. Azonosítsa a szokatlan hozzáférési mintákat vagy a munkaidőn túli tevékenységeket.
  3. Sikertelen bejelentkezési kísérletek a dokumentum biztonsági felülvizsgálatához.
  4. Auditadatok exportálása jelentéskészítő rendszerekbe a megfelelőségi dokumentáció érdekében.
  5. A befejezett auditkövetéseket archiválja a megőrzési szabályzatoknak megfelelően.

12.5 5. forgatókönyv: Munkaterhelés rögzítése teljesítményteszteléshez

Ez a forgatókönyv a tesztelési célú munkaterhelés-rögzítést mutatja be.

Hozzon létre visszajátszásra kész nyomkövetéseket a következő lépésekkel:

  1. Hozzon létre egy új nyomkövetést „Munkaterhelés-rögzítés” néven.
  2. választ TSQL_Visszajátszás a sablon legördülő menüből.
  3. Ez a sablon tartalmazza az összes szükséges eseményt és oszlopot a visszajátszáshoz.
  4. Kattints Események kiválasztása Tab.
  5. Alkalmazzon szűrőket, ha adott munkaterhelés-szegmenseket szeretne rögzíteni.
  6. engedélyezése Mentés fájlba.
  7. Adjon meg egy megfelelő lemezterülettel rendelkező fájlútvonalat.
  8. Állítson be megfelelő fájlméret-korlátokat, és engedélyezze az áthelyezést.
  9. Kattints futás hogy start rögzítés.

Rögzítés reprezentatív üzleti műveletek közben. Átfogó munkaterhelés-rögzítéshez futtassa a nyomkövetést több órán keresztül, különböző tevékenységi mintákat lefedve. Állítsa le a nyomkövetést elegendő adat összegyűjtése után.

A munkaterhelés-elemzés feltárja a rendszer viselkedési mintáit:

  1. Nyissa meg a rögzített nyomkövetési fájlt a SQL Server Profilkészítő.
  2. Tekintse át az események eloszlását típus és időpont szerint.
  3. Összesített erőforrás-felhasználási mutatók kiszámítása.
  4. Azonosítsa a csúcsforgalmi időszakokat és az erőforrás-szűk keresztmetszeteket.
  5. Használja a nyomkövetést az Adatbázis-motor hangolási tanácsadójának elemzéséhez.
  6. Játssza le újra a nyomkövetést a tesztrendszereken a változtatások érvényesítéséhez.

13. Adatbázis-sérülésészlelés a következővel: SQL Server Profiler

13.1 Használat SQL Server Korai korrupciós figyelmeztető jelek profilkészítője

Az adatbázis-sérülés az egyik lehetséges most komoly fenyegetéseket jelent az adatok integritására és a rendszer megbízhatóságára nézve. Miközben SQL Server A Profiler nem egy kifejezetten korrupcióészlelő eszköz, képes rögzíteni azokat a kritikus figyelmeztető jeleket, amelyek azonnali kivizsgálást igénylő potenciális korrupciós problémákra utalnak.

13.2 Kritikus hibák, amelyek potenciális sérülésre utalnak

  • 24-es súlyossági szintű hibák (823, 824, 825): Hardver- és adathordozó-hibák.
  • 605-ös hiba: Sikertelen oldallekérési kísérletek
  • 8928-as és 8929-es hiba: Objektumsérülés

13.3 Gyanús adatbázis viselkedések és figyelmeztetési minták

  • Ismétlődő lekérdezési időtúllépések adott objektumokon
  • Hozzáférés-sértések és alkalmazásösszeomlások
  • Szokatlan hibacsoportosítás

13.4 DBCC CHECKDB futtatása a Profiler eredményei alapján

If SQL Server Ha a Profiler gyanús sérüléseket talál, a DBCC CHECKDB segítségével teljes körűen ellenőrizheti az adatbázist. Ha a sérülések megerősítést nyernek, végezzen javítást. Írtunk egy cikket a következőről: egy átfogó útmutató a feladatok elvégzéséhez.

Ha a DBCC CHECKDB nem tudja megjavítani az adatbázist, a sérülések súlyosak. Ilyen esetben a következőhöz folyamodhat: egy harmadik féltől származó SQL-helyreállító eszköz.

14. GYIK

K: van SQL Server Profiler továbbra is támogatott SQL Server 2022?

V: Igen, SQL Server A Profiler továbbra is benne van a SQL Server 2022 és SQL Server Management Studio, annak ellenére, hogy azóta elavult SQL Server 2016. A Microsoft továbbra is szállítja az eszközt a jelenlegi verziókkal, de az új monitorozási implementációkhoz a kiterjesztett eseményekre való áttérést javasolja. Az eszköz továbbra is működőképes és széles körben használt hibaelhárításhoz és eseti elemzéshez.

K: Mi a különbség között SQL Server Profiler és SQL nyomkövetés?

A: SQL Server A Profiler egy grafikus felhasználói felülettel rendelkező eszköz, amely a rendszerben futó SQL Trace motorhoz csatlakozik. SQL ServerAz SQL Trace az alapul szolgáló technológia, amely ténylegesen rögzíti az eseményeket. Nyomkövetéseket hozhat létre a Profiler felületével, vagy közvetlenül a T-SQL tárolt eljárásaival, például az sp_trace_create segítségével. A Profiler egyszerűbb konfigurációt biztosít, míg a T-SQL nyomkövetések több automatizálási lehetőséget kínálnak.

K: Mennyi teljesítménybeli többletterhelést jelent SQL Server Profiler hozzáadása?

V: A teljesítményre gyakorolt ​​hatás a nyomkövetési konfigurációtól függ. Egy jól szűrt, csak bizonyos eseményeket rögzítő nyomkövetés 1-5%-os többletterhelést okozhat. A szűrők nélküli, rosszul konfigurált nyomkövetések 20-50%-os vagy annál nagyobb többletterhelést okozhatnak, különösen a forgalmas rendszereken. A szerveroldali nyomkövetéseknek kisebb a hatásuk, mint a kliensoldali nyomkövetéseknek. Mindig használjon szűrőket az események mennyiségének minimalizálása érdekében, és először nem termelési környezetben tesztelje a nyomkövetéseket.

K: Futhatok? SQL Server Profiler éles szervereken?

V: Futhatsz SQL Server Profiler éles szervereken, de legyen óvatos. Használjon nagy szelektív szűrőket, korlátozza a nyomkövetés időtartamát, és a hatás minimalizálása érdekében részesítse előnyben a szerveroldali nyomkövetéseket. Amikor csak lehetséges, futtassa az éles nyomkövetéseket alacsony aktivitású időszakokban. Folyamatos éles monitorozáshoz érdemesebb a kiterjesztett eseményeket vagy a lekérdezéstárolást használni, mivel ezek alacsonyabb terhelést jelentenek.

K: Milyen jogosultságokra van szükségem? SQL Server Profilkészítő?

V: A nyomkövetések létrehozásához és futtatásához ALTER TRACE engedély szükséges. A rendszergazdai fix kiszolgálói szerepkör tagjai automatikusan rendelkeznek ezzel az engedéllyel. Nem rendszergazdai felhasználók esetében explicit módon adja meg az ALTER TRACE engedélyt. Ezenkívül a konfiguráció alapján megfelelő engedélyekre van szüksége a nyomkövetési adatok fájlokba vagy táblázatokba mentéséhez.

K: Miért nem látom az összes eseményt a nyomkövetésemben?

V: A hiányzó események jellemzően túlságosan korlátozó szűrőkből vagy puffer túlcsordulásból erednek. Tekintse át a szűrő konfigurációját, és győződjön meg arról, hogy nem zárja ki a kívánt eseményeket. Puffer túlcsordulás akkor fordul elő, ha SQL Server Nem tudja elég gyorsan írni az eseményeket, általában szűretlen nyomkövetésekkel a forgalmas rendszereken. Adjon hozzá szűrőket az események mennyiségének csökkentéséhez vagy a lemez I/O teljesítményének növeléséhez. Ellenőrizze az események rögzítésének elmaradását jelző hibaüzeneteket.

K: Hogyan rögzíthetem a holtpontra vonatkozó információkat a következővel: SQL Server Profilkészítő?

A: Hozzon létre egy nyomkövetést, amely tartalmazza a Lock:Deadlock és Lock:Deadlock Chain eseményeket a Locks kategóriából. Győződjön meg arról, hogy a TextData oszlop van kiválasztva, mivel az tartalmazza a holtpontgráf XML-jét. Holtpont esetén másolja ki az XML-t a TextData oszlopból, mentse el .xdl kiterjesztéssel, és nyissa meg a következőben: SQL Server Management Studio a grafikus holtpontdiagram megtekintéséhez.

K: Mi a különbség a nyomkövetések fájlokba és táblázatokba mentése között?

A: A fájlok jobb teljesítményt nyújtanak a nyomkövetés végrehajtása során, mivel megkerülik a SQL Server tárolómotor. A fájlkövetések közvetlenül a lemezre írják az adatokat minimális terheléssel. A táblakövetések a tárolómotoron keresztül írnak, ami terhelést jelent, de lehetővé teszi az azonnali T-SQL lekérdezéseket a nyomkövetési adatokon. Használjon fájlokat teljesítményérzékeny forgatókönyvekhez, és táblázatokat, ha az adatokat azonnal le kell kérdezni a rögzítés során vagy után.

K: Automatizálhatom? SQL Server Profiler nyomkövetési gyűjtemény?

V: Igen, automatizálja a nyomkövetési adatok gyűjtését TSQL tárolt eljárásaival létrehozott szerveroldali nyomkövetések használatával. Írjon szkripteket az sp_trace_create és a kapcsolódó eljárások használatával, majd ütemezze azokat a következőn keresztül: SQL Server Ügynökfeladatok. Ez a megközelítés lehetővé teszi a felügyelet nélküli nyomkövetés-gyűjtést megadott ütemezés szerint. A PowerShell-szkriptek egy másik automatizálási lehetőséget kínálnak az összetettebb forgatókönyvekhez.

K: Mennyi ideig kell futtatnom egy nyomkövetést?

V: A nyomkövetés időtartama a céljaitól függ. Konkrét problémák elhárításához futtassa a nyomkövetéseket a probléma reprodukálása közben, jellemzően 5-30 percig. Teljesítményelemzéshez rögzítsen legalább egy órát a csúcsidőszakokban. Munkaterhelés-elemzés vagy kapacitástervezés esetén gyűjtsön több órát különböző időszakokra lebontva. Az erőforrások felszabadítása érdekében mindig állítsa le a nyomkövetéseket, amikor a monitorozás befejeződött.

K: Mit tegyek, ha a nyomkövetési fájlom túl nagy lesz?

V: Engedélyezze a fájlátvitelt a nyomkövetési tulajdonságokban, hogy több kisebb fájlt hozzon létre egy nagy fájl helyett. Állítson be egy maximális fájlméretet a lemezterületnek és az elemzési igényeknek megfelelően. Használjon szűrőket a rögzített események mennyiségének csökkentéséhez. Nagy nyomkövetések esetén érdemesebb szegmensekben elemezni az adatokat, ahelyett, hogy a teljes nyomkövetést egyszerre betöltené. Rendszeresen archiválja vagy törölje a régi nyomkövetési fájlokat a lemezterület kezelése érdekében.

K: Hogyan találhatom meg a magas CPU-használatot okozó lekérdezéseket?

A: Hozz létre egy nyomkövetést az SQL:BatchCompleted és az RPC:Completed eseményekkel. Tüntesd fel a CPU, Duration és TextData oszlopokat. Szűrj Duration szerint, hogy csak az olyan lekérdezéseket rögzítsd, amelyek meghaladják az 1000 milliszekundumot vagy másodpercet. Az adatok gyűjtése után rendezd őket CPU oszlop szerint csökkenő sorrendben. A legfelül lévő lekérdezések foglalják le az milliszekundumot.ost processzoridő. Vizsgálja meg ezeket a lekérdezéseket optimalizálási lehetőségek, például hiányzó indexek vagy nem hatékony logika szempontjából.

K: Lehet SQL Server Profiler rögzítési lekérdezés végrehajtási tervei?

A: SQL Server A Profiler a Teljesítmény kategóriában található Showplan XML eseményeken keresztül képes rögzíteni a végrehajtási terv adatait. A teljes végrehajtási tervek rögzítéséhez válassza a Showplan XML vagy a Showplan XML Statistics Profile eseményeket. A TextData oszlop tartalmazza az XML tervadatokat. A rutinszerű végrehajtási terv elemzéséhez azonban... SQL Server A Management Studio grafikus végrehajtási terv funkciói vagy a Query Store egyszerűbb alternatívákat kínálnak.

K: Mi a legjobb sablon az s-hez?taráltalános monitorozáshoz?

A: A Standard sablon jó képet adtarÁltalános monitorozási szempont. Tartalmazza a gyakori lekérdezés-végrehajtási eseményeket, a tárolt eljáráshívásokat és a hibakövetést kiegyensúlyozott terheléssel. A lekérdezési teljesítményre összpontosító, kisebb hatású monitorozáshoz használja a TSQL sablont. Az alapok megértése után testreszabhatja a sablonokat az igényei szerint szűrők hozzáadásával és az események kiválasztásának módosításával.

K: Hogyan követhetek nyomon csak egy adott alkalmazást vagy felhasználót?

A: Oszlopszűrők segítségével izolálhat adott alkalmazásokat vagy felhasználókat. Alkalmazások esetén az ApplicationName oszlop alapján szűrjön a kapcsolati karakterláncban megadott név alapján. Felhasználók esetén a LoginName oszlop alapján szűrjön a következővel: SQL Server bejelentkezési név vagy Windows fióknév. Több szűrő kombinálásával tovább szűkítheti a keresési eredményeket, például szűrhet az ApplicationName és az DatabaseName alapján is, így egy adott alkalmazás tevékenységét figyelheti egy adott adatbázisban.

15. Következtetések és a következő lépések

15.1 kulcsfontosságú elvihető

SQL Server A Profiler továbbra is értékes eszköz az eseti adatbázisok hibaelhárításához elavult státusza ellenére. Az egyszerű felület és az átfogó eseményrögzítés ideálissá teszi a gyors diagnosztizáláshoz.ostic-üléseket, amikor azonnali eredményekre van szüksége. Használja a Profilert konkrét problémák elhárításához, az alkalmazások viselkedésének elemzéséhez és biztonsági auditáláshoz.

A legjobb gyakorlatok közé tartozik a szűrők agresszív használata a teljesítményre gyakorolt ​​hatás minimalizálása érdekében, a szerveroldali nyomkövetések előnyben részesítése éles környezetekben, valamint a nyomkövetési időtartam korlátozása a szükséges időszakokra. Csak a lényeges eseményeket és oszlopokat válassza ki a terhelés csökkentése érdekében. A rögzítés során a jobb teljesítmény érdekében a nyomkövetéseket fájlokba, ne pedig táblázatokba mentse.

15.2 Továbblépés: Modern eszközök alkalmazása

Átmenet a SQL Server Profilerről kiterjesztett eseményekre a hosszú távú monitorozási megoldások érdekében. Míg a Profiler továbbra is működőképes marad, a kiterjesztett események elsajátítására fordított idő felkészíti Önt a jövőbeli feladatokra. SQL Server verziók. Staregyszerű, kiterjesztett eseményekkel végzett munkamenetekkel, amelyek replikálják a gyakori Profiler-nyomkövetéseket.

Engedélyezze a Query Store-t az éles adatbázisokon az automatikus teljesítményfigyeléshez manuális nyomkövetési konfiguráció nélkül. A Query Store folyamatosan rögzíti a lekérdezési terveket és a végrehajtási statisztikákat, így alapadatokat biztosít a teljesítményelemzéshez. Kombinálja a Query Store-t a következővel: tarKiterjesztett események munkameneteket biztosított az átfogó monitorozáshoz.

15.3 További források

A következő források segítenek elmélyíteni a tudásodat SQL Server Profilozói ismeretek és naprakészség a monitorozási legjobb gyakorlatok terén:

Hivatalos Microsoft dokumentáció

Közösségi források

  • SQL Server Central – Cikkek, fórumok és szkriptek adatbázis-szakembereknek
  • kötegtúlcsordulást SQL Server Címke – Közösségi kérdések és válaszok konkrét hibaelhárítási kérdésekhez
  • Reddit r/SQLServer – Vitafórum a következőhöz: SQL Server témák és tanácsok
  • SQLServerCentral.com Fórumok – Aktív közösségi beszélgetések a profilalkotásról és a teljesítményről
  • MSDN SQL Server Fórumok – Microsoft-hosted közösségi támogató fórumok

Blogok és műszaki cikkek

  • SQL Server teljesítmény monitor – Dedikált teljesítményfigyelési és optimalizálási tartalom
  • Brent Ozar Unlimited blog – Teljesítményhangolási és -monitorozási bevált gyakorlatok
  • SQLSkills.com – Szakértői szintű SQL Server iparági vezetők tartalmai
  • microsoft SQL Server Blog – Hivatalos termékfrissítések és funkcióbejelentések
  • Egyszerű beszéd – Gyakorlatias SQL Server oktatóanyagok és esettanulmányok

Képzés és képesítés

  • Microsoft Learn – Ingyenes online képzési modulok SQL Server
  • Microsoft minősítésű: Azure adatbázis-adminisztrátori asszisztens – Hivatalos tanúsítási folyamat
  • Pluralsight SQL Server Tanfolyamok – Videós képzés a profilalkotásról és a teljesítményhangolásról
  • LinkedIn tanulás SQL Server Képzés – Szakmai továbbképzések
  • Udemy SQL Server Teljesítményfejlesztő tanfolyamok – Gyakorlati képzési lehetőségek

Könyvek

  • SQL Server Lekérdezésteljesítmény finomhangolása – Átfogó teljesítményoptimalizálási útmutató
  • per SQL Server Belső dolgok – Merülj el a részletekben SQL Server építészet
  • SQL Server Végrehajtási tervek – Lekérdezésoptimalizálás megértése
  • Szakértői teljesítményindexelés SQL Server – Indextervezés és optimalizálás
  • SQL Server Speciális hibaelhárítás és teljesítményhangolás – Speciális diagnosztikaostic technikák

Eszközök és segédprogramok

  • SQL Server Menedzsment Stúdió – Elsődleges interfész a következőkhöz: SQL Server Profiler
  • Azure DataStudio – Modern, platformfüggetlen adatbázis-kezelő eszköz
  • sp_WhoIsActive – Népszerű, közösség által létrehozott monitorozó tárolt eljárás
  • SQL Sentry Plan Explorer – Ingyenes végrehajtási terv elemző eszköz
  • DBForge Stúdió – ​​Harmadik féltől származó SQL Server fejlesztő és adminisztrációs eszköz

A szerzőről

Yuan Sheng több mint 10 éves tapasztalattal rendelkező vezető adatbázis-adminisztrátor (DBA) SQL Server környezetekben és vállalati adatbázis-kezelésben. Több száz adatbázis-helyreállítási forgatókönyvet oldott meg sikeresen pénzügyi szolgáltatások, egészségügyi ellátás és gyártási szervezetek számára.

Yuan specializálódott SQL Server adatbázis-helyreállítás, magas rendelkezésre állású megoldások és teljesítményoptimalizálás. Kiterjedt gyakorlati tapasztalata magában foglalja a több terabájtos adatbázisok kezelését, az Always On Availability Groups megvalósítását, valamint az automatizált biztonsági mentési és helyreállítási stratégiák kidolgozását kritikus fontosságú üzleti rendszerekhez.

Yuan műszaki szakértelmének és gyakorlatias megközelítésének köszönhetően átfogó útmutatók készítésére összpontosít, amelyek segítik az adatbázis-adminisztrátorokat és az informatikai szakembereket a komplex problémák megoldásában SQL Server hatékonyan kihívásokat intéz. Folyamatosan naprakész a legújabb információkkal. SQL Server kiadásait és a Microsoft fejlődő adatbázis-technológiáit, rendszeresen tesztelve a helyreállítási forgatókönyveket annak érdekében, hogy ajánlásai a valós legjobb gyakorlatokat tükrözzék.

Kérdései vannak a SQL Server helyreállításra vagy további adatbázis-hibaelhárítási útmutatásra van szüksége? Yuan örömmel fogadja visszajelzéseket és javaslatokat ezen technikai erőforrások fejlesztéséért.