Sisällysluettelo piiloutua

1. Johdanto SQL Server Profiler

1.1 Mikä on SQL Server Profilointityökalu ja miksi sitä tarvitaan?

SQL Server Profiler on graafinen käyttöliittymätyökalu, jolla voidaan seurata ja tallentaa laitteessa tapahtuvia tapahtumia. SQL ServerTämä tehokas diagnoosiostic-työkalun avulla tietokannan ylläpitäjät ja kehittäjät voivat tarkkailla tietokantamoottorin toimintaa reaaliajassa, mikä auttaa tunnistamaan suorituskyvyn pullonkauloja, vianmäärittämään sovellusongelmia ja tarkastamaan tietoturvatapahtumia.

SQL Server Profiler

1.2 SQL Server Profiler vuonna 2025: Nykytila ​​ja vaihtoehdot

Microsoft vanhentunut SQL Server Profiloijattarkanssa SQL Server 2016, suositus Laajennetut tapahtumat korvaavana teknologiana. Työkalu on kuitenkin edelleen saatavilla nykyisessä SQL Server versioita, mukaan lukien SQL Server 2022 ja sitä käyttävät edelleen laajalti tietokanta-ammattilaiset.

1.3 Kenelle tämä opas on tarkoitettu

  • Tämä opas on tarkoitettu tietokannan ylläpitäjille, jotka valvovat SQL Server instansseja, diagnosoida suorituskykyongelmia ja varmistaa järjestelmän luotettavuus. Tietokannan päälliköt löytävät käytännön ohjeita jälkien tallentamiseen, tapahtumien analysointiin ja valvontastrategioiden toteuttamiseen.
  • Sovelluskehittäjille on hyödyllistä ymmärtää, miten heidän koodinsa on vuorovaikutuksessa muiden kanssa. SQL ServerSQL Profiler auttaa kehittäjiä tunnistamaan tehottomat kyselyt, validoimaan sovelluksen toimintaa ja korjaamaan tietokantaan liittyviä virheitä.
  • Suorituskykyanalyytikot ja konsultit löytävät edistyneitä tekniikoita työkuorman analysointiin, kapasiteettisuunnitteluun ja järjestelmän optimointiin. Kattava jäljityskonfiguraation, suodatuksen ja analyysin kattavuus mahdollistaa perusteelliset tietokannan suorituskyvyn arvioinnit.

2. Ymmärtäminen SQL Server Profilerin perusteet

2.1 Miten SQL Server Profiler Works

SQL Server Profiler toimii asiakassovelluksena, joka muodostaa yhteyden SQL-jäljitysmoottoriin, joka toimii sen sisällä. SQL ServerKun luot jäljityksen, tietokantamoottori valvoo määritettyjä tapahtumia ja tallentaa ne kokoonpanosi mukaisesti. Jäljitysmoottori kerää tapahtumatietoja vaikuttaen mahdollisimman vähän palvelimen suorituskykyyn, kun se on määritetty oikein.

Tietokantamoottorin pohjana oleva SQL-jäljitysinfrastruktuuri käyttää kevyitä tapahtumakoukkuja koko tietokantamoottorissa. Kun tapahtuu jäljitysmääritelmääsi vastaava tapahtuma, moottori tallentaa asiaankuuluvat tiedot ja joko lähettää ne Profiler-käyttöliittymään tai tallentaa ne tiedostoon tai taulukkoon. Tämä arkkitehtuuri mahdollistaa joustavan tiedonkeruun ilman sovelluskoodin muokkaamista.

2.2 Keskeiset käsitteet ja terminologia

2.2.1-tapahtumat

Tapahtumat edustavat tiettyjä tapahtumia SQL Server jonka jäljitysmoottori voi tallentaa. Jokainen tapahtuma vastaa tiettyä tietokannan toimintoa tai järjestelmätoimintoa. SQL Server Profiler järjestää tapahtumat loogisiin luokkiin helpottaakseen konfigurointia.

Yleisiä tapahtumaluokkia ovat TSQL kyselyiden suorittamiseen, tallennetut proseduurit proseduurikutsuihin, lukitukset samanaikaisuuden valvontaan sekä virheet ja varoitukset poikkeusten seurantaan. Oikeiden tapahtumien valitseminen määrittää, mitä tietoja jäljitys tallentaa, ja vaikuttaa suoraan jäljityksen hyödyllisyyteen ja suorituskykyyn.

Tapahtumatyyppien ymmärtäminen auttaa sinua määrittämään tehokkaita jäljityksiä. RPC:Completed-tapahtumat tallentavat etäproseduurikutsujen valmistumiset, SQL:BatchCompleted-tapahtumat seuraavat ad-hoc-kyselyeriä ja Lock:Deadlock-tapahtumat tunnistavat lukkiutumistilanteet. Valitse tapahtumat, jotka vastaavat vianmääritys- tai valvontatavoitteitasi.

2.2.2 Tietosarakkeet

Tietosarakkeet määrittävät, mitä tietoja jäljitys tallentaa kullekin tapahtumalle. Yleisiä sarakkeita ovat TextData varsinaiselle SQL-lausekkeelle, Duration suoritusajalle, CPU suorittimen käyttöasteelle, Reads loogisen levyn lukuarvoille ja Writes loogisen levyn kirjoituksille.

Olennaiset sarakkeet vaihtelevat käyttötapauksen mukaan. Suorituskyvyn vianmääritys vaatii tyypillisesti Duration-, CPU-, Reads- ja Writes-sarakkeita. Tietoturvan tarkastus tarvitsee LoginName-, DatabaseName- ja ObjectName-sarakkeita. Sovellusten virheenkorjauksessa on hyötyä ApplicationName-, SPID- ja Error-sarakkeista.

Vain välttämättömien sarakkeiden valitseminen vähentää jäljitystarvetta ja yksinkertaistaa analyysia. Vältä kaikkien käytettävissä olevien sarakkeiden tallentamista, ellei sitä erityisesti tarvita. Jokainen lisäsarake lisää kerättävän ja käsiteltävän tiedon määrää, mikä voi vaikuttaa palvelimen suorituskykyyn.

2.2.3-suodattimet

Suodattimet rajoittavat jäljityksen tallentamia tapahtumia tiettyjen kriteerien perusteella. Oikein määritetyt suodattimet vähentävät jäljityksen määrää merkittävästi, mikä tekee analyysistä hallittavaa ja minimoi suorituskykyyn kohdistuvat vaikutukset. Suodattimet arvioivat tapahtumatiedot ennen tallentamista, mikä estää tarpeettoman tiedonkeruun.

Yleisiä suodatuskriteerejä ovat DatabaseName, joka keskittyy tiettyihin tietokantoihin, ApplicationName, joka eristää tietyt sovellukset, Duration, joka tallentaa vain hitaat toiminnot, ja LoginName, joka seuraa tiettyjä käyttäjiä. Useiden suodattimien yhdistäminen luo tarkkoja jäljitysmääritelmiä, jotka tallentavat juuri sen, mitä tarvitset.

Suorituskykytietoinen suodatus on olennaista tuotantoympäristöissä. Suodata aina DatabaseName- tai ApplicationName-arvojen perusteella, jotta järjestelmätoimintaa ei tallenneta. Aseta vähimmäiskesto-kynnykset ohittaaksesi nopeasti suoritettavat kyselyt. Käytä TextData-suodattimia varoen, sillä ne vaativat merkkijonojen vertailuja, jotka lisäävät työmäärää.

2.2.4 Jäljitysmallit

Jäljitysmallit tarjoavat valmiiksi määritettyjä tapahtuma-, sarake- ja suodatinvalintoja yleisiin skenaarioihin. SQL Server Profiler sisältää useita sisäänrakennettuja malleja, jotka toimivat esimerkkinätarjäljityksen luontia varten. Mukautetut mallit tallentavat määrityksesi uudelleenkäyttöä varten useissa jäljitysistunnoissa.

Vakiomalli tallentaa yleisen joukon tapahtumia, jotka soveltuvat perusvalvontaan. TSQL-malli keskittyy kyselyiden suorittamiseen minimaalisella lisätyöllä. Tuning-malli kerää tapahtumia erityisesti Database Engine Tuning Advisor -analyysiä varten. Jokainen malli tasapainottaa tiedonkeruun suorituskykyyn kohdistuvien vaikutusten kanssa.

Mukautettujen mallien luominen säästää aikaa ja varmistaa yhdenmukaisuuden eri jäljitysistuntojen välillä. Määritä jäljitys haluamillasi tapahtumilla, sarakkeilla ja suodattimilla ja tallenna se sitten mallina. Mukautetuista malleista tulee erityisen arvokkaita, kun teet toistuvasti samanlaisten ongelmien vianmäärityksen.

3. S:n saaminentarted kanssa SQL Server Profiler

3.1 Järjestelmävaatimukset ja edellytykset

SQL Server Profiler toimitetaan pakkauksessa SQL Server Management Studio ja tukee kaikkia tällä hetkellä ylläpidettyjä SQL Server versiot, alkaen SQL Server 2016 ja 2022.

Käyttöoikeusvaatimukset määrittävät, kuka voi luoda ja suorittaa jäljityksiä. Järjestelmänvalvojan kiinteän palvelimen roolin jäsenillä on rajoittamaton käyttöoikeus SQL Server Profilointitoiminto. Muille kuin järjestelmänvalvojille ALTER TRACE -käyttöoikeus antaa oikeuden luoda ja hallita jäljityksiä.

Verkkoyhteyden huomioon ottaminen on tärkeää etäpalvelimien jäljityksessä. Asiakaspuolen jäljitykset edellyttävät jatkuvaa verkkoyhteyttä työasemasi ja palvelimen välillä. SQL Server esiintymä. Keskeytetyt yhteydet pysäyttävät asiakaspuolen jäljitykset, mikä voi johtaa tallennetun datan menettämiseen. Palvelinpuolen jäljitykset välttävät tämän rajoituksen suorittamalla ne kokonaan tietokantapalvelimella.

3.2 Käynnistäminen SQL Server Profiler

3.2.1 Starting alkaen SQL Server Management Studio (SSMS)

Käynnistä seuraavasti SQL Server Profilointi SSMS:ltä:

  1. avoin SQL Server Management Studio ja yhdistä mihin tahansa SQL Server ilmentymä.
  2. Valitse Työkalut valikko ylävalikkopalkissa.
  3. valita SQL Server Profiler Pudotusvalikosta.
  4. SQL Server Profiler-sovellus käynnistyy uudessa ikkunassa.

Start SQL Server Profiloija sisään SQL Server ManagementStudio.

3.2.2 StarWindows S:stätart Valikko

Pääsy SQL Server Profiler suoraan Windowsista seuraavien vaiheiden avulla:

  1. Napsauta Windows-painiketta Aloita painiketta.
  2. Tyyppi SQL Server Profiler hakukenttään.
  3. valita SQL Server Profiler hakutuloksista.
  4. Sovellus käynnistyy ilman aktiivisia yhteyksiä.

Start SQL Server Profiler Windowsin hakukentästä.

Vaihtoehtoisesti voit selata S-painikettatart-valikko täällärarchy:

  1. Avaa Aloita valikosta.
  2. Etsi Microsoft SQL Server Työkalut kansio.
  3. Laajenna kansio ja napsauta SQL Server Profiler.

Start SQL Server Profiler Windowsistatart-valikko.

3.2.3 Yhdistäminen SQL Server instansseja

Käynnistämisen jälkeen SQL Server Profiler, muodosta yhteys seuraavasti:

  1. Napauta filee valikkorivillä.
  2. valita Uusi jälki Pudotusvalikosta.
  3. Yhdistä palvelimeen valintaikkuna tulee näkyviin.
  4. Kirjoita palvelimesi nimi kohtaan Palvelimen nimi ala.
  5. Valita Windows-todennus or SQL Server Authentication.
  6. Jos käytät SQL Server Todennus, anna kirjautumistietosi.
  7. Napauta kytkeä muodostaa yhteyden.

Yhdistä a SQL Server esimerkiksi SQL Server Profileri.

Etäyhteyksiä varten määritä palvelimen koko nimi, mukaan lukien instanssin nimi, jos sovellettavissa.cabesim. Käytä nimetyille instanssien muotoa PALVELINNIMI\INSTANSSINIMI. Tarkista verkkoyhteys ja palomuurin asetukset, jos yhteyden muodostamisyritykset epäonnistuvat.

4. Luominen ja konfigurointi SQL Server jälkiä

4.1 Ensimmäisen jäljen luominen mallin avulla

Luo ensimmäinen jälkisi seuraavien vaiheiden avulla:

  1. Käynnistää SQL Server Profileri.
  2. Napauta filee -> Uusi jälki ja muodosta yhteys omaan tarhanki palvelin.
  3. Jäljitysominaisuudet valintaikkuna tulee näkyviin.
  4. Kirjoita kuvaava nimi Jäljityksen nimi ala.
  5. Valitse malli valikosta Käytä mallia pudotusvalikosta.
  6. Valitse Vakio (oletus) yleistä valvontaa varten tarkoitettu malli. Tai toinen malli muihin tarkoituksiin. Malli tarjoaa valmiiksi määritettyjä tapahtumia, sarakkeita ja suodattimia yleisiin skenaarioihin.
  7. Napauta ajaa start tallentaa tapahtumia välittömästi.

Aseta jäljityksen ominaisuudet kohdassa SQL Server Profileri.

4.2 Mukauta jälkiäsi

Usein mallit eivät täytä vaatimuksiasi. Tällaisessa tapauksessa voit mukauttaa jäljitystäsi täysin:

  1. In Jäljitysominaisuudet dialogi.
  2. Valitse Tyhjä mallipohjalta Käytä mallia pudotusvalikosta.Käytä jäljitystä varten tyhjää mallipohjaa.
  3. Valitse Tapahtumien valinta -välilehdellä voit nyt mukauttaa kaikkia tapahtumia, datasarakkeita ja suodattimia tarpeidesi mukaan. Käsittelemme niitä seuraavissa osioissa.
    Mukauta jäljitystä "Jäljityksen ominaisuudet" -valintaikkunan "Tapahtuman valinta" -välilehdellä.

4.3 Tallennettavien tapahtumien valitseminen

Voit valita tapahtuman kohdassa Tapahtumien valinta tab:

  1. Valitse + -kuvaketta Tapahtuma-luokan vieressä laajentaaksesi sitä.
  2. Valitse tapahtuma napsauttamalla sen vieressä olevaa valintaruutua.

Valitse tapahtuma "Jäljityksen ominaisuudet" -valintaikkunasta.

4.3.1 Tapahtumaluokkien ymmärtäminen

SQL Server Profiler järjestää tapahtumat luokkiin loogista ryhmittelyä varten. Tallennetut proseduurit -luokka sisältää proseduurien suorituksen tapahtumat, mukaan lukien SP:S.tarting, SP:Completed ja SP:StmtCompleted. Nämä tapahtumat seuraavat tallennettujen proseduurikutsujen ja yksittäisten lauseiden suorittamisen proseduurien sisällä.

TSQL-luokka tallentaa ad-hoc-kyselyiden suorituksen tapahtumilla, kuten SQL:BatchS.tarting ja SQL:BatchCompleted. Nämä tapahtumat seuraavat suoraan palvelimelle lähetettyjä kyselyitä. SQL Server tallennettujen proseduurien ulkopuolella.

Lukitukset-kategoria valvoo samanaikaisuuteen liittyviä tapahtumia, kuten Lukitus:Hankittu, Lukitus:Vapautettu, Lukitus:Lukitus ja Lukitus:Aikakatkaisu. Näiden tapahtumien avulla voit diagnosoida sovelluksen suorituskykyyn vaikuttavia esto- ja lukkiutumisongelmia.

Virheet ja varoitukset -luokka tallentaa poikkeustapahtumia, kuten poikkeus-, huomio- ja käyttäjävirheilmoitukset. Nämä tapahtumat auttavat tunnistamaan sovellusvirheitä ja SQL Server varoitukset jäljitysistuntojen aikana.

4.3.2 Oikeiden tapahtumien valitseminen skenaarioosi

Suorituskyvyn valvonta edellyttää tapahtumia, jotka tallentavat resurssien kulutusta. Valitse RPC:Completed ja SQL:BatchCompleted seurataksesi kyselyn suoritusta. Sisällytä Duration-, CPU-, Reads- ja Writes-sarakkeet resurssien käytön mittaamiseksi. Nämä tapahtumat tarjoavat perustan suorituskyvyn pullonkaulojen tunnistamiselle.

Tietoturvan auditointi vaatii tapahtumia, jotka seuraavat todennusta ja valtuutusta. Valitse Audit Login (Sisäänkirjautuminen), Audit Logout (Uloskirjautuminen), Audit Login Failed (Sisäänkirjautuminen epäonnistui) ja Object:Opened (Object:Avattu) valvoaksesi tietokannan käyttöä. Sisällytä LoginName (Kirjautumisnimi), DatabaseName (TietokannanNimi) ja ObjectName (ObjectName) -sarakkeet tunnistaaksesi, kuka on käyttänyt mitäkin resursseja.

Virheenkorjausskenaariot hyötyvät kattavasta tapahtumien tallennuksesta. Sisällytä tallennettujen proseduurien tapahtumat, SQL-erätapahtumat ja virhetapahtumat jäljittääksesi koko suoritusprosessin. Tallenna lisäkonteksti SPID:n, ApplicationName:n ja H:n avulla.ostNimeä sarakkeet yhdistääksesi tapahtumat tiettyihin istuntoihin.

4.4 Tietosarakkeiden määrittäminen

Oletusarvoisesti, kun valitset tapahtuman, kaikki sen datasarakkeet valitaan (valitaan). Voit poistaa tarpeettomien sarakkeiden valinnan vähentääksesi työmäärää ja yksinkertaistaaksesi analyysiä:

Valitse/poista tapahtuman datasarakkeiden valinta "Jäljityksen ominaisuudet" -valintaikkunassa.

Jokaisen jäljityksen olennaisia ​​sarakkeita ovat EventClass tapahtumatyypin tunnistamiseksi, TextData varsinaisen SQL-lausekkeen tallentamiseksi, LoginName suorittavan käyttäjän tunnistamiseksi ja StarAika, johon tapahtuma merkitään. Nämä sarakkeet tarjoavat peruskontekstin jokaiselle tallennetulle tapahtumalle.

Suorituskykyyn liittyvät sarakkeet mittaavat resurssien kulutusta. Duration (kesto) osoittaa, kuinka kauan tapahtuma kesti mikrosekunteina. CPU (prosessori) näyttää prosessorin ajan millisekunteina. Reads (lukumäärät) laskee loogisten sivujen lukukerrat. Writes (kirjoituskerrat) seuraa loogisten sivujen kirjoituksia. Nämä mittarit tunnistavat resursseja kuluttavat toiminnot, jotka vaativat optimointia.

Tietoturva- ja tarkastussarakkeet seuraavat tietojen käyttötapoja. DatabaseName tunnistaa, mitä tietokantaa on käytetty. ObjectName määrittää kyseessä olevan taulukon tai objektin. ApplicationName paljastaa, mikä sovellus aloitti toiminnan. Yhdessä nämä sarakkeet tarjoavat kattavat tarkastuslokit.

4.5 Suodattimien määrittäminen kohinan vähentämiseksi

4.5.1 Yleiset suodatuskriteerit

Määritä suodattimet seuraavalla tavalla:

  1. Avaa Jäljitysominaisuudet dialogi.
  2. Valitse Tapahtumien valinta Tab.
  3. Napauta Sarakesuodattimet -painiketta oikeassa alakulmassa.
    Napsauta "Sarakkeen suodattimet" -painiketta "Jäljityksen ominaisuudet" -valintaikkunassa.
  4. Valitse sarake vasemmalla olevasta luettelosta.
  5. Määritä suodatuskriteerit oikealla olevassa paneelissa.
    Aseta datasarakkeen suodatin "Jäljityksen ominaisuudet" -valintaikkunassa.
  6. Napauta OK suodattimen kiinnittämiseksi.

Sovelluksen nimisuodattimet eristävät tiettyjen sovellusten toiminnan. Laajenna SovelluksenNimi-sarake suodatinvalintaikkunassa ja kirjoita sovelluksesi nimi Pitää kenttä ja SQL Server Profiler tallentaa vain kyseisen sovelluksen tapahtumia. Tämä suodatin on korvaamaton sovelluskohtaisten ongelmien vianmäärityksessä.

Tietokannan nimisuodattimet rajoittavat sieppauksen tiettyihin tietokantoihin. Suodata tietokannan nimen mukaan, jos haluat sulkea pois järjestelmätietokannan toiminnan ja keskittyä sovellustietokantoihin. Kirjoita tietokantojen nimet Pitää or Yhtä suuri kenttä riippuen siitä, tarvitsetko jokerimerkkien vastaavuutta.

Kestosuodattimet tallentavat vain hitaasti suoritettavia toimintoja. Aseta vähimmäiskynnys kohdassa Suurempi tai yhtä suuri kenttä Kesto-sarakkeen alla. Esimerkiksi jos Kesto >= 1000, se tallentaa vain yli sekunnin kestävät tapahtumat ja suodattaa pois nopeasti suoritettavat kyselyt.

Käyttäjätunnussuodattimet seuraavat tiettyjen käyttäjien toimintaa. Suodata käyttäjätunnuksen perusteella seurataksesi tiettyjä tietokannan käyttäjiä. Tämä lähestymistapa auttaa tunnistamaan, ketkä käyttäjät suorittavat ongelmallisia kyselyitä tai käyttävät arkaluonteisia tietoja.

4.4.2 Suodata parhaat käytännöt

Tehokas suodatus tasapainottaa tiedonkeruun ja suorituskykyvaikutuksen. Käytä aina vähintään yhtä suodatinta liiallisen järjestelmätoiminnan tallentamisen estämiseksi. DatabaseName- ja ApplicationName-suodattimien tulisi olla ensisijaisia.tarpiste m:lleost kappaleita.

Vältä liian laajoja jäljityksiä tuotantoympäristöissä. Suodattamattomat jäljitykset tallentavat valtavia tietomääriä, mikä voi heikentää palvelimen suorituskykyä ja tehdä analysoinnista epäkäytännöllistä. Aseta erityiset suodatuskriteerit, jotka tarselvitä vianmääritystavoitteesi.

Testaa suodattimia ennen käyttöönottoa tuotantoympäristössä. Suorita ensin jäljityksiä kehitys- tai testiympäristöissä varmistaaksesi, että suodattimet tallentavat odotetut tapahtumat ilman liiallista lisäkuormitusta. Säädä suodatuskriteerejä tallennetun datan määrän perusteella.

4.5 Jäljitysmallien käyttö

4.5.1 Sisäänrakennettujen mallien yleiskatsaus

Vakiomalli tarjoaa tasapainoisen tapahtumien tallennuksen, joka sopii yleiseen valvontaan. Se sisältää yleisiä kyselyjen suoritustapahtumia, tallennettujen proseduurien kutsuja ja perusvirheiden seurannan. Käytä tätä mallia, kun tarvitset kattavaa näkyvyyttä tietämättä tarkalleen, mitä etsiä.

TSQL-malli keskittyy erityisesti kyselyiden suorittamiseen ja minimoi tapahtumien valinnan. Se tallentaa SQL:BatchCompleted- ja RPC:Completed-tapahtumat ja sisältää suorituskykyanalyysin kannalta olennaiset sarakkeet. Tämä malli tarjoaa vähemmän lisäkustannuksia kuin Standard-malli.

Tuning-malli optimoi tapahtumien valinnan Database Engine Tuning Advisor -analyysiä varten. Se tallentaa tapahtumia ja sarakkeita, joita tarvitaan työkuorman analysointiin ja indeksi-suosituksiin. Käytä tätä mallia, kun valmistellaan jäljityksiä automaattista suorituskyvyn säätöä varten.

TSQL_Replay-malli sisältää kaikki jäljityksen toistotoimintoon tarvittavat tapahtumat ja sarakkeet. Se tallentaa kattavat suoritustiedot, joiden avulla voit toistaa tallennetut työkuormit testiympäristöissä. Tämä malli luo suurempia jäljitystiedostoja laajan tiedonkeruun ansiosta.

4.5.2 Mukautettujen mallien luominen

Luo mukautettuja malleja noudattamalla näitä ohjeita:

  1. Napauta filee -> Mallit -> Uusi mallipohja …
  2. Kirjoita kuvaava nimi Uuden mallin nimi ala.
  3. Valinnaisesti, tarkista Perusta uusi malli olemassa olevaan malliin ja valitse olemassa oleva malli, jos et halua rakentaa alusta alkaen:
    Luo uusi mallipohja kohdassa SQL Server Profileri.
  4. Valitse Tapahtuman valinta välilehdellä voit mukauttaa jäljitysmallia haluamillasi tapahtumilla, sarakkeilla ja suodattimilla aivan kuten sinäkin tehdä normaalilla jäljellä.
  5. Napauta Säästä tallentaaksesi mallin.

Vie mallipohjia jaettavaksi tiimin jäsenten kanssa tai varmuuskopiointia varten:

  1. Napauta filee -> Mallit -> Vientimalli.
  2. Valitse vietävä mallipohja.
    Vie jäljitysmalli SQL Server Profileri.
  3. Navigoi haluamaasi tallennuspaikkaan.
  4. Anna tiedostonimi ja napsauta Säästä.
  5. Jaa *.tdf-tiedosto (SQL Server Profiler-mallitiedosto) muiden kanssa SQL Server Profilointikäyttäjät.

4.6 Jäljitystulosteen tallentaminen

Oletusarvoisesti SQL Server Profiler näyttää tapahtumat jäljitysikkunassa, mutta EI tallenna niitä. Voit halutessasi tallentaa jäljitystiedot tiedostoon tai taulukkoon Jäljitysominaisuudet valintaikkuna, kun luot uuden jäljen.

4.6.1 Tallenna tiedostoon

  1. In Jäljitysominaisuudet valintaikkuna, tarkista Tallenna tiedostoon.
  2. Avaa tiedostoselain napsauttamalla kansiokuvaketta.
  3. Navigoi haluamaasi tallennuspaikkaan.
  4. Anna tiedostonimi, jonka tiedostopääte on .trc.
  5. Napauta Säästä.
  6. Asettaa Aseta tiedoston enimmäiskoko rajoittaaksesi yksittäisen tiedoston kokoa.
  7. Enable Ota tiedostojen siirto käyttöön useiden tiedostojen luomiseen.
  8. Valinnaisesti ota käyttöön Palvelin käsittelee jäljitystietoja palvelinpuolen jäljityksiä varten.

Määritä jäljitystietojen tallennus tiedostoon "Jäljitysominaisuudet" -valintaikkunassa.

Tiedostokoon hallinta estää levytilan loppumisen. Aseta tiedoston enimmäiskoko kohtuulliseksi arvoksi, kuten 500 Mt tai 1 Gt, käytettävissä olevan levytilan ja odotetun jäljitysajan perusteella. Tiedoston siirto luo automaattisesti uudet tiedostot, kun kokoraja saavutetaan, ja lisää tiedostonimeen numeron.

4.6.2 Tallenna taulukkoon

  1. In Jäljitysominaisuudet valintaikkuna, tarkista Tallenna taulukkoon.
  2. Kohdetaulukko valintaikkuna tulee näkyviin.
    Valitse kohdetaulukko jäljitystietojen tallentamiseksi.
  3. Valitse palvelin valikosta Server pudotusvalikosta.
  4. Valitse tietokanta valikosta tietokanta pudotusvalikosta.
  5. Valitse olemassa oleva taulukko tai kirjoita uuden taulukon nimi Pöytä ala.
  6. Napauta OK vahvistaa.
  7. Valinnaisesti asetettu Aseta rivien enimmäismäärä rajoittaakseen taulukon kokoa.

Määritä jäljitystietojen tallennus taulukkoon "Jäljitysominaisuudet"-valintaikkunassa.

Taulukoihin tallennettaessa on otettava huomioon suorituskykyyn liittyvät seikat. Taulukkojen tallennus aiheuttaa lisäkustannuksia tiedostojen tallennukseen verrattuna, koska SQL Server Jäljitystiedot on kirjoitettava tallennusmoduulin kautta. Käytä taulukkotallennusta, kun sinun on tehtävä kysely jäljitystiedoista välittömästi T-SQL:llä.

Tietojen säilytyksestä tulee tärkeää taulukkopohjaisissa jäljityksissä. Aseta rivien enimmäismäärät estääksesi taulukoiden kasvamisen liian suuriksi. Arkistoi tai poista vanhat jäljitystiedot säännöllisesti suorituskyvyn ylläpitämiseksi. Harkitse suurten jäljitystaulukoiden osiointia paremman hallittavuuden saavuttamiseksi.

5. Suorittaminen ja hallinta SQL Server jälkiä

5.1 StarJälkien tallentaminen, keskeyttäminen ja pysäyttäminen

Hallitse jäljityksen suorittamista työkalupalkin painikkeilla:Hallitse jälkiä työkalupalkin painikkeilla SQL Server Profileri.

  • Vihreä Aloita -painike alkaa tallentaa tapahtumia määritystesi mukaisesti.
  • Napauta Tauko tempoonrarkeskeyttää tiedonkeruun menettämättä yhteyttä.
  • Napauta stop lopettaaksesi jäljityksen ja sulkeaksesi yhteyden.

Valikkokohtien kautta:
Hallitse jälkiä valikkokohteiden kautta kohdassa SQL Server Profileri.

Napsauta hiiren kakkospainikkeella mitä tahansa merkintää jäljitysikkunassa:

Hallitse jälkiä hiiren kakkospainikkeella napsautettavien valikkokohteiden avulla SQL Server Profileri.

Jäljityksen elinkaaren hallinta vaikuttaa palvelinresursseihin. Aktiiviset jäljitykset kuluttavat muistia ja prosessointitehoa suhteessa tallennettujen tapahtumien määrään. Keskeytä jäljitykset silloin, kun valvontaa ei tarvita, vähentääksesi yleiskuluja. Pysäytä jäljitykset kokonaan analyysin valmistuttua resurssien vapauttamiseksi.

Asiakaspuolen jäljitykset vaativat aktiivisen Profiler-yhteyden. Yhteyden sulkeminen SQL Server Profiler-ikkuna pysäyttää asiakaspuolen jäljitykset välittömästi. Pienennä Profiler-ikkuna sulkemisen sijaan, jotta jäljitykset pysyvät käynnissä työskennellessäsi muissa sovelluksissa.

5.2 Reaaliaikainen jäljityksen seuranta

Seuraa tallennettuja tapahtumia niiden tapahtuessa pääjäljitysikkunassa. Jokainen rivi edustaa yhtä tapahtumaa, ja sarakkeet näyttävät tapahtuman ominaisuudet. Ruudukko päivittyy jatkuvasti aktiivisten jäljitysten aikana ja näyttää most viimeaikaiset tapahtumat oletuksena alareunassa.

Reaaliaikainen jäljitysmonitori SQL Server Profileri.

Tunnista kaavoja ja ongelmia tarkkailemalla tapahtumien tiheyttä ja ominaisuuksia. Pitkäkestoiset tapahtumat viittaavat suorituskykyongelmiin. Usein esiintyvät virheet viittaavat sovellusongelmiin. Epätavallinen kirjautumistoiminta voi viitata tietoturvaongelmiin. Reaaliaikainen valvonta mahdollistaa välittömän reagoinnin uusiin ongelmiin.

Selaa tallennettuja tapahtumia tutkiaksesi tiettyjä esiintymiä. Napsauta mitä tahansa riviä valitaksesi tapahtuman ja tarkastellaksesi sen kaikkia tietoja. Kaksoisnapsauta tapahtumia avataksesi yksityiskohtaiset ominaisuusikkunat, jotka näyttävät kaikki sarakearvot. Käytä vierityslukitustoimintoa estääksesi automaattisen vierityksen historiallisia tapahtumia tarkastellessasi.

5.3 Useiden samanaikaisten jälkien hallinta

Useiden jäljitysten suorittaminen samanaikaisesti tarjoaa joustavuutta monimutkaisissa valvontaskenaarioissa. Luo erilliset jäljitykset tietokannan toiminnan eri osa-alueille, kuten yksi jäljitys suorituskyvyn valvontaa ja toinen tietoturvatarkastusta varten. Jokainen jäljitys suoritetaan itsenäisesti omilla kokoonpanoillaan.

Hallitse useita samanaikaisia ​​jäljityksiä SQL Server Profileri.

Resurssien allokoinnista tulee kriittistä useiden jäljitysten yhteydessä. Jokainen aktiivinen jäljitys kuluttaa muistia, suorittimen suorituskykyä ja mahdollisesti levy-I/O:ta. Rajoita samanaikaisten jäljitysten määrää ja varmista, että jokainen jäljitys käyttää asianmukaisia ​​suodattimia ylimääräisen kuorman minimoimiseksi. Valvo palvelimen suorituskykyä useiden jäljitysten suorittamisen aikana.

Koordinoi jäljitysten ajoitusta päällekkäisten, paljon resursseja vaativien jäljitysten välttämiseksi. Jos mahdollista, suorita jäljityksiä vähäisen aktiivisuuden aikoina. Aikatauluta eri jäljitykset eri aikoihin sen sijaan, että suorittaisit kaiken samanaikaisesti.

5.4 Asiakaspuolen jäljitykset vs. palvelinpuolen jäljitykset

Oletusarvoisesti uusi luotu jäljitys on asiakaspuolen jäljitys, joka vaatii aktiivisen yhteyden SQL Server Profiler tietokantapalvelimelle. Jäljitys pysähtyy välittömästi, jos yhteys katkeaa.ost tai Profiler on suljettu.

Voit myös luoda palvelinpuolen jäljityksen, joka toimii kokonaan SQL Server instanssi ilman aktiivista Profiler-yhteyttä. Palvelinpuolen jäljitys jatkuu myös sulkemisen jälkeen. SQL Server Profiler, kirjoittaa tietoja määritettyyn tiedostosijaintiin.

Palvelinpuolen jäljityksen luominen:

  1. Valitse Tiedosto -> Uusi jäljitys…
  2. In Jäljitysominaisuudet valintaikkuna, tarkista Tallenna tiedostoon
  3. Määritä tiedoston sijainti ja muut asetukset.
  4. Enable Palvelin käsittelee jäljitystietoja luodaksesi palvelinpuolen jäljityksen.

Luo palvelinpuolen jäljitys kohdassa SQL Server Profileri.

Suorituskykyyn liittyvät vaikutukset vaihtelevat merkittävästi eri jäljitystyyppien välillä. Asiakaspuolen jäljitysten on lähetettävä tietoja verkon kautta Profiler-käyttöliittymään, mikä lisää viivettä ja kaistanleveyden kulutusta. Palvelinpuolen jäljitysten aiheuttamat lisäkustannukset ovat pienemmät, koska tiedot kirjoitetaan suoraan palvelimen levylle.

Käytä asiakaspuolen jäljityksiä ad-hoc-vianmääritykseen ja pikadiagnoosiinostic-istuntoja ja tilanteita, joissa välitön visuaalinen palaute on arvokasta. Valitse palvelinpuolen jäljityksiä tuotannon valvontaan, pitkäkestoisiin tallenteisiin ja skenaarioihin, jotka vaativat valvomatonta toimintaa.

6. Analysointi SQL Server Profilointitiedot

6.1 Tallennettujen jälkien avaaminen ja tarkastelu

Lataa tallennetut jäljitystiedostot seuraavasti:

  1. Käynnistää SQL Server Profileri.
  2. Napauta filee -> avoin -> Jäljitystiedosto.
  3. Siirry jäljitystiedoston sijaintiin.
  4. Valitse .trc-tiedosto ja napsauta avoin.
  5. Jäljitystiedot latautuvat pääikkunaan.

Lataa jäljitystaulukot seuraavalla tavalla:

  1. Napauta filee -> avoin -> Jäljitystaulukko.
  2. Yhdistä palvelimeen hostjäljitystaulukon käyttäminen.
  3. Valitse tietokanta valikosta tietokanta pudotusvalikosta.
  4. Valitse pöytä joukosta Pöytä pudotusvalikosta.
  5. Napauta OK ladataksesi tiedot.

6.2 Jäljitystietojen suodattaminen ja hakeminen

6.2.1 Post-Kaappaussuodatus

Käytä suodattimia ladattuihin jäljitystietoihin seuraavasti:

  1. Napauta muokata -> Löytää tai paina Ctrl + F.
  2. Kirjoita hakusana Etsittävä ala.
  3. Valitse haettava sarake taulukosta Katso sisään pudotusvalikosta.
  4. Napauta Etsi seuraava vastaavien tapahtumien löytämiseksi.

Etsi jäljitystietoja SQL Server Profileri.

Sarakepohjainen suodatus tarkentaa näytettäviä tietoja ilman tapahtumia uudelleen. Napsauta hiiren kakkospainikkeella mitä tahansa sarakeotsikkoa ja valitse suodatusasetukset pikavalikosta. Syötä suodatusehdot näyttääksesi vain vastaavat rivit. Tämä lähestymistapa nopeuttaa analyysia piilottamalla epäolennaiset tapahtumat.

6.2.2 Tiettyjen tapahtumien löytäminen

Hakutoiminto auttaa paikantamaan tiettyjä tapahtumia suurista jäljitystiedostoista. Käytä Etsi-valintaikkunaa hakeaksesi tekstisisällön, tapahtumatyypin tai sarakearvon perusteella. Säännölliset lausekkeet mahdollistavat monimutkaisia ​​hakumalleja tarvittaessa.

Lisää tärkeät tapahtumat kirjanmerkkeihin nopeaa tarkastelua varten analyysin aikana. Napsauta mielenkiintoisia tapahtumia hiiren kakkospainikkeella ja valitse kirjanmerkkivaihtoehdot merkitäksesi ne. Siirry kirjanmerkkien välillä pikanäppäimillä tai valikkokomennoilla, mikä helpottaa toisiinsa liittyvien tapahtumien vertailua.

6.3 Tapahtumien ryhmittely ja yhdistäminen

Ryhmittele tapahtumat sarakearvojen mukaan tunnistaaksesi kaavoja ja tiivistääksesi aktiviteetit. Napsauta hiiren kakkospainikkeella mitä tahansa sarakeotsikkoa ja valitse Ryhmittele tämän sarakkeen mukaan tapahtumien järjestämiseen. Ryhmitellyt näkymät kutistavat samankaltaiset tapahtumat yhteen, mikä helpottaa yleisten trendien näkemistä.

Kootut näkymät tarjoavat tilastollisia yhteenvetoja jäljitystiedoista. Ryhmittele tekstitietojen mukaan nähdäksesi, kuinka monta kertaa kukin kysely suoritettiin. Ryhmittele kirjautumisnimen mukaan nähdäksesi käyttäjäkohtaisia ​​​​toimintayhteenvetoja. Koominen paljastaa kaavoja, jotka eivät ole heti ilmeisiä yksityiskohtaisissa tapahtumaluetteloissa.

Laajenna ja tiivistä ryhmiä porautuaksesi tiettyihin luokkiin. Napsauta ryhmien otsikoiden vieressä olevia plus- ja miinus-kuvakkeita näyttääksesi tai piilottaaksesi ryhmitellyt tapahtumat. Tämä hierarchikaalinen näkökulma helpottaa ylhäältä alas -analyysiä, starkorkean tason kuvioiden kanssa puuhastelua ja yksityiskohtiin syventymistä.

6.4 SQL-kyselyiden poimiminen jäljityksistä

Pura kyselyt jäljitystiedoista seuraavasti:

  1. Etsi kiinnostava kysely jäljitysruudukosta.
  2. Valitse tapahtuma napsauttamalla riviä.
  3. Näytä koko kyselyteksti alareunassa olevassa paneelissa.
  4. lehdistö Ctrl + A valitaksesi kaiken kyselytekstin.
  5. lehdistö Ctrl + C kopioidaksesi kyselytekstin.
  6. Liitä kysely Management Studioon lisäanalyysia varten.

Pura SQL-kysely jäljitystapahtumasta.

Tunnista ongelmalliset kyselyt lajittelemalla suorituskykysarakkeiden mukaan. Lajittele suoritusajan mukaan napsauttamalla Kesto-sarakeotsikkoa. Hitaimmat kyselyt näkyvät ylä- tai alareunassa lajittelusuunnasta riippuen. Lajittele vastaavasti suorittimen, lukujen tai kirjoitusten mukaan tunnistaaksesi resursseja kuluttavat toiminnot.

Vie kyselyitä testausta varten kopioimalla ne jäljityksestä kyselyikkunoihin. Muokkaa poimittuja kyselyitä testataksesi optimointistrategioita. Vertaile suoritussuunnitelmia ja suorituskykymittareita alkuperäisen ja optimoidun version välillä.

6.5 Tapahtumien korrelointi ja suoritusvirran ymmärtäminen

Vanhemman ja lapsen välisten tapahtumien suhteet näyttävät suorituksen tässärarSQL:BatchStarting-tapahtumien pääfunktio SQL:StmtStarting-tapahtumia, jotka puolestaan ​​ovat proseduurien suoritustapahtumia. Näiden suhteiden ymmärtäminen auttaa jäljittämään koodisi koko suorituspolkua.

Tapahtumien seuranta yhdistää toisiinsa liittyviä tapahtumia ajan kuluessa. Käytä SPID-saraketta ryhmitelläksesi tapahtumia istunnon mukaan. Istunnon sisällä tapahtumat esiintyvät aikajärjestyksessä, mikä näyttää toimintojen järjestyksen. Tämä näkymä näyttää, miten eri toiminnot ovat vuorovaikutuksessa tapahtumien sisällä.

Korreloi tapahtumia tutkimalla jaettuja sarakearvoja. Saman istunnon aikana tapahtui tapahtumia, joilla oli identtinen SPID. Saman ApplicationName-tapahtumat tulivat samasta sovelluksesta. Käytä näitä korrelaatioita ymmärtääksesi monimutkaisia ​​suoritusskenaarioita.

7. yhteinen SQL Server Profilerin käyttötapaukset

7.1 Suorituskyvyn vianmääritys

7.1.1 Hitaiden kyselyiden tunnistaminen

Tallenna hitaat kyselyt seuraavalla määrityksellä:

  1. Luo uusi jälki käyttämällä TSQL sapluuna.
  2. In Tapahtumien valinta välilehti, vahvista SQL:BatchCompleted ja RPC:Valmis valitaan.
  3. Napauta Sarakesuodattimet.
  4. valita Kesto sarakeluettelosta.
  5. Syötä 1000000 kohtaan Suurempi tai yhtä suuri kenttä yli sekunnin kestävien kyselyiden tallentamiseen.
  6. Napauta OK ja start jälki.
  7. Suorita jäljitys ruuhka-aikoina.
  8. Pysäytä jäljitys ja lajittele keston mukaan tunnistaaksesi hitaimmat kyselyt.

Kestoon perustuva analyysi paljastaa suoritusajan kaavamaiset muutokset. Lajittele tallennetut tapahtumat Kesto-sarakkeen mukaan nähdäksesi pisimpään käynnissä olevat toiminnot ensin. Tutki näiden tapahtumien TextData-saraketta tunnistaaksesi viiveistä vastuussa olevat todelliset kyselyt.

CPU- ja I/O-intensiiviset kyselyt vaativat erilaisia ​​optimointimenetelmiä. Lajittele CPU-sarakkeen mukaan löytääksesi prosessoriin sidotut kyselyt, jotka vaativat algoritmisia parannuksia. Lajittele Luku- tai Kirjoitus-sarakkeiden mukaan tunnistaaksesi I/O-sidotut kyselyt, jotka hyötyvät indeksoinnista tai kyselyn uudelleenkirjoittamisesta.

7.1.2 Esteiden ja lukkiutumien havaitseminen

Määritä eston tunnistus seuraavasti:

  1. Luo uusi jälki.
  2. In Tapahtumien valinta välilehti, laajenna Lukot.
  3. valita Lukko: Lukkiutumiskohta ja Lukko: Lukitusketju.
  4. Laajentaa Virheet ja varoitukset.
  5. valita Estetty prosessi -raportti.
  6. Sisällytä sarakkeet: SPID, Tekstitiedot, Tietokannan nimi, Kirjautumisnimi.
  7. Start jäljittää ja valvoa lukitustapahtumia.

Lukitustapahtumien valvonta paljastaa sovelluksen suorituskykyyn vaikuttavia samanaikaisuusongelmia. Lukitus:Lukitustapahtumat osoittavat, milloin SQL Server havaittu ja ratkaistu lukkiutumistilanteet. Lukitus:Lukkiutumisketju -tapahtumat näyttävät lukkiutumiseen liittyvät prosessit.

Lukkiutumiskaaviot tarjoavat visuaalisia esityksiä lukkiutumistilanteista. Kun lukkiutumistapahtuma tapahtuu, TextData-sarake sisältää lukkiutumista kuvaavan XML-tiedoston. Kopioi tämä XML-tiedosto ja avaa se SQL Server Management Studiossa voit tarkastella graafista lukkiutumiskaaviota, joka näyttää, mitkä prosessit estivät toisensa.

7.1.3 Puuttuvien indeksien etsiminen

Tallenna työmäärä indeksianalyysiä varten seuraavasti:

  1. Luo uusi jälki käyttämällä Viritys sapluuna.
  2. Määritä jäljitys tallennettavaksi tiedostoon.
  3. Suorita jäljitys edustavien työkuormitusjaksojen aikana.
  4. Kerää ainakin muutaman tunnin aktiviteetti.
  5. Pysäytä jäljitys ja tallenna tiedosto.
  6. Käynnistä tietokantamoottorin viritysohjaus.
  7. Valitse jäljitystiedosto työkuorman lähteeksi.
  8. Suorita analyysi saadaksesi indeksi-suosituksia.

Integrointi Database Engine Tuning Advisorin kanssa automatisoi indeksisuositukset. Tuning Advisor analysoi tallennetun työmäärän ja ehdottaa indeksejä, jotka parantaisivat suorituskykyä. Tarkista suositukset huolellisesti ennen käyttöönottoa ottaen huomioon tallennustilan ylimääräiset kustannukset ja ylläpitokustannukset.osts.

7.2 Sovelluksen vianmääritys

7.2.1 Sovellusvirheiden virheenkorjaus

Seuraa sovellusvirheitä tällä määrityksellä:

  1. Luo uusi jälki.
  2. Laajentaa Virheet ja varoitukset Tapahtumien valinta -välilehdellä.
  3. valita Poikkeus, Käyttäjän virheilmoitusja Huomio.
  4. Sisällytä sarakkeet: Virhe, Tekstitiedot, Sovelluksen nimi, SPID.
  5. suodata Sovelluksen nimi keskittyäksesi hakemukseesi.
  6. Starjäljitä ja toista virhetilanne.
  7. Tarkista tallennetut virhetapahtumat diagnosointia vartenostic-tiedot.

Virheiden seuranta paljastaa poikkeusten yksityiskohdat, jotka ovat usein piilossa sovelluksilta. Virhe-sarake sisältää SQL Server virhenumerot. TextData-sarake näyttää virheilmoitukset ja virheen aiheuttaneen kyselyn. Vakavuusaste-sarake osoittaa virheen vakavuusasteet.

Poikkeusten valvonta tallentaa ajonaikaisia ​​ongelmia, kuten rajoitteiden rikkomuksia, käyttöoikeusvirheitä ja aikakatkaisutapahtumia. Korreloi virhetapahtumat edeltävien kyselytapahtumien kanssa ymmärtääksesi, mikä laukaisi poikkeukset.

7.2.2 Sovelluksen ja tietokannan välisen viestinnän jäljitys

Seuraa sovellustoimintaa seuraavasti:

  1. Luo uusi jälki käyttämällä Standard sapluuna.
  2. Napauta Sarakesuodattimet.
  3. valita Sovelluksen nimi ja kirjoita sovelluksesi nimi kohtaan Pitää ala.
  4. Suodata halutessasi HostNimi eristää tiettyjä palvelimia.
  5. Starjäljitys sovellustoimintojen aikana.
  6. Tarkista tallennetut tapahtumat nähdäksesi kaikki tietokannan vuorovaikutukset.

Sovellusnimien suodatus eristää kyselyt tietyistä sovelluksista. SQL Server Asettaa sovelluksen nimen yhteysmerkkijonojen perusteella, mikä helpottaa yksittäisten sovellusten jäljittämistä usean sovelluksen ympäristöissä. Varmista, että yhteysmerkkijonosi sisältää Sovelluksen nimi -parametrin tehokasta suodatusta varten.

Yhteyksien seuranta näyttää istunnon elinkaaren, mukaan lukien kirjautumisen, kyselyn suorittamisen ja uloskirjautumisen. Seuraa yhteyksien luontinopeutta yhteyksien yhdistämisongelmien tunnistamiseksi. Liiallinen yhteyspoistuma viittaa mahdollisiin sovellusmääritysongelmiin.

7.2.3 Sovelluksen toiminnan validointi

Varmista odotettu sovelluksen toiminta jäljitysanalyysin avulla. Tallenna kaikki tietokantatoiminnot liiketoimintatapahtuman aikana ja varmista, että oikeat kyselyt suoritetaan oikeassa järjestyksessä. Vertaa todellisia tallennettuja kyselyitä odotettuun toimintaan ristiriitaisuuksien tunnistamiseksi.

Parametrien validointi varmistaa, että sovellukset välittävät oikeat arvot tallennetuille proseduureille ja parametrisoiduille kyselyille. Tutki tallennettua kyselytekstiä varmistaaksesi, että parametriarvot vastaavat odotuksia. Virheelliset parametrit aiheuttavat usein logiikkavirheitä, jotka ilmenevät virheellisinä liiketoimintatuloksina.

7.3 Tietoturvatarkastus

7.3.1 Kirjautumisyritysten valvonta

Määritä kirjautumisen valvonta seuraavasti:

  1. Luo uusi jälki.
  2. Laajentaa Security Audit Tapahtumien valinta -välilehdellä.
  3. valita Audit-kirjautuminen, Uloskirjautuminen auditoinnistaja Kirjautuminen auditointiin epäonnistui.
  4. Sisällytä sarakkeet: Kirjautumisnimi, HostNimi, Sovelluksen nimi, StartAika.
  5. Starjäljitys todennustoiminnan valvontaa varten.
  6. Tarkista epäonnistuneiden kirjautumisten tapahtumat mahdollisten tietoturvaongelmien varalta.

Onnistuneet ja epäonnistuneet kirjautumiset tarjoavat kattavan todennuksen seurannan. Audit Login -tapahtumat tallentavat onnistuneet todennusyritykset käyttäjän henkilöllisyyden ja lähdetietojen kera. Audit Login failed -tapahtumat osoittavat epäonnistuneita kirjautumisyrityksiä, jotka voivat edustaa hyökkäyksiä tai määritysongelmia.

Todennuksen seuranta paljastaa kaavoja tietokannan käytössä. Seuraa kirjautumistiheyttä epätavallisen toiminnan havaitsemiseksi. Useat epäonnistuneet kirjautumisyritykset ja niiden jälkeen onnistunut kirjautuminen voivat viitata vaarantuneisiin tunnistetietoihin. Epäonnistuneet kirjautumiset odottamattomista sijainneista vaativat tutkimista.

7.3.2 Tietojen käytön ja muutosten seuranta

Tietojen käytön valvonta tällä kokoonpanolla:

  1. Luo uusi jälki.
  2. Laajentaa Security Audit.
  3. valita Tietokannan objektien käyttöoikeuksien tarkastus.
  4. Sisällytä sarakkeet: ObjectName, Kirjautumisnimi, Tekstitiedot, Tietokannan nimi.
  5. suodata ObjectName tiettyjen arkaluonteisten taulukoiden valvomiseksi.
  6. Starjäljitys käyttöyritysten tallentamiseksi.

SELECT-, INSERT-, UPDATE- ja DELETE-seuranta tarjoaa kattavan datamuutosten tarkastuksen. Tallenna SQL:BatchCompleted-tapahtumat sopivilla suodattimilla kaikkien datan käyttötoimintojen valvomiseksi. Suodata ObjectName- tai TextData-tietojen perusteella keskittyäksesi arkaluonteisiin taulukoihin.

Arkaluonteisten tietojen käyttö vaatii huolellista valvontaa, jotta varmistetaan tietoturvakäytäntöjen noudattaminen. Luo jäljityksiä erityisesti taulukoille, jotka sisältävät henkilötietoja, taloudellisia tietoja tai muita luottamuksellisia tietoja. Tarkista käyttötapamallit säännöllisesti tunnistaaksesi sopimattoman tiedonkäytön.

7.3.3 Luvattomien toimien tunnistaminen

Havaitse epäilyttävää toimintaa analysoimalla kyselykuvioita siepatuissa jäljityksissä. Etsi epätavallisia kyselyitä, jotka eivät vastaa normaalia sovellustoimintaa. SELECT-lausekkeet ilman WHERE-lauseketta, jotka hakevat kokonaisia ​​taulukoita, voivat viitata tietojen vuotamisyrityksiin.

Oikeuksien eskalointiyritykset näkyvät käyttöoikeusvirheinä tai yrityksinä suorittaa järjestelmänvalvojan komentoja. Tarkkaile kyselyitä, jotka yrittävät käyttää järjestelmätaulukoita, muokata palvelimen kokoonpanoa tai luoda käyttöoikeutettuja tilejä. Suodata virhetapahtumat ja tarkista TextData-sarakkeesta epäilyttävää toimintaa.

7.4 Kapasiteettisuunnittelu ja työmäärän analysointi

Määritä vertailuarvot tallentamalla edustava työmäärä normaalin toiminnan aikana. Suorita jäljityksiä tyypillisten aukioloaikojen aikana ymmärtääksesi vakiotoimintamallit. Tallenna nämä jäljitykset suorituskyvyn vertailuarvoiksi tulevaa vertailua varten.

Huippukäytön tunnistus paljastaa, milloin järjestelmäsi on kuormitettuna eniten. Tallenna jäljityksiä eri ajanjaksoilta, mukaan lukien toimistoajat, eräajoikkunat ja aukioloaikojen ulkopuolinen toiminta. Analysoi tapahtumien määriä ja resurssien kulutusta huippujaksojen tunnistamiseksi.

Resurssien käyttöasteet ilmenevät työkuorma-analyysistä. Ryhmittele tapahtumat aikavälien mukaan nähdäksesi aktiviteettien jakautumisen päivän aikana. Laske yhteenlasketut suorittimen, levyn I/O:n ja keston mittarit resurssien kulutuksen mittaamiseksi. Käytä näitä tietoja kapasiteetin päivitysten suunnitteluun tai optimointimahdollisuuksien tunnistamiseen.

8. Edistynyt SQL Server Profilointitekniikat

8.1 Palvelinpuolen jälkien luominen T-SQL:llä

8.1.1 Sp_trace_create-funktion ja siihen liittyvien proseduurien käyttö

Luo palvelinpuolen jäljityksiä ohjelmallisesti käyttämällä TSQL:n tallennettuja proseduureja. Tämä lähestymistapa mahdollistaa jäljitysten automaattisen luomisen ja hallinnan ilman, että se vaatii SQL Server Profilerin graafinen käyttöliittymä.

Määrittele palvelinpuolen jäljitys tällä esimerkkikoodilla:

  1. Määritä muuttujat jäljitystunnukselle ja tiedostopolulle.
  2. Luo uusi jäljitys kutsumalla sp_trace_create-funktiota.
  3. Käytä sp_trace_setevent-metodia tapahtumien ja sarakkeiden lisäämiseen.
  4. Voit halutessasi käyttää sp_trace_setfilter-funktiota suodattimien määrittämiseen.
  5. Kutsu sp_trace_setstatus-funktiota s:ääntart jälki.

sp_trace_create-proseduuri alustaa uuden jäljitysmäärityksen. Määritä tulostetiedoston polku, tiedoston enimmäiskoko ja rollover-asetukset. Proseduuri palauttaa jäljitystunnuksen, jota käytetään seuraavissa proseduurikutsuissa jäljityksen konfiguroimiseksi.

Lisää tapahtumia käyttämällä sp_trace_setevent-proseduuria. Määritä jäljitys-, tapahtuma- ja sarake-ID-tunnus kullekin tallennetulle tapahtuma-sarake-yhdistelmälle. Kutsu tätä proseduuria useita kertoja luodaksesi täydelliset jäljityskonfiguraatiot.

Konfiguroi suodattimet sp_trace_setfilter-proseduurilla. Määritä jäljitystunnus, saraketunnus, looginen operaattori, vertailuoperaattori ja suodattimen arvo. Useat suodatinkutsujen yhdistämisellä luodaan monimutkaisia ​​suodatusehtoja.

StarLopeta jäljitys kutsumalla sp_trace_setstatus-funktiota tila-arvolla 1. Pysäytä jäljitys kutsumalla samaa proseduuria tila-arvolla 0. Poista jäljitysmääritelmät kutsumalla proseduuria tila-arvolla 2.

8.1.2 Palvelinpuolen jäljitysten edut

Pienempi asiakastietokoneen kuorma tekee palvelinpuolen jäljityksistä ihanteellisia tuotannon valvontaan. Tietokantapalvelin käsittelee kaikki jäljitystoiminnot kuluttamatta asiakaskoneen resursseja. Verkkokaistanleveyttä ei kulu tapahtumien lähettämiseen asiakassovellukseen.

Automaattinen suoritus mahdollistaa valvomattoman jäljitysten keräämisen. Palvelinpuolen jäljitysten suorittaminen jatkuu luomisen jälkeen, vaikka asiakasyhteyttä ei olisi. Aikatauluta jäljityksen luonti SQL Server Agentin työt automatisoitua valvontaa varten.

Palvelinpuolen käsittely vaikuttaa suorituskykyyn vähemmän. Tapahtumat kirjoitetaan suoraan levylle ilman lisäsarjoittelua tai verkkosiirtoa. Puskurin hallinta optimoi levyn I/O:n paremman kokonaissuorituskyvyn saavuttamiseksi.

8.2 Jäljityksen toistotoiminto

8.2.1 Jälkien tallentaminen toistoa varten

Luo toistovalmiita jälkiä seuraavasti:

  1. Luo uusi jälki käyttämällä TSQL_toisto sapluuna.
  2. Varmista, että kaikki pakolliset tapahtumat ja sarakkeet on valittu.
  3. Määritä jäljitys tallennettavaksi tiedostoon.
  4. Suorita jäljitys sen työmäärän aikana, jonka haluat tallentaa.
  5. Pysäytä jäljitys ja tallenna tiedosto.

Pakolliset tapahtumat ja sarakkeet varmistavat täydellisen jäljityksen toiston. TSQL_Replay-malli sisältää kaikki tarvittavat tapahtumatyypit ja datasarakkeet. Puuttuvat pakolliset elementit estävät onnistuneen toiston, joten käytä aina tätä mallia, kun kaappaat tietoja toistoa varten.

8.2.2 Jälkien toistaminen

Toista tallennetut työkuormat seuraavasti:

  1. In SQL Server Profiloija, napsauta filee -> avoin -> Jäljitystiedosto.
  2. Valitse toistovalmis jäljitystiedosto.
  3. Napauta Replay -> Aloita.
  4. Yhdistä tarHae palvelin toistovalintaikkunassa.
  5. Määritä toistoasetukset, mukaan lukien toistojärjestys ja -ajoitus.
  6. Napauta OK aloittaaksesi toiston.
  7. Seuraa toiston edistymistä tilaikkunassa.

Toiston määritysasetukset ohjaavat sitä, miten SQL Server Profiler toistaa tallennetun työmäärän. Toista tapahtumat niiden tallennusjärjestyksessä ajallisten suhteiden säilyttämiseksi. Määritä, säilytetäänkö alkuperäinen ajoitus vai toistetaanko tapahtumat mahdollisimman nopeasti.

8.2.3 Jäljityksen toiston käyttötapaukset

Kuormitustestaus hyötyy jäljityksen toistosta realististen työkuormien toistamisen avulla. Tallenna tuotantokuormituksen jäljitys ja toista se testijärjestelmiä vasten validoidaksesi suorituskyvyn todellisissa käyttömalleissa. Säädä samanaikaisuusasetuksia simuloidaksesi eri kuormitustasoja.

Ympäristösiirtymän validointi varmistaa, että uudet järjestelmät pystyvät käsittelemään olemassa olevia työkuormia. Tallenna jäljityksiä nykyisistä tuotantojärjestelmistä ja toista ne uusilla laitteistoilla tai päivitetyillä laitteilla. SQL Server versiot. Vertaa suorituskykymittareita varmistaaksesi, etteivät siirrot heikennä suorituskykyä.

Testausskenaarioihin kuuluvat regressiotestaukset koodimuutosten jälkeen, optimoijan muutosten validointi SQL Server versioita ja laitteistokokoonpanojen rasitustestausta. Replay tarjoaa yhdenmukaisia ​​ja toistettavia työkuormia luotettavaa testausta varten.

8.3 SQL Profilerin integrointi tietokantamoottorin viritystyökaluun

Luo Database Engine Tuning Advisorille työkuormatiedostoja tallentamalla jälkiä asianmukaisilla tapahtumilla. Käytä Tuning-mallia varmistaaksesi, että kaikki tarvittavat tiedot tallennetaan analyysia varten.

Käynnistä Database Engine Tuning Advisor ja valitse jäljitystiedostosi työkuorman lähteeksi. Advisor analysoi siepatut kyselyt ja suosittelee indeksejä, indeksoituja näkymiä tai osiointistrategioita, jotka parantavat suorituskykyä.

Suorituskyvyn optimoinnin työnkulku yhdistää jäljityksen tallennuksen viritysanalyysiin. Tallenna edustavat työkuormitukset normaalin toiminnan aikana, analysoi ne Viritysavustajalla, tarkista suositukset, testaa ehdotettuja muutoksia kehitysvaiheessa ja lopuksi ota hyväksytyt muutokset käyttöön tuotannossa.

8.4 Jäljitysten keräämisen automatisointi

Jäljitysten ajoittaminen käyttämällä SQL Server Agenttityöt tietojen automaattiseen keräämiseen. Luo T-SQL-skriptejä, jotka määrittelevät palvelinpuolen jäljitykset sp_trace-proseduurien avulla. Ajoita nämä skriptit suoritettavaksi tiettyinä aikoina tai aikavälein.

PowerShell-automaatio mahdollistaa kehittyneet jäljitysten hallintaskenaariot. Kirjoita PowerShell-skriptejä, jotka luovat jäljityksiä, valvovat niiden tilaa ja käsittelevät kerättyjä tietoja. Ajoita PowerShell-skriptejä Tehtävien ajoituksen avulla tai SQL Server Agentti.

SQL Server Agenttityöt tarjoavat luotettavan aikataulutetun suorituksen. Luo töitä, jotka ovattarSeurantatietojen kerääminen seurantajaksojen alussa ja seurannan lopettaminen tiedonkeruun päätyttyä. Työilmoitusten määrittäminen järjestelmänvalvojien hälyttämiseksi virheistä.

8.5 Jälkien analysointi ohjelmallisesti

Lue jäljitystiedostoja T-SQL:llä käyttämällä fn_trace_gettable-funktiota. Tämä taulukkoarvoinen funktio jäsentää jäljitystiedostot ja palauttaa tapahtumatiedot tulosjoukkona. Suorita mukautettu analyysi kyselemällä näitä tietoja tavallisella T-SQL:llä.

Mukautetut analyysiskriptit mahdollistavat automaattisen jäljityskäsittelyn. Kirjoita kyselyitä, jotka laskevat koostetilastoja, tunnistavat malleja tai merkitsevät poikkeavuuksia. Ajoita nämä skriptit suoritettavaksi automaattisesti jäljityskeräyksen valmistuttua.

Luo raportteja kyselemällä taulukoihin tallennettuja jäljitystietoja. Luo näkymiä, jotka kokoavat tapahtumia ajanjakson, käyttäjän tai sovelluksen mukaan. Rakenna raportointiratkaisuja, jotka tarjoavat säännöllisiä tietoja tietokannan toiminnasta ja suorituskyvystä.

9. SQL Server Profilerin parhaat käytännöt

9.1 Suorituskyvyn parhaat käytännöt

9.1.1 Jäljityskustannusten minimointi

Valitse vain välttämättömät tapahtumat jäljitystyön vähentämiseksi. Jokainen lisätapahtumatyyppi lisää jäljitysmoottorin käsiteltävän datan määrää. Tarkista valvonnan tavoitteesi ja sisällytä mukaan vain näihin tavoitteisiin suoraan liittyviä tapahtumia.

Käytä suodattimia tehokkaasti estääksesi epäolennaisen tiedon kaappaamisen. Suodata TietokannanNimen mukaan sulkeaksesi pois järjestelmätietokannat. Suodata Keston mukaan tallentaaksesi vain hitaat kyselyt. Suodata SovelluksenNimen mukaan keskittyäksesi tiettyihin sovelluksiin. Asianmukainen suodatus vähentää merkittävästi jäljityskustannuksia.

Palvelinpuolen ja asiakaspuolen väliset näkökohdat vaikuttavat suorituskykyyn. Palvelinpuolen jäljitykset kirjoittavat tiedot suoraan levylle minimaalisella lisäkuormalla. Asiakaspuolen jäljitykset lähettävät tapahtumia verkon kautta Profiler-käyttöliittymään, mikä lisää viivettä ja kaistanleveyden kulutusta. Käytä palvelinpuolen jäljityksiä tuotannon valvontaan.

9.1.2 Jäljitysten tallennuksen optimointi

Tiedostokoon hallinta estää levytilan loppumisen. Aseta tiedostojen enimmäiskoot käytettävissä olevan tallennustilan mukaan. Ota käyttöön tiedostojen siirto, jotta voit luoda useita tiedostoja sen sijaan, että yksi tiedosto kasvaisi loputtomiin. Valvo levytilaa jäljityksen suorituksen aikana.

Taulukko- ja tiedostotallennuksen välillä on erilaisia ​​suorituskykykompromisseja. Tiedostotallennus tarjoaa paremman suorituskyvyn jäljityksen suorituksen aikana, koska se ohittaa tallennusmoottorin. Taulukkotallennus mahdollistaa T-SQL-kyselyt jäljitysdataa vastaan, mutta lisää kirjoituskustannuksia. Valitse tallennustyyppi analyysivaatimustesi perusteella.

9.2 Tietoturvan parhaat käytännöt

Käyttöoikeuksien hallinta määrittää, kuka voi luoda ja suorittaa jäljityksiä. Myönnä ALTER TRACE -käyttöoikeus vain luotettaville käyttäjille, jotka tarvitsevat jäljitysominaisuuksia. Järjestelmänvalvojan roolin jäsenillä on rajoittamaton jäljityskäyttöoikeus. Tarkista ja auditoi jäljitysoikeuksia säännöllisesti.

Arkaluonteisten tietojen suojaus vaatii huolellista jäljitysten konfigurointia. Vältä koko kyselytekstin tallentamista työskennellessäsi arkaluonteisten tietojen kanssa. Harkitse luottamuksellisia tietoja sisältävän jäljitystulosteen suodattamista tai salaamista. Säilytä jäljitystiedostoja turvallisissa paikoissa, joissa on asianmukaiset käyttöoikeudet.

Jäljitystiedostojen suojaus estää luvattoman pääsyn tallennettuihin tietoihin. Määritä tiedostojen käyttöoikeudet rajoittaaksesi jäljitystiedostojen käyttöä. Salaa jäljitystiedostot, jos ne sisältävät arkaluonteisia tietoja. Poista jäljitystiedostot analyysin valmistuttua altistumisriskin minimoimiseksi.

9.3 Tuotantoympäristön huomioon ottaminen

9.3.1 Milloin Profileria käytetään tuotannossa

Riskienarviointi määrittää, milloin SQL Server Profiler sopii tuotantokäyttöön. Profiler tuo mukanaan mitattavia lisäkustannuksia, jotka kasvavat jäljityksen laajuuden myötä. Arvioi, onko diagnoosiostic-arvo oikeuttaa suorituskykyvaikutuksen ennen tuotantojäljitysten suorittamista.

Minimalistisen vaikutuksen omaavat kokoonpanot mahdollistavat turvallisemman tuotannon jäljityksen. Käytä erittäin valikoivia suodattimia tallentaaksesi vain kriittiset tapahtumat. Aseta kestokynnykset ohittaaksesi nopeasti suoritettavat kyselyt. Rajoita jäljityksen kesto lyhyisiin ajanjaksoihin vianmääritysistuntojen aikana. Määritä palvelinpuolen jäljitykset vähentääksesi asiakasohjelman kuormitusta.

9.3.2 Vaihtoehtoja tuotannon seurannalle

Extended Events -teknologia vähentää tuotannon valvonnan kuluja. Tämä moderni teknologia tarjoaa parempaa suorituskykyä ja joustavuutta kuin muut vastaavat. SQL Server Profiler. Siirrä valvontaratkaisut Extended Events -ympäristöön pitkäaikaista tuotantokäyttöä varten.

Kyselysäilö tallentaa kyselyiden suorituskykytiedot automaattisesti ilman manuaalista jäljityksen määritystä. Ota kyselysäilö käyttöön tuotantotietokannoissa seurataksesi kyselyjen suoritustilastoja ajan kuluessa. Kyselysäilö tarjoaa mm.ost suorituskyvyn seurantaominaisuudet ilman jäljityksen aiheuttamaa lisärasitusta.

Dynaamiset hallintanäkymät tarjoavat kevyttä valvontaa tiettyihin skenaarioihin. DMV:t tarjoavat nykyisen tilatiedon ilman historiallisten tapahtumien tallentamista. Voit tehdä DMV:ille kyselyjä säännöllisesti palvelimen kunnon valvomiseksi ilman jatkuvan jäljityksen aiheuttamaa lisärasitusta.

9.4 Jäljityksen hallinnan parhaat käytännöt

Nimeämiskäytännöt varmistavat jäljitystiedostojen tunnistettavuuden ja järjestelyn. Sisällytä jäljitystiedostojen nimiin päivämäärä, aika, palvelimen nimi ja tarkoitus. Käytä yhdenmukaisia ​​nimeämismalleja kaikissa jäljityksissä hallinnan ja analysoinnin helpottamiseksi.

Dokumentaatio tallentaa jäljityksen kokoonpanon ja tarkoituksen. Dokumentoi tallentamasi tapahtumat, jäljityksen luomisen syyn ja analyysin tulokset. Pidä lokia tuotantojärjestelmissä ajetuista jäljityksistä vaatimustenmukaisuuden ja vianmäärityksen varmistamiseksi.

Säilytyskäytännöt estävät jäljitystiedostojen liiallisen kertymisen. Määritä, kuinka kauan jäljitystiedostoja tulisi säilyttää liiketoiminnan vaatimusten ja tallennuskapasiteetin perusteella. Automatisoi vanhojen jäljitystiedostojen poistaminen levytilan vapauttamiseksi. Arkistoi tärkeät jäljet ​​pitkäaikaiseen tallennustilaan ennen poistamista.

9.5 yleistä vältettävää virhettä

Ylikierrätys aiheuttaa liiallista suorituskykykuormitusta ja tuottaa hallitsemattomia tietomääriä. Vältä kaikkien tapahtumien tallentamista ilman suodattimia.tarKäytä kapeita, kohdennettuja jälkiä ja laajenna soveltamisalaa vain tarvittaessa. Enemmän dataa ei aina ole parempi vaihtoehto tehokkaan vianmäärityksen kannalta.

Jäljitysten pysäyttämisen unohtaminen tuhlaa resursseja ja täyttää levytilaa. Pysäytä jäljitykset aina, kun valvonta on valmis. Aseta jäljityksen keston rajoitukset tai tiedostojen enimmäiskoot estääksesi jäljitysten karkaamisen. Valvo käynnissä olevia jäljityksiä säännöllisesti ja pysäytä passiiviset tai tarpeettomat jäljitykset.

Suodatinoptimoinnin huomiotta jättäminen johtaa heikkoon suorituskykyyn ja vaikeaan analyysiin. Käytä aikaa tehokkaiden suodattimien määrittämiseen ennen käyttöä.tarjälkien analysointi. Testaa suodattimia kehitysympäristöissä varmistaaksesi, että ne tallentavat odotettua dataa. Tarkista ja tarkenna suodattimia tallennettujen tulosten perusteella.

10. Vaihtoehtoja SQL Server Profiloija vuonna 2025

10.1 Laajennetut tapahtumat: Nykyaikainen korvaaja

10.1.1 Mitä ovat laajennetut tapahtumat

Laajennetut tapahtumat edustavat SQL Servern moderni tapahtumienkäsittelyarkkitehtuuri. Microsoft suunnitteli tämän järjestelmän erityisesti vastaamaan SQL Server Profilerin rajoitukset, kuten suorituskyvyn lisäkustannukset ja konfiguroinnin joustavuus. Extended Events tarjoaa kattavat valvontaominaisuudet huomattavasti pienemmällä resurssien kulutuksella.

Arkkitehtuuri ja hyödyt erottavat Extended Eventsin vanhemmista jäljitysteknologioista. Tapahtumamoottori integroituu syvästi SQL Servern ydinarkkitehtuuri, joka tallentaa tapahtumia minimaalisella lisäkululla. Asynkroninen tapahtumapuskurointi estää valvontaa estämästä tietokannan toimintoja. Joustava tarLähtöasetukset mahdollistavat monipuoliset lähtöasetukset.

Suorituskykyedut tekevät Extended Events -toiminnosta ihanteellisen ratkaisun tuotannon valvontaan. Vertailuarvot osoittavat, että Extended Events -toiminnot vähentävät 50–90 % yleiskustannuksia verrattuna vastaaviin toimintoihin. SQL Server Profilointijäljitykset. Arkkitehtuuri skaalautuu paremmin suurilla tapahtumamäärillä ja tukee useampia samanaikaisia ​​valvontaistuntoja.

10.1.2 Siirtyminen Profilerista Extended Eventsiin

Tapahtumakartoitus kääntää SQL Server Profiler-tapahtumien muuttaminen laajennettujen tapahtumien vastineiksi. Most Profiler-tapahtumilla on vastaavat laajennettujen tapahtumien vastineet. Microsoft tarjoaa dokumentaatiota, joka yhdistää näiden kahden järjestelmän yhteiset tapahtumat.

Istunnon luominen Extended Eventsissä vaatii uuden syntaksin ja käsitteiden opettelua. Määritä tapahtumaistunnot T-SQL:n CREATE EVENT SESSION -lausekkeilla tai Management Studion Extended Events -graafisella käyttöliittymällä. Istunnot määrittävät, mitkä tapahtumat tallennetaan, mitä tietoja kerätään ja minne tulokset tallennetaan.

10.1.3 Laajennetut tapahtumatyökalut ja käyttöliittymät

SSMS:n laajennettujen tapahtumien käyttöliittymä tarjoaa graafisen istuntojen hallinnan. Voit käyttää laajennettuja tapahtumia Object Explorerin hallintakansion kautta. Voit luoda, muokata ja valvoa tapahtumaistuntoja käyttöliittymän kautta. Voit tarkastella tallennettuja tietoja graafisissa muodoissa, kuten ruudukoissa ja kaavioissa.

T-SQL-istuntohallinta mahdollistaa ohjelmallisen laajennettujen tapahtumien hallinnan. Kirjoita CREATE EVENT SESSION -lausekkeita istuntojen määrittämiseksi koodissa. Käytä ALTER EVENT SESSION -lausetta käynnissä olevien istuntojen muokkaamiseen. Poista istunnot DROP EVENT SESSION -lausekkeella. Tämä lähestymistapa mahdollistaa automatisoidut valvontaratkaisut.

10.2 SQL Server Kyselykauppa

Kyselysäilö tallentaa kyselyiden suorituskykytiedot automaattisesti tietokannoista, joissa se on käytössä. Tämä ominaisuus seuraa kyselysuunnitelmia, suoritustilastoja ja suorituskykymittareita ajan kuluessa ilman manuaalista jäljityksen määritystä. Kyselysäilö ylläpitää historiatietoja, jotka mahdollistavat trendianalyysin ja regressioiden havaitsemisen.

Reaaliaikainen kyselyiden suorituskyvyn valvonta kyselysäilön kautta paljastaa järjestelmän nykyisen toiminnan. Tarkastele äskettäin suoritettuja kyselyitä, niiden suoritussuunnitelmia ja resurssien kulutusta. Tunnista kyselyt, joiden kesto on kasvamassa tai suoritussuunnitelmat muuttuvat ja jotka saattavat viitata ongelmiin.

Historiallinen kyselyanalyysi mahdollistaa vertailun eri ajanjaksojen välillä. Kyselysäilö säilyttää suorituskykytietoja konfiguroitavien säilytysjaksojen ajan. Vertaa nykyistä suorituskykyä historiallisiin vertailutasoihin regressioiden tunnistamiseksi. Analysoi suorituskyvyn trendejä tulevien kapasiteettitarpeiden ennustamiseksi.

Käytä Query Storea, kun tarvitset automaattista, aina päällä olevaa suorituskyvyn valvontaa. Ota Query Store käyttöön tuotantotietokannoissa seurataksesi kyselyjen toimintaa jatkuvasti. Query Store täydentää jäljitykseen perustuvaa vianmääritystä tarjoamalla historiallista kontekstia suorituskykyongelmille.

10.3 Dynaamiset hallintanäkymät (DMV)

Kevyt ajoneuvohallintojärjestelmien (DMV) valvonta tarjoaa ajankohtaista tilaa koskevaa tietoa ilman historiallisten tapahtumien tallentamista. Ajoneuvohallintojärjestelmät paljastavat sisäisiä riskejä. SQL Server tilastoja ja metatietoja kyselynä toimivien näkymien kautta. Kysele DMV-tietoja käyttämällä T-SQL:n vakiomuotoisia SELECT-lausekkeita.

Yleisiä suorituskyvyn valvontaan tarkoitettuja DMV-kyselyitä ovat sys.dm_exec_query_stats kyselyn suorituskykytilastoja varten, sys.dm_exec_requests parhaillaan suoritettavia pyyntöjä varten ja sys.dm_os_wait_stats odotustilastoja varten. Nämä näkymät tarjoavat ajankohtaisia ​​tietoja palvelimen kunnosta ja toiminnasta.

DMV:t täydentävät jäljitystietoihin perustuvaa valvontaa tarjoamalla reaaliaikaisia ​​mittareita. Käytä DMV:itä nopeisiin kuntotarkastuksiin ja nykytilan analysointiin. Yhdistä DMV-kyselyt jäljitystietoihin kattavia vianmääritysmenetelmiä varten.

10.4 Kolmannen osapuolen valvontatyökalut

Kaupalliset vaihtoehdot tarjoavat parannettuja valvontaominaisuuksia SQL Serversisäänrakennetut työkalut. SolarWindsin, Redgaten ja Questin kaltaisten toimittajien tuotteet tarjoavat kattavia valvonta-, hälytys- ja analysointiominaisuuksia. Nämä työkalut yhdistävät usein useita tietolähteitä, kuten jäljityksiä, ajoneuvoverkoissa käytettäviä ajoneuvoja ja suorituskykylaskureita.

Ominaisuuksien vertailu paljastaa eri valvontamenetelmien vahvuudet. Kolmannen osapuolen työkalut tarjoavat erinomaiset käyttöliittymät, automatisoidut hälytykset ja historialliset trendit. SQL Serversisäänrakennetut työkalut eivät tarjoa mitään lisätoimintojaost ja syvempää integraatiota. Arvioi työkaluja omien tarpeidesi ja budjettisi perusteella.

10.5 Oikean työkalun valitseminen tarpeisiisi

Päätösmatriisi auttaa valitsemaan sopivat valvontatyökalut. Tilapäistä vianmääritystä varten SQL Server Profiler pysyy saatavilla ja tehokkaana. Tuotannon valvontaan Extended Events tai Query Store tarjoavat paremman suorituskyvyn. Kattavaan yritystason valvontaan kolmannen osapuolen ratkaisut tarjoavat most ominaisuuksia.

Työkalujen valintakriteereihin kuuluvat suorituskykyyn liittyvät kustannukset, helppokäyttöisyys, tiedon säilytysvaatimukset ja budjettirajoitukset. Ota huomioon tiimisi asiantuntemus työkaluja valittaessa. Tutut työkalut mahdollistavat nopeamman vianmäärityksen, vaikka uudemmat vaihtoehdot tarjoaisivat parempia ominaisuuksia.

Yhdistä useita työkaluja kattavien valvontastrategioiden luomiseksi. Käytä kyselysäilöä jatkuvaan suorituskyvyn seurantaan, laajennettuja tapahtumia tiettyjen ongelmien tutkimiseen ja datavihjeitä reaaliaikaisiin kuntotarkastuksiin. Tämä kerrostettu lähestymistapa tarjoaa vankan valvonnan ilman liiallista lisäkuormitusta.

11. Vianmääritys SQL Server Profilointiongelmat

11.1 Yleisiä yhteysongelmia

Todennusvirheet estävät SQL Server Profilointilaite muodostaa yhteyden kohteeseen tarhae palvelimia. Varmista, että käytät oikeita tunnistetietoja valitulle todennusmenetelmälle. Windows-todennus edellyttää, että Windows-tililläsi on asianmukaiset tunnistetiedot. SQL Server käyttöoikeudet. SQL Server Todennus edellyttää voimassa olevia SQL-kirjautumistietoja.

Verkkoyhteysongelmat ilmenevät aikakatkaisuvirheinä tai yhteyskatkoksina. SQL Server sallii etäyhteydet asetuksissaan. Tarkista, että palomuurin asetukset sallivat liikenteen SQL Server's-portti. Testaa perusyhteydet ping- ja telnet-komennoilla ennen Profiler-kohtaisten ongelmien vianmääritystä.

11.2 Profilerin suorituskykyongelmat

Hidas jäljityksen suoritus osoittaa liiallista kuormitusta jäljityskonfiguraatiosta. Tarkista valitut tapahtumat ja poista tarpeettomat. Lisää suodattimia vähentääksesi tallennettujen tapahtumien määrää. Harkitse palvelinpuolen jäljitysten käyttöä asiakaspuolen prosessointikuormituksen vähentämiseksi.

Korkea resurssien kulutus vaikuttaa molempiin SQL Server ja Profiler-asiakasohjelma. Valvo palvelimen suorittimen ja muistin määrää jäljityksen suorittamisen aikana. Jos palvelimen resurssit ovat rajalliset, lisää suodattimen valikoivuutta tai lyhennä sieppauksen kestoa. Asiakasresurssien ongelmat edellyttävät muiden sovellusten sulkemista tai asiakaslaitteiston päivittämistä.

11.3 Jäljitystiedostojen ja -taulukoiden ongelmat

Vioittuneet jäljitystiedostot estävät avaamisen SQL Server Profiler. Vioittuminen johtuu tyypillisesti virheellisestä jäljityksen lopettamisesta tai levyvirheistä. Kokeile avata tiedosto tekstieditorissa varmistaaksesi, ettei se ole täysin vioittunut. Joskus osittaiset tiedot voidaan palauttaa tuomalla ne taulukkoon käyttämällä fn_trace_gettable-metodia.

Taulukon käyttöongelmia ilmenee, kun jäljityksiä yritetään ladata taulukosta SQL Server taulukot. Varmista, että sinulla on SELECT-käyttöoikeus jäljitystaulukkoon. Tarkista, ettei taulukkoa ole poistettu tai nimetty uudelleen. Varmista, että muodostat yhteyden oikeaan palvelimeen ja tietokantaan, joka sisältää jäljitystaulukon.

11.4 Puuttuvat tapahtumat tai puutteelliset tiedot

Suodattimen virheellinen määritys aiheuttaa sen, että jäljitykset eivät havaitse odotettuja tapahtumia. Tarkista suodatinkriteerit huolellisesti varmistaaksesi, etteivät ne sulje pois haluttuja tapahtumia. Testaa suodattimia ajamalla lyhyitä jäljityksiä ja varmistamalla, että kerätyt tiedot vastaavat odotuksia. Poista suodattimet ajamalla lyhyitä jäljityksiä.rarselvittääkseen, aiheuttavatko ne ongelman.

Puskurin ylivuoto tapahtuu, kun SQL Server ei pysty kirjoittamaan jäljitysdataa riittävän nopeasti pysyäkseen tapahtumien luomisen tahdissa. Tämä tapahtuu tyypillisesti suodattamattomien jäljitysten kanssa suuren aktiivisuuden aikana. Oireita ovat puuttuvat tapahtumat tai "Tapahtumia ei tallennettu" -varoitukset. Ratkaise ongelma lisäämällä suodattimia tapahtumien määrän vähentämiseksi tai parantamalla jäljitystiedoston sijainnin levyn I/O-suorituskykyä.

11.5 Profilerin kaatumiset ja virheet

Yleisiä virheilmoituksia ovat ”Jäljitystä ei voitu luoda”, joka viittaa käyttöoikeusongelmiin tai resurssirajoituksiin. ”Jäljitys pysäytettiin” -ilmoitukset viittaavat palvelinpuolen jäljitysvirheisiin, jotka mahdollisesti johtuvat levyn täyttymisestä. ”Virheellinen jäljitysmääritys” -virheet viittaavat kokoonpano-ongelmiin.

Ratkaisustrategiat riippuvat virheestä. Käyttöoikeusvirheet edellyttävät käyttäjälle ALTER TRACE -oikeuden myöntämistä. Resurssivirheet edellyttävät levytilan tai muistin vapauttamista. Kokoonpanovirheet edellyttävät jäljitysasetusten tarkistamista ja korjaamista. Ratkaisutart SQL Server Profiler, jos se lakkaa reagoimasta.

12. Käytännöllinen SQL Server Profilointiskenaariot ja esimerkit

12.1 Skenaario 1: Tietokannan hitaimpien kyselyiden tunnistaminen

Tämä ohje havainnollistaa hitaiden kyselyiden tallentamista ja analysointia.

Määritä jäljitys seuraavasti:

  1. Käynnistää SQL Server Profiloija ja yhdistä omaan tarhanki palvelin.
  2. Napauta filee -> Uusi jälki.
  3. Kirjoita kohtaan ”Hidas kyselyanalyysi” Jäljityksen nimi ala.
  4. valita TSQL mistä Käytä mallia pudotusvalikosta.
  5. Napauta Tapahtumien valinta Tab.
  6. Napauta Sarakesuodattimet.
  7. valita Kesto ja syötä sisään 1000000 Suurempi tai yhtä suuri.
  8. valita Tietokannan nimi ja syötä tietokantasi nimi Pitää.
  9. Napauta OK sulkeaksesi suodattimet.
  10. Enable Tallenna tiedostoon ja määritä tiedostopolku.
  11. Napauta ajaa start kaappaaminen.

Suorita jäljitys ruuhka-aikoina vähintään 30 minuutin ajan edustavan työmäärän keräämiseksi. Pysäytä jäljitys, kun tietoja on kerätty riittävästi.

Analysoi tuloksia tämän prosessin jälkeen:

  1. Valitse Kesto sarakeotsikko lajitteluun suoritusajan mukaan.
  2. Tunnista 10 pisimpään käynnissä ollutta kyselyä.
  3. Tutki jokaisen kyselyn kohdalla Tekstitiedot sarake.
  4. Kopioi kyselyteksti ja liitä se Management Studioon.
  5. Käyttää Näytä arvioitu toteutussuunnitelma analysoimaan kyselyä.
  6. Etsi taulukoiden skannauksia, puuttuvia indeksejä tai tehottomia liitoksia.
  7. Arvostelu prosessori, lukeeja kirjoittaa resurssien kulutusmallien sarakkeet.

12.2 Skenaario 2: Lukkiutumisongelman virheenkorjaus

Tämä esimerkki näyttää, miten lukkiutumiset voidaan tallentaa ja analysoida.

Määritä lukkiutumisten valvonta seuraavasti:

  1. Luo uusi jäljitys nimeltä ”Deadlocked Investigation”.
  2. Napauta Tapahtumien valinta Tab.
  3. Napauta Näytä kaikki tapahtumat.
  4. Laajentaa Lukot luokka.
  5. valita Lukko: Lukkiutumiskohta.
  6. valita Lukko: Lukitusketju.
  7. Laajentaa Virheet ja varoitukset luokka.
  8. valita Estetty prosessi -raportti.
  9. Varmistaa Tekstitiedot sarake on valittu.
  10. Napauta ajaa start-seuranta.

Kun jäljityksen suorituksen aikana tapahtuu lukkiutumistilanne, jäljitysruudukkoon ilmestyy Lukitus:Lukkiutumistilanne-tapahtuma.

Tulkitse lukkiutumistietoja seuraavasti:

  1. Valitse Lukko: Lukkiutumiskohta tapahtumarivi.
  2. Näytä Tekstitiedot sarake alapaneelissa.
  3. Kopioi XML-sisältö TextDatasta.
  4. Avaa Management Studio ja luo uusi kyselyikkuna.
  5. Liitä XML kyselyikkunaan.
  6. Tallenna tiedosto .xdl-tiedostopäätteellä.
  7. Avaa .xdl-tiedosto Management Studiossa nähdäksesi lukkiutumiskaavion.
  8. Kaavio näyttää mukana olevat prosessit, lukitut resurssit ja valitun uhrin.
  9. Tarkista molempien prosessien kyselyt ymmärtääksesi ristiriidan.

Ratkaisuvaiheisiin kuuluu tyypillisesti sovelluskoodin toimintojen uudelleenjärjestely resurssien käyttämiseksi yhdenmukaisessa järjestyksessä, transaktioiden laajuuden pienentäminen tai asianmukaisten lukitusvihjeiden toteuttaminen.

12.3 Skenaario 3: Kaikkien tietyn sovelluksen kyselyiden seuranta

Tämä skenaario esittelee sovelluskohtaista kyselyiden valvontaa.

Määritä sovelluskohtainen jäljitys seuraavasti:

  1. Luo uusi jäljitys nimeltä ”Sovelluskyselyn seuranta”.
  2. Valitse Standard sapluuna.
  3. Napauta Tapahtumien valinta Tab.
  4. Napauta Sarakesuodattimet.
  5. valita Sovelluksen nimi.
  6. Kirjoita sovelluksesi nimi kohtaan Pitää ala.
  7. Jos sovelluksesi käyttää yhteyksien yhdistämistä, saatat tarvita jokerimerkkien yhdistämistä.
  8. Napauta OK suodattimen kiinnittämiseksi.
  9. Enable Tallenna taulukkoon helpomman kyselyn vuoksi.
  10. Napauta ajaa start kaappaaminen.

Kyselykuvioanalyysi paljastaa, miten sovelluksesi on vuorovaikutuksessa SQL Server:

  1. Kun olet kerännyt tiedot, lopeta jäljitys.
  2. Avaa Management Studio ja muodosta yhteys palvelimeen jäljitystaulukon avulla.
  3. Kysele jäljitystaulukkoa analysoidaksesi kaavoja.
  4. Laske kyselyt tyypin mukaan nähdäksesi toimintojen yhdistelmän.
  5. Tunnista most usein suoritetut kyselyt.
  6. Etsi kyselyitä, jotka voidaan tallentaa välimuistiin tai optimoida.
  7. Tarkista toistuvien identtisten kyselyiden varalta, jotka viittaavat puuttuvaan yhteyspooliin.

12.4 Skenaario 4: Tietojen saatavuuden auditointi vaatimustenmukaisuuden varmistamiseksi

Tämä esimerkki havainnollistaa tietoturvalokipolun luomista.

Määritä suojaustarkastukset seuraavasti:

  1. Luo uusi jäljitys nimeltä ”Turvallisuustarkastuspolku”.
  2. Napauta Tapahtumien valinta Tab.
  3. Napauta Näytä kaikki tapahtumat.
  4. Laajentaa Security Audit luokka.
  5. valita Audit-kirjautuminen, Uloskirjautuminen auditoinnista, Kirjautuminen auditointiin epäonnistui.
  6. valita Tietokannan objektien käyttöoikeuksien tarkastus.
  7. Laajentaa TSQL luokka.
  8. valita SQL:BatchCompleted.
  9. Napauta Sarakesuodattimet.
  10. suodata ObjectName tiettyjen arkaluonteisten taulukoiden valvomiseksi.
  11. Enable Tallenna taulukkoon pitkäaikaista säilytystä varten.
  12. Ota käyttöön palvelimen puolen jäljitys valvomatonta toimintaa varten.
  13. Napauta ajaa start-auditointi.

Luo tarkastusraportteja kyselemällä jäljitystaulukkoa:

  1. Luo kyselyitä, jotka yhteenvetävät käyttöoikeudet käyttäjän ja ajanjakson mukaan.
  2. Tunnista epätavalliset käyttötavat tai toiminta aukioloaikojen ulkopuolella.
  3. Dokumentin epäonnistuneet kirjautumisyritykset tietoturvatarkistusta varten.
  4. Vie auditointitiedot raportointijärjestelmiin vaatimustenmukaisuuden dokumentointia varten.
  5. Arkistoi suoritetut auditointijäljet ​​säilytyskäytäntöjen mukaisesti.

12.5 Skenaario 5: Työkuorman tallentaminen suorituskykytestausta varten

Tämä skenaario esittelee työkuormituksen tallentamista testaustarkoituksiin.

Luo toistovalmiita jälkiä seuraavasti:

  1. Luo uusi jäljitys nimeltä ”Työkuorman kaappaus”.
  2. valita TSQL_toisto mallipohjan alasvetovalikosta.
  3. Tämä mallipohja sisältää kaikki vaaditut tapahtumat ja sarakkeet toistoa varten.
  4. Napauta Tapahtumien valinta Tab.
  5. Käytä suodattimia, jos haluat tallentaa tiettyjä työkuormasegmenttejä.
  6. Enable Tallenna tiedostoon.
  7. Määritä tiedostopolku, jossa on riittävästi levytilaa.
  8. Aseta sopivat tiedostokokorajoitukset ja ota käyttöön rollover.
  9. Napauta ajaa start kaappaaminen.

Tallennus edustavien liiketoimintatoimintojen aikana. Kattavan työmäärän tallentamiseksi suorita jäljitys useiden tuntien ajan eri toimintamallien kattamiseksi. Lopeta jäljitys kerättyäsi riittävästi tietoa.

Työmääräanalyysi paljastaa järjestelmän toimintamallit:

  1. Avaa kaapattu jäljitystiedosto kohdassa SQL Server Profileri.
  2. Tarkista tapahtumien jakautuminen tyypin ja ajan mukaan.
  3. Laske yhteenlasketut resurssien kulutusmittarit.
  4. Tunnista huipputoiminnan jaksot ja resurssien pullonkaulat.
  5. Käytä jäljitystä Database Engine Tuning Advisor -analyysiin.
  6. Toista jäljitys testijärjestelmiä vasten muutosten validoimiseksi.

13. Tietokannan vioittumisen havaitseminen SQL Server Profiler

13.1 Käyttö SQL Server Korruption varhaisten varoitusmerkkien profilointi

Tietokannan vioittuminen on yksi most vakavia uhkia tietojen eheydelle ja järjestelmän luotettavuudelle. Vaikka SQL Server Profiler ei ole erillinen korruptiontunnistustyökalu, vaan se pystyy havaitsemaan kriittisiä varoitusmerkkejä, jotka viittaavat mahdollisiin korruptio-ongelmiin, jotka vaativat välitöntä tutkintaa.

13.2 Kriittiset virhetapahtumat, jotka viittaavat mahdolliseen korruptioon

  • Vakavuusasteen 24 virheet (823, 824, 825): Laitteisto- ja tallennusvälineviat.
  • Virhe 605: Epäonnistuneet sivunhakuyritykset
  • Virhe 8928 ja 8929: Objektin vioittuminen

13.3 Epäilyttävät tietokannan käyttäytymismallit ja varoitusmallit

  • Toistuvat kyselyn aikakatkaisut tietyissä objekteissa
  • Käyttöoikeusrikkomukset ja sovellusten kaatumiset
  • Epätavallinen virheklusterointi

13.4 DBCC CHECKDB:n suorittaminen profilointitulosten perusteella

If SQL Server Jos profilointityökalu löytää epäilyttäviä vioittumia, voit käyttää DBCC CHECKDB:tä tietokannan täydelliseen tarkistukseen. Suorita sitten korjaus, jos vioittuminen vahvistetaan. Olemme kirjoittaneet kattava opas näiden tehtävien suorittamiseen.

Jos DBCC CHECKDB ei korjaa tietokantaa, vioittumiset ovat vakavia. Tällaisessa tapauksessa voit turvautua toimintoon kolmannen osapuolen SQL-palautustyökalu.

14. UKK

K: On SQL Server Profilointia tuetaan edelleen SQL Server 2022?

A: Kyllä, SQL Server Profiler on edelleen mukana SQL Server 2022 ja SQL Server Management Studio, vaikka se onkin vanhentunut vuodesta SQL Server 2016. Microsoft jatkaa työkalun toimittamista nykyisissä versioissa, mutta suosittelee siirtymistä laajennettuihin tapahtumiin uusien valvontatoteutusten yhteydessä. Työkalu on edelleen toiminnassa ja sitä käytetään laajalti vianmäärityksessä ja ad-hoc-analyyseissä.

K: Mitä eroa on SQL Server Profiler ja SQL-jäljitys?

A: SQL Server Profiler on graafinen käyttöliittymätyökalu, joka muodostaa yhteyden SQL-jäljitysmoottoriin, joka toimii SQL ServerSQL-jäljitys on taustalla oleva teknologia, joka itse asiassa tallentaa tapahtumia. Voit luoda jälkiä Profilerin käyttöliittymän avulla tai suoraan T-SQL:n tallennettujen proseduurien, kuten sp_trace_create, kautta. Profiler tarjoaa helpomman konfiguroinnin, kun taas T-SQL-jäljitykset tarjoavat enemmän automatisointimahdollisuuksia.

K: Kuinka paljon suorituskykyyn liittyvät lisäkustannukset aiheuttavat SQL Server Profiloija lisätty?

A: Suorituskyvyn vaikutus vaihtelee jäljityskokoonpanon mukaan. Hyvin suodatettu jäljitys, joka tallentaa vain tiettyjä tapahtumia, voi lisätä 1–5 %:n kustannuksia. Huonosti konfiguroidut jäljitykset ilman suodattimia voivat lisätä 20–50 %:n tai enemmän kustannuksia, erityisesti kiireisissä järjestelmissä. Palvelinpuolen jäljityksillä on pienempi vaikutus kuin asiakaspuolen jäljityksillä. Käytä aina suodattimia tapahtumien määrän minimoimiseksi ja testaa jäljitykset ensin ei-tuotantoympäristöissä.

K: Voinko juosta SQL Server Profiler tuotantopalvelimilla?

V: Voit juosta SQL Server Käytä profilointityökalua tuotantopalvelimilla, mutta ole varovainen. Käytä erittäin valikoivia suodattimia, rajoita jäljityksen kestoa ja suosi palvelinpuolen jäljityksiä vaikutusten minimoimiseksi. Suorita tuotantojäljityksiä vähäisen aktiivisuuden aikoina, kun mahdollista. Jatkuvan tuotannon valvonnan kannalta harkitse laajennettuja tapahtumia tai kyselytallennusta, koska ne tarjoavat pienemmän yleiskulun.

K: Mitä käyttöoikeuksia tarvitsen SQL Server Profiloija?

A: Tarvitset ALTER TRACE -oikeuden jäljitysten luomiseen ja suorittamiseen. Järjestelmänvalvojan kiinteän palvelimen roolin jäsenillä on tämä oikeus automaattisesti. Muille kuin järjestelmänvalvojille on myönnettävä ALTER TRACE -oikeus erikseen. Lisäksi tarvitset asianmukaiset oikeudet jäljitystietojen tallentamiseen tiedostoihin tai taulukoihin kokoonpanosi perusteella.

K: Miksi en näe kaikkia tapahtumia jäljityksessäni?

A: Puuttuvat tapahtumat johtuvat yleensä liian rajoittavista suodattimista tai puskurin ylivuodosta. Tarkista suodattimen määritykset varmistaaksesi, ettei se sulje pois haluttuja tapahtumia. Puskurin ylivuoto tapahtuu, kun SQL Server Tapahtumien kirjoittaminen ei onnistu riittävän nopeasti, yleensä kiireisissä järjestelmissä jälkien tallennus onnistuu suodattamattomina. Lisää suodattimia tapahtumien määrän vähentämiseksi tai levyn I/O-suorituskyvyn parantamiseksi. Tarkista virheilmoitukset, jotka osoittavat, ettei tapahtumia tallennettu.

K: Miten voin tallentaa lukkiutumistiedot sovelluksella SQL Server Profiloija?

A: Luo jäljitys, joka sisältää Lukitus:Lukitus- ja Lukitus:Lukitusketju-tapahtumat Lukitukset-kategoriasta. Varmista, että TextData-sarake on valittuna, koska se sisältää lukkiutumiskaavion XML-tiedoston. Kun lukkiutuminen tapahtuu, kopioi TextData-sarakkeen XML-tiedosto, tallenna se .xdl-tiedostotunnisteella ja avaa se SQL Server Management Studio nähdäksesi graafisen lukkiutumiskaavion.

K: Mitä eroa on jäljitysten tallentamisessa tiedostoihin ja taulukoihin?

A: Tiedostot tarjoavat paremman suorituskyvyn jäljityksen suorittamisen aikana, koska ne ohittavat SQL Server Tallennusmoottori. Tiedostojen jäljitykset kirjoittavat tiedot suoraan levylle minimaalisella työmäärällä. Taulukoiden jäljitykset kirjoittavat tallennusmoottorin kautta, mikä lisää työmäärää, mutta mahdollistaa välittömät T-SQL-kyselyt jäljitystietoja vastaan. Käytä tiedostoja suorituskykyherkissä tilanteissa ja taulukoita, kun sinun on kyseltävä tietoja välittömästi sieppauksen aikana tai sen jälkeen.

K: Voinko automatisoida SQL Server Profilointijälkien kerääminen?

A: Kyllä, automatisoi jäljitysten kerääminen käyttämällä palvelinpuolen jäljityksiä, jotka on luotu T-SQL:n tallennetuilla proseduureilla. Kirjoita komentosarjat käyttämällä sp_trace_create-toimintoa ja siihen liittyviä proseduureja, ja ajoita ne sitten SQL Server Agenttityöt. Tämä lähestymistapa mahdollistaa valvomattoman jäljitysten keräämisen tietyin aikatauluin. PowerShell-skriptit tarjoavat toisen automatisointivaihtoehdon monimutkaisempiin skenaarioihin.

K: Kuinka kauan jäljitystä pitäisi suorittaa?

A: Jäljityksen kesto riippuu tavoitteistasi. Tiettyjen ongelmien vianmäärityksessä suorita jäljityksiä ongelman toistamisen aikana, tyypillisesti 5–30 minuuttia. Suorituskykyanalyysiä varten kerää vähintään yksi tunti huippuaktiivisuusjaksojen aikana. Työkuorman analysointia tai kapasiteettisuunnittelua varten kerää useita tunteja eri ajanjaksoilta. Lopeta jäljitykset aina, kun valvonta on valmis, resurssien vapauttamiseksi.

K: Mitä minun pitäisi tehdä, jos jäljitystiedostoni kasvaa liian suureksi?

A: Ota tiedostojen siirrot käyttöön jäljitysominaisuuksissa luodaksesi useita pienempiä tiedostoja yhden suuren tiedoston sijaan. Aseta tiedoston enimmäiskoko levytilasi ja analyysitarpeidesi mukaan. Käytä suodattimia tallentaaksesi tapahtumien määrän. Suurten jäljitysten tapauksessa harkitse tietojen analysointia segmenteissä koko jäljityksen lataamisen sijaan kerralla. Arkistoi tai poista vanhoja jäljitystiedostoja säännöllisesti levytilan hallitsemiseksi.

K: Miten löydän kyselyt, jotka aiheuttavat paljon suorittimen käyttöä?

A: Luo jäljitys SQL:BatchCompleted- ja RPC:Completed-tapahtumilla. Sisällytä CPU-, Duration- ja TextData-sarakkeet. Suodata Duration-sarakkeen mukaan tallentaaksesi vain kyselyt, jotka ylittävät tietyn kynnysarvon, kuten 1000 millisekuntia. Kun olet kerännyt tiedot, lajittele ne CPU-sarakkeen mukaan laskevaan järjestykseen. Ylimmäiset kyselyt kuluttavat most prosessorin aikaa. Tutki näitä kyselyitä optimointimahdollisuuksien, kuten puuttuvien indeksien tai tehottoman logiikan, varalta.

K: Voiko SQL Server Profiler-kaappauskyselyn suoritussuunnitelmat?

A: SQL Server Profiler voi tallentaa suoritussuunnitelman tietoja Showplan XML -tapahtumien kautta Suorituskyky-luokassa. Valitse Showplan XML- tai Showplan XML Statistics Profile -tapahtumat tallentaaksesi täydelliset suoritussuunnitelmat. TextData-sarake sisältää XML-suunnitelmatiedot. Rutiinimaista suoritussuunnitelma-analyysia varten SQL Server Management Studion graafiset toteutussuunnitelmaominaisuudet tai kyselykauppa tarjoavat helpompia vaihtoehtoja.

K: Mikä on paras mallipohja s:lle?taryleistä seurantaa varten?

A: Vakiomalli tarjoaa hyväntarYleisen valvonnan lähtökohta. Se sisältää yleisiä kyselyjen suoritustapahtumia, tallennettujen proseduurien kutsuja ja virheiden seurannan tasapainotetulla lisäkuormalla. Käytä TSQL-mallia, jos haluat vähemmän vaikuttavaa valvontaa, joka keskittyy kyselyiden suorituskykyyn. Mukauta malleja tarpeidesi mukaan lisäämällä suodattimia ja säätämällä tapahtumavalintaa, kun olet ymmärtänyt perusteet.

K: Miten voin jäljittää vain tietyn sovelluksen tai käyttäjän?

A: Käytä sarakesuodattimia tiettyjen sovellusten tai käyttäjien eristämiseen. Sovellukset suodata ApplicationName-sarakkeen mukaan käyttämällä yhteysmerkkijonossa määritettyä nimeä. Käyttäjien osalta suodata LoginName-sarakkeen mukaan käyttämällä SQL Server kirjautumistunnus tai Windows-tilin nimi. Yhdistä useita suodattimia rajataksesi tarkennusta entisestään, kuten suodattamalla sekä ApplicationName- että DatabaseName-arvojen perusteella yhden sovelluksen toiminnan seuraamiseksi tietyssä tietokannassa.

15. Johtopäätös ja seuraavat vaiheet

15.1 keskeistä takeaways

SQL Server Profiler on edelleen arvokas työkalu ad-hoc-tietokantojen vianmääritykseen vanhentuneesta statuksestaan ​​huolimatta. Selkeä käyttöliittymä ja kattava tapahtumien tallennus tekevät siitä ihanteellisen nopeaan diagnosointiin.ostic-istuntoja, kun tarvitset välittömiä tuloksia. Käytä Profileria tiettyjen ongelmien vianmääritykseen, sovellusten toiminnan analysointiin ja tietoturvatarkastuksiin.

Parhaisiin käytäntöihin kuuluvat suodattimien aggressiivinen käyttö suorituskykyyn vaikuttavien vaikutusten minimoimiseksi, palvelinpuolen jäljitysten suosiminen tuotantoympäristöissä ja jäljityksen keston rajoittaminen tarvittaviin ajanjaksoihin. Valitse vain välttämättömät tapahtumat ja sarakkeet yleiskulujen vähentämiseksi. Tallenna jäljitykset tiedostoihin taulukoiden sijaan paremman suorituskyvyn saavuttamiseksi sieppauksen aikana.

15.2 Eteenpäin: Nykyaikaisten työkalujen omaksuminen

Siirtyminen SQL Server Profilerista Extended Eventsiin pitkäaikaisia ​​seurantaratkaisuja varten. Vaikka Profiler pysyy toiminnassa, Extended Eventsin oppimiseen panostaminen antaa sinulle valmiudet tulevaisuuteen SQL Server versiot. Staryksinkertaisilla laajennetuilla tapahtumaistunnoilla, jotka replikoivat yleisiä Profiler-jäljityksiäsi.

Ota kyselysäilö käyttöön tuotantotietokannoissa saadaksesi automaattisen suorituskyvyn valvonnan ilman manuaalista jäljityksen määrittämistä. Kyselysäilö tallentaa kyselysuunnitelmia ja suoritustilastoja jatkuvasti, tarjoten lähtötietoja suorituskyvyn analysointia varten. Yhdistä kyselysäilö tarhankittu laajennettuja tapahtumaistuntoja kattavaa seurantaa varten.

15.3 Lisäresurssit

Seuraavat resurssit auttavat sinua syventämään SQL Server Profiloijan tietämys ja pysy ajan tasalla seurannan parhaista käytännöistä:

Microsoftin virallinen dokumentaatio

Yhteisön resurssit

  • SQL Server Central – Artikkeleita, foorumeita ja skriptejä tietokanta-ammattilaisille
  • Pino ylivuoto SQL Server Tunniste – Yhteisön kysymykset ja vastaukset tiettyjä vianmäärityskysymyksiä varten
  • Reddit r/SQLServer – Keskustelufoorumi aiheille SQL Server aiheita ja neuvoja
  • SQLServerCentral.com-foorumit – Aktiivisia yhteisökeskusteluja profiloinnista ja suorituskyvystä
  • MSDN SQL Server Foorumit – Microsoft-hosted-yhteisön tukifoorumit

Blogit ja tekniset artikkelit

  • SQL Server Performance Monitor – Omistettu suorituskyvyn seurantaan ja optimointiin liittyvä sisältö
  • Brent Ozar Unlimited Blog – Suorituskyvyn virittämisen ja valvonnan parhaat käytännöt
  • SQLSkills.com – Asiantuntijataso SQL Server sisältöä alan johtajilta
  • Microsoft SQL Server Blogi – Viralliset tuotepäivitykset ja ominaisuusilmoitukset
  • Yksinkertainen puhe – Käytännöllinen SQL Server opetusohjelmia ja tapaustutkimuksia

Koulutus ja sertifiointi

  • Microsoft Opi – Ilmaisia ​​verkkokoulutusmoduuleja SQL Server
  • Microsoft-sertifioitu: Azure-tietokannan järjestelmänvalvojan apuohjelma – Virallinen sertifiointiprosessi
  • Monivaloinen SQL Server Kurssit – Videokoulutus profiloinnista ja suorituskyvyn hienosäädöstä
  • LinkedIn Oppiminen SQL Server Koulutus – Ammatillisen kehityksen kurssit
  • Udemy SQL Server Suorituskykykurssit – Käytännönläheisiä koulutusvaihtoehtoja

Kirjat

  • SQL Server Kyselyiden suorituskyvyn viritys – Kattava suorituskyvyn optimointiopas
  • kohti SQL Server Sisäosat – Syvällinen analyysi SQL Server arkkitehtuuri
  • SQL Server Suoritussuunnitelmat – Kyselyoptimoinnin ymmärtäminen
  • Asiantuntijan suorituskyvyn indeksointi SQL Server – Hakemiston suunnittelu ja optimointi
  • SQL Server Edistynyt vianmääritys ja suorituskyvyn hienosäätö – Edistynyt diagnostiikkaostic-tekniikat

Työkalut ja apuohjelmat

  • SQL Server Hallintostudio – Ensisijainen käyttöliittymä SQL Server Profiler
  • Azure DataStudio – Moderni monialustainen tietokantatyökalu
  • sp_WhoIsActive – Suosittu yhteisön luoma tallennettu valvontaproseduuri
  • SQL Sentry Plan Explorer – Ilmainen toteutussuunnitelmien analysointityökalu
  • DBForge Studio – Kolmannen osapuolen SQL Server kehitys- ja hallintatyökalu

kirjailijasta

Yuan Sheng on kokenut tietokannan ylläpitäjä (DBA), jolla on yli 10 vuoden kokemus alalta SQL Server ympäristöissä ja yritystietokantojen hallinnassa. Hän on onnistuneesti ratkaissut satoja tietokantojen palautustilanteita rahoituspalveluissa, terveydenhuollossa ja valmistusorganisaatioissa.

Yuan on erikoistunut SQL Server tietokannan palautus, korkean käytettävyyden ratkaisutja suorituskyvyn optimointia. Hänen laaja käytännön kokemus kattaa usean teratavun tietokantojen hallinnan, käyttöönoton Aina käytettävissä olevat ryhmätja kehittämällä automatisoituja varmuuskopiointi- ja palautusstrategioita kriittisille liiketoimintajärjestelmille.

Teknisen asiantuntemuksensa ja käytännönläheisen lähestymistapansa avulla Yuan keskittyy luomaan kattavia oppaita, jotka auttavat tietokannan ylläpitäjiä ja IT-ammattilaisia ​​ratkaisemaan monimutkaisia ​​ongelmia. SQL Server haastaa tehokkaasti. Hän pysyy ajan tasalla uusimmista SQL Server julkaisuja ja Microsoftin kehittyviä tietokantateknologioita, testaten säännöllisesti palautusskenaarioita varmistaakseen, että hänen suosituksensa vastaavat todellisia parhaita käytäntöjä.

Onko sinulla kysyttävää SQL Server palautus tai tarvitsetko lisäohjeita tietokannan vianmääritykseen? Yuan toivottaa sinut tervetulleeksi palautetta ja ehdotuksia näiden teknisten resurssien parantamiseksi.