Skupna raba zdaj:

 

Kazalo skrij

1. Uvod v SQL Server Profil

1.1 Kaj je SQL Server Profiler in zakaj ga potrebujemo?

SQL Server Profiler je grafično orodje za spremljanje in zajemanje dogodkov, ki se zgodijo znotraj SQL ServerTo zmogljivo diagnostično orodje omogoča skrbnikom baz podatkov in razvijalcem, da v realnem času opazujejo aktivnost mehanizma baz podatkov, kar jim pomaga prepoznati ozka grla v delovanju, odpraviti težave z aplikacijami in pregledati varnostne dogodke.

SQL Server Profil

1.2 SQL Server Profiler leta 2025: Trenutno stanje in alternative

Microsoft je zastarel SQL Server Profiler, ki se začne z SQL Server 2016, s priporočilom Razširjeni dogodki kot nadomestna tehnologija. Vendar pa orodje ostaja na voljo v trenutnih SQL Server različice, vključno z SQL Server 2022 in ga strokovnjaki za podatkovne baze še vedno pogosto uporabljajo.

1.3 Komu je namenjen ta priročnik

  • Ta priročnik je namenjen skrbnikom baz podatkov, ki morajo spremljati SQL Server primerke, diagnosticiranje težav z zmogljivostjo in zagotavljanje zanesljivosti sistema. Upravitelji baz podatkov bodo našli praktične smernice za zajemanje sledi, analiziranje dogodkov in izvajanje strategij spremljanja.
  • Razvijalci aplikacij imajo koristi od razumevanja, kako njihova koda komunicira z SQL ServerSQL Profiler pomaga razvijalcem prepoznati neučinkovite poizvedbe, preveriti vedenje aplikacij in odpraviti napake, povezane z zbirko podatkov.
  • Analitiki in svetovalci za učinkovitost delovanja bodo odkrili napredne tehnike za analizo delovne obremenitve, načrtovanje zmogljivosti in optimizacijo sistema. Celovita obravnava konfiguracije sledenja, filtriranja in analize omogoča temeljito oceno učinkovitosti delovanja baze podatkov.

2. Razumevanje SQL Server Osnove profilerja

2.1 Kako SQL Server Profiler Works

SQL Server Profiler deluje kot odjemalska aplikacija, ki se poveže z mehanizmom za sledenje SQL, ki se izvaja znotraj SQL ServerKo ustvarite sled, mehanizem baze podatkov spremlja določene dogodke in jih zajame v skladu z vašo konfiguracijo. Mehanizem sledenja zbira podatke o dogodkih z minimalnim vplivom na delovanje strežnika, če je pravilno konfiguriran.

Osnovna infrastruktura sledenja SQL uporablja lahke kavlje dogodkov v celotnem mehanizmu baze podatkov. Ko se zgodi dogodek, ki ustreza vaši definiciji sledenja, mehanizem zajame ustrezne informacije in jih bodisi pošlje vmesniku Profiler bodisi shrani v datoteko ali tabelo. Ta arhitektura omogoča prilagodljivo zbiranje podatkov brez spreminjanja kode aplikacije.

2.2 Ključni koncepti in terminologija

Dogodki 2.2.1

Dogodki predstavljajo specifične dogodke znotraj SQL Server ki jih lahko zajame sledilni mehanizem. Vsak dogodek ustreza določeni operaciji baze podatkov ali sistemski dejavnosti. SQL Server Profiler organizira dogodke v logične kategorije za lažjo konfiguracijo.

Med pogoste kategorije dogodkov spadajo TSQL za izvajanje poizvedb, shranjene procedure za klice procedur, zaklepanja za spremljanje sočasnosti ter napake in opozorila za sledenje izjemam. Izbira ustreznih dogodkov določa, katere informacije zajame vaša sled, in neposredno vpliva na uporabnost in zmogljivost sledenja.

Razumevanje vrst dogodkov vam pomaga konfigurirati učinkovite sledi. Dogodki RPC:Completed zajemajo dokončanja klicev oddaljenih procedur, dogodki SQL:BatchCompleted sledijo paketom ad-hoc poizvedb, dogodki Lock:Deadlock pa prepoznavajo pojave zastojev. Izberite dogodke, ki so skladni z vašimi specifičnimi cilji odpravljanja težav ali spremljanja.

2.2.2 Stolpci s podatki

Stolpci s podatki določajo, katere informacije sled zajame za vsak dogodek. Pogosti stolpci vključujejo TextData za dejanski stavek SQL, Duration za čas izvajanja, CPU za izkoriščenost procesorja, Reads za branje logičnega diska in Writes za pisanje na logični disk.

Bistveni stolpci se razlikujejo glede na primer uporabe. Odpravljanje težav z zmogljivostjo običajno zahteva stolpce Duration (Trajanje), CPU (CPU), Reads (Branje) in Writing (Pisanje). Varnostni nadzor potrebuje stolpce LoginName (Prijava), DatabaseName (Ime baze podatkov) in ObjectName. Odpravljanje napak v aplikacijah ima koristi od stolpcev ApplicationName (ApplicationName), SPID (SPID) in Error (Napaka).

Če izberete samo potrebne stolpce, zmanjšate stroške sledenja in poenostavite analizo. Izogibajte se zajemanju vseh razpoložljivih stolpcev, razen če je to posebej potrebno. Vsak dodaten stolpec poveča količino zbranih in obdelanih podatkov, kar lahko vpliva na delovanje strežnika.

2.2.3 Filtri

Filtri omejujejo, katere dogodke sled zajame na podlagi določenih meril. Pravilno konfigurirani filtri drastično zmanjšajo količino sledi, kar olajša analizo in zmanjša vpliv na delovanje. Filtri pred zajemom ocenijo podatke o dogodkih in preprečijo nepotrebno zbiranje podatkov.

Med pogostimi kriteriji filtriranja so DatabaseName za osredotočanje na določene baze podatkov, ApplicationName za izolacijo določenih aplikacij, Duration za zajemanje le počasnih operacij in LoginName za sledenje določenim uporabnikom. Združevanje več filtrov ustvari natančne definicije sledi, ki zajamejo točno to, kar potrebujete.

Filtriranje, ki upošteva zmogljivost, je bistveno za produkcijska okolja. Vedno filtrirajte po imenu baze podatkov ali imenu aplikacije, da se izognete zajemanju sistemske dejavnosti. Nastavite minimalne pragove trajanja, da prezrete hitro izvajajoče se poizvedbe. Filtre TextData uporabljajte previdno, saj zahtevajo primerjave nizov, ki dodajajo dodatno obremenitev.

2.2.4 Predloge sledenja

Predloge sledenja zagotavljajo vnaprej konfigurirane izbire dogodkov, stolpcev in filtrov za pogoste scenarije. SQL Server Profiler vključuje več vgrajenih predlog, ki služijo kot izhodišča za ustvarjanje sledenja. Predloge po meri shranijo vaše konfiguracije za ponovno uporabo v več sejah sledenja.

Predloga Standard zajame splošen nabor dogodkov, primernih za osnovno spremljanje. Predloga TSQL se osredotoča na izvajanje poizvedb z minimalnimi stroški. Predloga Tuning zbira dogodke posebej za analizo Database Engine Tuning Advisor. Vsaka predloga uravnoteži zajem informacij z vplivom na zmogljivost.

Ustvarjanje predlog po meri prihrani čas in zagotavlja doslednost med sejami sledenja. Konfigurirajte sled z želenimi dogodki, stolpci in filtri ter jo nato shranite kot predlogo. Predloge po meri postanejo še posebej dragocene, ko večkrat odpravljate podobne težave.

3. Uvod v SQL Server Profil

3.1 Sistemske zahteve in predpogoji

SQL Server Profiler je priložen SQL Server Management Studio in podpira vse trenutno vzdrževane SQL Server različice, od SQL Server 2016 za 2022.

Zahteve glede dovoljenj določajo, kdo lahko ustvarja in izvaja sledi. Člani fiksne strežniške vloge sysadmin imajo neomejen dostop do SQL Server Funkcionalnost profilerja. Za uporabnike, ki niso sistemski administratorji, dovoljenje ALTER TRACE omogoča ustvarjanje in upravljanje sledi.

Pri sledenju oddaljenim strežnikom veljajo omrežni vidiki. Sledenje na strani odjemalca zahteva neprekinjeno omrežno povezljivost med vašo delovno postajo in SQL Server primerek. Prekinjene povezave ustavijo sledenje na strani odjemalca, kar lahko povzroči izgubo zajetih podatkov. Sledenje na strani strežnika se tej omejitvi izogne ​​tako, da se v celoti izvaja na strežniku baze podatkov.

3.2 Kako zagnati SQL Server Profil

3.2.1 Začenši z SQL Server Management Studio (SSMS)

Za zagon sledite tem korakom SQL Server Profiler iz SSMS:

  1. Odprto SQL Server Management Studio in se povežite s katerim koli SQL Server na primer.
  2. Kliknite Orodja meni v zgornji menijski vrstici.
  3. Izberite SQL Server Profil iz spustnega menija.
  4. Naš SQL Server Aplikacija Profiler se zažene v novem oknu.

Začetek SQL Server Profiler v SQL Server Studio za upravljanje.

3.2.2 Zagon iz menija Start sistema Windows

dostop SQL Server Profiler neposredno iz sistema Windows s pomočjo teh korakov:

  1. Kliknite na Windows Začetek .
  2. tip SQL Server Profil v iskalnem polju.
  3. Izberite SQL Server Profil iz rezultatov iskanja.
  4. Aplikacija se zažene brez aktivnih povezav.

Začetek SQL Server Profiler iz iskalnega polja sistema Windows.

Lahko pa se pomikate po hierarhiji menija Start:

  1. odprite Začetek meni.
  2. Poiščite Microsoft SQL Server Orodja mapa.
  3. Razširite mapo in kliknite SQL Server Profil.

Začetek SQL Server Profiler iz menija Start sistema Windows.

3.2.3 Povezovanje z SQL Server Primeri

Po zagonu SQL Server Profiler, vzpostavite povezavo po teh korakih:

  1. klik file v menijski vrstici.
  2. Izberite Nova sled iz spustnega menija.
  3. Naš Povežite se s strežnikom prikaže se pogovorno okno.
  4. Vnesite ime strežnika v Ime strežnika področju.
  5. Izberite Preverjanje pristnosti sistema Windows or SQL Server Preverjanje pristnosti.
  6. Če uporabljate SQL Server Preverjanje pristnosti, vnesite svoje prijavne podatke.
  7. klik Connect za vzpostavitev povezave.

Povežite se z a SQL Server primer v SQL Server Profiler.

Za oddaljene povezave navedite polno ime strežnika, vključno z imenom instance, če je primerno. Za poimenovane instance uporabite obliko IMESTREŽNIKA\IMEINSTANCE. Če poskusi povezave ne uspejo, preverite omrežno povezljivost in nastavitve požarnega zidu.

4. Ustvarjanje in konfiguriranje SQL Server Sledi

4.1 Ustvarjanje prve sledi z uporabo predloge

Ustvarite svojo prvo sled s pomočjo teh korakov:

  1. Zagon SQL Server Profiler.
  2. klik file -> Nova sled in se povežite s ciljnim strežnikom.
  3. Naš Lastnosti sledi prikaže se pogovorno okno.
  4. Vnesite opisno ime v Ime sledi področju.
  5. Izberite predlogo iz Uporabite predlogo padajoči.
  6. Izberite Standardno (privzeto) predloga za splošno spremljanje. Ali druga predloga za druge namene. Predloga ponuja vnaprej konfigurirane dogodke, stolpce in filtre za pogoste scenarije.
  7. klik Run da takoj začnete beležiti dogodke.

Nastavite lastnosti sledi v SQL Server Profiler.

4.2 Prilagodite svojo sled

Velikokrat predloge ne morejo izpolniti vaših zahtev. V takem primeru lahko sled popolnoma prilagodite:

  1. v Lastnosti sledi dialog.
  2. Izberite Blank predloga iz Uporabite predlogo padajoči.Za sled uporabite prazno predlogo.
  3. Kliknite Izbor dogodkov Na zavihku lahko zdaj prilagodite vse dogodke, podatkovne stolpce in filtre glede na svoje zahteve. O njih bomo razpravljali v naslednjih razdelkih.
    Sled prilagodite na zavihku »Izbira dogodka« v pogovornem oknu »Lastnosti sledi«.

4.3 Izbira dogodkov za zajem

Dogodek lahko izberete v Izbor dogodkov Kartica:

  1. Kliknite + ikono poleg kategorije Dogodek, da jo razširite.
  2. Kliknite potrditveno polje poleg dogodka, da ga izberete.

V pogovornem oknu »Lastnosti sledi« izberite dogodek.

4.3.1 Razumevanje kategorij dogodkov

SQL Server Profiler organizira dogodke v kategorije za logično združevanje. Kategorija Shranjene procedure vključuje dogodke za izvajanje procedur, vključno s SP:Starting, SP:Completed in SP:StmtCompleted. Ti dogodki spremljajo klice shranjenih procedur in izvajanje posameznih stavkov znotraj procedur.

Kategorija TSQL zajema izvajanje ad-hoc poizvedb z dogodki, kot sta SQL:BatchStarting in SQL:BatchCompleted. Ti dogodki spremljajo poizvedbe, poslane neposredno v SQL Server zunaj shranjenih procedur.

Kategorija Zaklepanja spremlja dogodke, povezane s sočasnostjo, vključno z Zaklepanje:Pridobljeno, Zaklepanje:Sproščeno, Zaklepanje:Zastoj in Zaklepanje:Časovna omejitev. S temi dogodki lahko diagnosticirate težave z blokiranjem in zastoji, ki vplivajo na delovanje aplikacije.

Kategorija Napake in opozorila zajema izjemne dogodke, vključno z izjemo, opozorilom in sporočilom o napaki uporabnika. Ti dogodki pomagajo prepoznati napake v aplikaciji in SQL Server opozorila med sejami sledenja.

4.3.2 Izbira pravih dogodkov za vaš scenarij

Spremljanje delovanja zahteva dogodke, ki zajemajo porabo virov. Za sledenje izvajanja poizvedb izberite RPC:Completed in SQL:BatchCompleted. Za merjenje porabe virov vključite stolpce Trajanje, CPU, Branje in Pisanje. Ti dogodki zagotavljajo osnovo za prepoznavanje ozkih grl v delovanju.

Varnostno revidiranje zahteva dogodke, ki spremljajo preverjanje pristnosti in avtorizacijo. Izberite »Prijava pri reviziji«, »Odjava pri reviziji«, »Prijava pri reviziji ni uspela« in »Object:Opened« za spremljanje dostopa do baze podatkov. Vključite stolpce »LoginName«, »DatabaseName« in »ObjectName«, da ugotovite, kdo je dostopal do katerih virov.

Scenariji odpravljanja napak imajo koristi od celovitega zajemanja dogodkov. Vključite dogodke shranjenih procedur, paketne dogodke SQL in dogodke napak za sledenje celotnim potekom izvajanja. Zajemite dodaten kontekst s stolpci SPID, ApplicationName in HostName za povezovanje dogodkov z določenimi sejami.

4.4 Konfiguriranje podatkovnih stolpcev

Privzeto bodo ob izbiri dogodka izbrani (označeni) vsi njegovi stolpci s podatki. Nepotrebne stolpce lahko odznačite, da zmanjšate stroške in poenostavite analizo:

V pogovornem oknu »Lastnosti sledi« izberite/prekličite izbiro podatkovnih stolpcev za dogodek.

Bistveni stolpci za vsako sled vključujejo EventClass za identifikacijo vrste dogodka, TextData za zajem dejanskega stavka SQL, LoginName za identifikacijo izvajalca in StartTime za časovni žig, ko se je dogodek zgodil. Ti stolpci zagotavljajo temeljni kontekst za vsak zajeti dogodek.

Stolpci, povezani z zmogljivostjo, merijo porabo virov. Trajanje označuje, koliko časa je dogodek trajal v mikrosekundah. CPE prikazuje čas procesorja v milisekundah. Branje šteje branje logičnih strani. Zapisovanje sledi zapisovanju logičnih strani. Te metrike identificirajo operacije, ki zahtevajo veliko virov in optimizacijo.

Stolpca »Varnost« in »Revizija« spremljata vzorce dostopa do podatkov. »DatabaseName« določa, do katere baze podatkov je bil dostop. »ObjectName« določa tabelo ali objekt, ki je bil vključen. »ApplicationName« razkriva, katera aplikacija je sprožila dejavnost. Skupaj ti stolpci zagotavljajo celovite revizijske sledi.

4.5 Nastavitev filtrov za zmanjšanje šuma

4.5.1 Pogosti kriteriji filtriranja

Filtre konfigurirajte z naslednjim pristopom:

  1. odprite Lastnosti sledi dialog.
  2. Kliknite Izbor dogodkov tab.
  3. klik Filtri stolpcev gumb v spodnjem desnem kotu.
    V pogovornem oknu »Lastnosti sledenja« kliknite gumb »Filtri stolpcev«.
  4. Izberite stolpec s seznama na levi.
  5. Konfigurirajte merila filtra v plošči na desni.
    Filter za podatkovni stolpec nastavite v pogovornem oknu »Lastnosti sledi«.
  6. klik OK za uporabo filtra.

Filtri imen aplikacij izolirajo dejavnost od določenih aplikacij. Razširite stolpec Ime aplikacije v pogovornem oknu filtra in vnesite ime aplikacije v Kot polje in SQL Server Profiler zajame samo dogodke iz te aplikacije. Ta filter se izkaže za neprecenljivega pri odpravljanju težav, specifičnih za aplikacijo.

Filtri imen baz podatkov omejujejo zajemanje na določene baze podatkov. Filtrirajte po imenu baze podatkov, da izključite dejavnost sistemske baze podatkov in se osredotočite na baze podatkov aplikacije. Vnesite imena baz podatkov v Kot or enako polje, odvisno od tega, ali potrebujete ujemanje nadomestnih znakov.

Filtri trajanja zajamejo le počasne operacije. Nastavite minimalni prag v Večje ali enako polje v stolpcu Trajanje. Če na primer nastavite Trajanje >= 1000, se zajamejo samo dogodki, ki trajajo več kot eno sekundo, pri čemer se hitro izvajajoče se poizvedbe izločijo.

Filtri uporabniških imen spremljajo aktivnost določenih uporabnikov. Filtrirajte po uporabniškem imenu za spremljanje določenih uporabnikov baze podatkov. Ta pristop pomaga prepoznati, kateri uporabniki izvajajo problematične poizvedbe ali dostopajo do občutljivih podatkov.

4.4.2 Najboljše prakse filtriranja

Učinkovito filtriranje uravnoteži zajem podatkov z vplivom na zmogljivost. Vedno uporabite vsaj en filter, da preprečite zajem prekomerne sistemske dejavnosti. Filtra DatabaseName in ApplicationName bi morala biti izhodišče za večino sledi.

V produkcijskih okoljih se izogibajte preširokim sledem. Nefiltrirane sledi zajemajo ogromne količine podatkov, kar lahko poslabša delovanje strežnika in onemogoči analizo. Nastavite posebna merila filtriranja, ki so usmerjena v vaše cilje odpravljanja težav.

Pred uvedbo v produkcijo preizkusite filtre. Najprej zaženite sledilne funkcije v razvojnih ali testnih okoljih, da preverite, ali filtri zajamejo pričakovane dogodke brez prekomernih stroškov. Prilagodite merila filtrov glede na količino zajetih podatkov.

4.5 Delo s predlogami sledenja

4.5.1 Pregled vgrajenih predlog

Standardna predloga zagotavlja uravnoteženo zajemanje dogodkov, primerno za splošno spremljanje. Vključuje običajne dogodke izvajanja poizvedb, klice shranjenih procedur in osnovno sledenje napakam. To predlogo uporabite, ko potrebujete celovit pregled, ne da bi natančno vedeli, kaj iskati.

Predloga TSQL se osredotoča posebej na izvajanje poizvedb z minimalnim izborom dogodkov. Zajame dogodke SQL:BatchCompleted in RPC:Completed z bistvenimi stolpci za analizo učinkovitosti delovanja. Ta predloga ponuja nižje režijske stroške kot standardna predloga.

Predloga za optimizacijo optimizira izbiro dogodkov za analizo programa Database Engine Tuning Advisor. Zajame dogodke in stolpce, potrebne za analizo delovne obremenitve in priporočila za indeksiranje. To predlogo uporabite pri pripravi sledi za samodejno optimizacijo delovanja.

Predloga TSQL_Replay vključuje vse dogodke in stolpce, potrebne za funkcionalnost ponovnega predvajanja sledenja. Zajame obsežne podrobnosti izvajanja, kar vam omogoča reprodukcijo zajetih delovnih obremenitev v testnih okoljih. Zaradi obsežnega zbiranja podatkov ta predloga ustvari večje datoteke sledenja.

4.5.2 Ustvarjanje predlog po meri

Ustvarite predloge po meri tako, da sledite tem korakom:

  1. klik file -> Predloge -> Nova predloga …
  2. Vnesite opisno ime v Novo ime predloge področju.
  3. Po želji preverite Nova predloga temelji na obstoječi in izberite obstoječo predlogo, če ne želite graditi iz nič:
    Ustvarite novo predlogo v SQL Server Profiler.
  4. Kliknite Izbira dogodka zavihek, prilagodite predlogo sledenja z želenimi dogodki, stolpci in filtri, tako kot vi naredi z običajno sledjo.
  5. klik Prihranek , da shranite predlogo.

Izvoz predlog za skupno rabo s člani ekipe ali za namene varnostnega kopiranja:

  1. klik file -> Predloge -> Izvozi predlogo.
  2. Izberite predlogo, ki jo želite izvoziti.
    Izvoz predloge sledi v SQL Server Profiler.
  3. Pomaknite se do želene lokacije shranjevanja.
  4. Vnesite ime datoteke in kliknite Prihranek.
  5. Delite datoteko *.tdf (SQL Server datoteka predloge profilerja) z drugimi SQL Server Uporabniki profilerja.

4.6 Shranjevanje izhoda sledi

Privzeto, SQL Server Profiler bo prikazal dogodke v oknu sledenja, vendar jih NE bo shranil. Podatke sledenja lahko shranite v datoteko ali tabelo v Lastnosti sledi pogovorno okno, ko ustvarite novo sled.

4.6.1 Shrani v datoteko

  1. v Lastnosti sledi pogovorno okno, preveri Shrani v datoteko.
  2. Kliknite ikono mape, da odprete brskalnik datotek.
  3. Pomaknite se do želene lokacije shranjevanja.
  4. Vnesite ime datoteke s končnico .trc.
  5. klik Prihranek.
  6. Kompleti Nastavite največjo velikost datoteke za omejitev velikosti posamezne datoteke.
  7. Omogoči Omogoči preusmeritev datoteke za ustvarjanje več datotek.
  8. Izbirno omogoči Strežnik obdeluje podatke sledenja za sledi na strani strežnika.

V pogovornem oknu »Lastnosti sledi« nastavite shranjevanje podatkov sledi v datoteko.

Upravljanje velikosti datotek preprečuje izčrpanost prostora na disku. Nastavite največjo velikost datoteke na razumno vrednost, kot je 500 MB ali 1 GB, glede na razpoložljiv prostor na disku in pričakovano trajanje sledenja. Preklapljanje datotek samodejno ustvari nove datoteke, ko je dosežena omejitev velikosti, in imenu datoteke doda številko.

4.6.2 Shrani v tabelo

  1. v Lastnosti sledi pogovorno okno, preveri Shrani v tabelo.
  2. Naš Ciljna tabela prikaže se pogovorno okno.
    Izberite ciljno tabelo, v katero želite shraniti podatke sledenja.
  3. Izberite strežnik iz Server padajoči.
  4. Izberite bazo podatkov iz Baze podatkov padajoči.
  5. Izberite obstoječo tabelo ali vnesite novo ime tabele v Tabela področju.
  6. klik OK potrditi.
  7. Izbirno nastavljeno Nastavi največje število vrstic za omejitev velikosti tabele.

V pogovornem oknu »Lastnosti sledi« nastavite shranjevanje podatkov sledenja v tabelo.

Pri shranjevanju v tabele veljajo vidiki učinkovitosti delovanja. Shranjevanje v tabelah v primerjavi s shranjevanjem v datoteke povzroča dodatne stroške, ker SQL Server Podatke sledenja morate zapisati prek shranjevalnega mehanizma. Shranjevanje tabel uporabite, kadar morate podatke sledenja takoj poizvedovati s T-SQL.

Hramba podatkov postane pomembna za sledenje, ki temelji na tabelah. Nastavite največje dovoljene vrednosti vrstic, da preprečite preveliko rast tabel. Redno arhivirajte ali brišite stare podatke sledenja, da ohranite zmogljivost. Za boljše upravljanje razmislite o particioniranju velikih tabel sledenja.

5. Vodenje in upravljanje SQL Server Sledi

5.1 Zagon, začasna ustavitev in zaustavitev sledi

Upravljajte izvajanje sledenja z gumbi orodne vrstice:Upravljajte sledi prek gumbov orodne vrstice v SQL Server Profiler.

  • Zelena Začetek gumb začne zajemati dogodke v skladu z vašo konfiguracijo.
  • klik Pause začasno prekiniti zbiranje podatkov brez prekinitve povezave.
  • klik stop za konec sledenja in zapiranje povezave.

Prek elementov menija:
Upravljajte sledi prek elementov menija v SQL Server Profiler.

Z desnim klikom na kateri koli vnos v oknu sledenja:

Upravljajte sledi prek menijskih elementov z desno miškino tipko v SQL Server Profiler.

Upravljanje življenjskega cikla sledenja vpliva na vire strežnika. Aktivne sledi porabljajo pomnilnik in procesorsko moč sorazmerno s količino zajetih dogodkov. Sledenja začasno ustavite v obdobjih, ko spremljanje ni potrebno, da zmanjšate režijske stroške. Sledenja popolnoma ustavite, ko je analiza končana, da sprostite vire.

Sledi na strani odjemalca zahtevajo aktivno povezavo s profilerjem. Zapiranje SQL Server Okno profilerja takoj ustavi sledi na strani odjemalca. Namesto da bi zaprli okno profilerja, ga pomanjšajte, da se sledi med delom v drugih aplikacijah še naprej izvajajo.

5.2 Spremljanje sledi v realnem času

Spremljajte zajete dogodke, ko se zgodijo, v glavnem oknu sledi. Vsaka vrstica predstavlja en dogodek, stolpci pa prikazujejo lastnosti dogodka. Mreža se med aktivnimi sledmi nenehno posodablja in privzeto prikazuje najnovejše dogodke na dnu.

Monitor sledenja v realnem času SQL Server Profiler.

Prepoznajte vzorce in težave z opazovanjem pogostosti in značilnosti dogodkov. Dolgotrajni dogodki kažejo na težave z delovanjem. Pogosti dogodki napak kažejo na težave z aplikacijami. Nenavadna dejavnost prijave lahko kaže na varnostne pomisleke. Spremljanje v realnem času omogoča takojšen odziv na nastajajoče težave.

Pomikajte se po zajetih dogodkih, da pregledate določene pojave. Kliknite katero koli vrstico, da izberete dogodek in si ogledate njegove vse podrobnosti. Dvokliknite dogodke, da odprete podrobna pogovorna okna z lastnostmi, ki prikazujejo vse vrednosti stolpcev. S funkcijo Scroll Lock preprečite samodejno pomikanje med pregledovanjem zgodovinskih dogodkov.

5.3 Upravljanje več sočasnih sledi

Sočasno izvajanje več sledi zagotavlja prilagodljivost za kompleksne scenarije spremljanja. Ustvarite ločene sledi za različne vidike dejavnosti baze podatkov, na primer eno sled za spremljanje delovanja in drugo za varnostno revizijo. Vsaka sled se izvaja neodvisno s svojo konfiguracijo.

Upravljajte več sočasnih sledi v SQL Server Profiler.

Dodelitev virov postane ključnega pomena pri več sledeh. Vsaka aktivna sled porablja pomnilnik, procesor in morebiti tudi V/I na disku. Omejite število sočasnih sledi in zagotovite, da vsaka sled uporablja ustrezne filtre, da zmanjšate režijske stroške. Spremljajte delovanje strežnika med izvajanjem več sledi.

Uskladite čas sledenja, da preprečite prekrivanje sledi z veliko obremenitvijo. Če je mogoče, sledite intenzivno v obdobjih z nizko aktivnostjo. Različne sledi načrtujte ob različnih časih, namesto da vse izvajate hkrati.

5.4 Sledi na strani odjemalca v primerjavi s sledmi na strani strežnika

Privzeto je novo ustvarjena sled sled na strani odjemalca, ki zahteva aktivno povezavo od SQL Server Profiler do strežnika baze podatkov. Sledenje se takoj ustavi, če se povezava prekine ali če se Profiler zapre.

Ustvarite lahko tudi sled na strani strežnika, ki se v celoti izvaja na SQL Server primerek brez potrebe po aktivni povezavi s profilerjem. Sledenje na strani strežnika se nadaljuje tudi po zaprtju SQL Server Profiler, ki zapisuje podatke na določeno lokacijo datoteke.

Če želite ustvariti sled na strani strežnika:

  1. Kliknite Datoteka -> Nova sled …
  2. v Lastnosti sledi pogovorno okno, preveri Shrani v datoteko
  3. Nastavite lokacijo datoteke in druge nastavitve.
  4. Omogoči Strežnik obdeluje podatke sledenja za ustvarjanje sledi na strani strežnika.

Ustvarite sled na strani strežnika v SQL Server Profiler.

Vpliv na zmogljivost se med vrstami sledenja bistveno razlikuje. Sledi na strani odjemalca morajo prenašati podatke prek omrežja do vmesnika Profilerja, kar poveča zakasnitev in porabo pasovne širine. Sledi na strani strežnika povzročajo manj režijskih stroškov, ker se podatki zapisujejo neposredno na disk na strežniku.

Sledi na strani odjemalca uporabite za ad-hoc odpravljanje težav, hitre diagnostične seje in situacije, kjer so takojšnje vizualne povratne informacije dragocene. Sledi na strani strežnika izberite za spremljanje produkcije, dolgotrajne zajeme in scenarije, ki zahtevajo delovanje brez nadzora.

6. Analiziranje SQL Server Podatki profilerja

6.1 Odpiranje in pregledovanje shranjenih sledi

Shranjene datoteke sledi naložite s temi koraki:

  1. Zagon SQL Server Profiler.
  2. klik file -> Odprto -> Datoteka sledi.
  3. Pomaknite se do lokacije datoteke sledenja.
  4. Izberite datoteko .trc in kliknite Odprto.
  5. Podatki sledi se naložijo v glavno okno.

Naložite tabele sledenja po tem postopku:

  1. klik file -> Odprto -> Tabela sledenja.
  2. Povežite se s strežnikom, ki gosti tabelo sledenja.
  3. Izberite bazo podatkov iz Baze podatkov padajoči.
  4. Izberite mizo iz Tabela padajoči.
  5. klik OK za nalaganje podatkov.

6.2 Filtriranje in iskanje podatkov sledenja

6.2.1 Filtriranje po zajemanju

Za naložene podatke sledenja uporabite filtre s temi koraki:

  1. klik Uredi -> Najdi ali pritisnite Ctrl + F.
  2. Vnesite iskalno besedilo v Našli kaj področju.
  3. Izberite stolpec, v katerem želite iskati Poglej noter padajoči.
  4. klik Poišči Naprej za iskanje ustreznih dogodkov.

Poiščite podatke o sledenju v SQL Server Profiler.

Filtriranje na podlagi stolpcev izboljša prikazane podatke brez ponovnega zajemanja dogodkov. Z desno tipko miške kliknite katero koli glavo stolpca in v kontekstnem meniju izberite možnosti filtriranja. Vnesite merila za filtriranje, da prikažete samo ujemajoče se vrstice. Ta pristop pospeši analizo, saj skrije nepomembne dogodke.

6.2.2 Iskanje določenih dogodkov

Funkcija iskanja pomaga najti določene dogodke v velikih datotekah sledi. Za iskanje po besedilni vsebini, vrsti dogodka ali vrednosti stolpca uporabite pogovorno okno Najdi. Regularni izrazi omogočajo kompleksne vzorce iskanja, kadar je to potrebno.

Dodajte pomembne dogodke med zaznamke za hiter dostop med analizo. Z desno miškino tipko kliknite zanimive dogodke in izberite možnosti zaznamkov, da jih označite. Med zaznamki se premikajte z bližnjicami na tipkovnici ali menijskimi ukazi, kar omogoča primerjavo povezanih dogodkov.

6.3 Združevanje in združevanje dogodkov

Združite dogodke po vrednostih stolpcev, da prepoznate vzorce in povzete dejavnost. Z desno tipko miške kliknite katero koli glavo stolpca in izberite Združi po tem stolpcu za organiziranje dogodkov. Združeni pogledi strnejo podobne dogodke skupaj, kar olajša pregled splošnih vzorcev.

Združeni pogledi zagotavljajo statistične povzetke podatkov sledenja. Združite po besedilnih podatkih (TextData), da vidite, kolikokrat se je posamezna poizvedba izvedla. Združite po uporabniškem imenu (LoginName), da si ogledate povzetke dejavnosti posameznih uporabnikov. Združevanje razkrije vzorce, ki niso takoj očitni na podrobnih seznamih dogodkov.

Razširite in strnite skupine za podrobnejši pregled določenih kategorij. Kliknite ikoni plus in minus poleg glav skupin, da prikažete ali skrijete združene dogodke. Ta hierarhični pogled omogoča analizo od zgoraj navzdol, začenši z vzorci na visoki ravni in se poglobi v podrobnosti.

6.4 Pridobivanje poizvedb SQL iz sledi

Iz podatkov sledenja izvlečite poizvedbe po teh korakih:

  1. V mreži sledi poiščite poizvedbo, ki vas zanima.
  2. Kliknite vrstico, da izberete dogodek.
  3. Celotno besedilo poizvedbe si oglejte v spodnji plošči.
  4. Pritisnite Ctrl + , da izberete vse besedilo poizvedbe.
  5. Pritisnite Ctrl + C za kopiranje besedila poizvedbe.
  6. Prilepite poizvedbo v Management Studio za nadaljnjo analizo.

Iz dogodka sledenja izvleči poizvedbo SQL.

Problematične poizvedbe prepoznajte z razvrščanjem po stolpcih zmogljivosti. Kliknite glavo stolpca Trajanje, da razvrstite po času izvajanja. Najpočasnejše poizvedbe se prikažejo na vrhu ali dnu, odvisno od smeri razvrščanja. Podobno razvrstite po CPE, branju ali pisanju, da prepoznate operacije, ki zahtevajo veliko virov.

Izvozite poizvedbe za testiranje tako, da jih kopirate iz sledi v okna poizvedb. Spremenite izvlečene poizvedbe za testiranje strategij optimizacije. Primerjajte načrte izvajanja in meritve učinkovitosti delovanja med izvirno in optimizirano različico.

6.5 Korelacija dogodkov in razumevanje poteka izvajanja

Razmerja med dogodki starš-otrok prikazujejo hierarhije izvajanja. Dogodki SQL:BatchStarting nadrejeni dogodki SQL:StmtStarting, ki nato predstavljajo dogodke izvajanja nadrejenih procedur. Razumevanje teh razmerij pomaga slediti celotnim potem izvajanja skozi vašo kodo.

Sledenje transakcijam povezuje povezane dogodke skozi čas. Za združevanje dogodkov po sejah uporabite stolpec SPID. Znotraj seje se dogodki pojavljajo v kronološkem vrstnem redu, kar prikazuje zaporedje operacij. Ta pogled prikazuje, kako različne operacije medsebojno delujejo znotraj transakcij.

Povežite dogodke s pregledom vrednosti skupnih stolpcev. Dogodki z enakim SPID-om so se zgodili v isti seji. Dogodki z istim imenom aplikacije (ApplicationName) so prišli iz iste aplikacije. Uporabite te korelacije za razumevanje kompleksnih scenarijev izvajanja.

7. Skupno SQL Server Primeri uporabe profilerja

7.1 Odpravljanje težav z zmogljivostjo

7.1.1 Prepoznavanje počasnih poizvedb

Zajemite počasne poizvedbe z uporabo naslednje konfiguracije:

  1. Ustvarite novo sled z uporabo TSQL predlogo.
  2. v Izbor dogodkov zavihek, preveri SQL:BatchCompleted in RPC: Dokončano izbrani.
  3. klik Filtri stolpcev.
  4. Izberite Trajanje s seznama stolpcev.
  5. V polje vnesite 1000000 Večje ali enako polje za zajemanje poizvedb, ki trajajo več kot 1 sekundo.
  6. klik OK in začnite sled.
  7. Sledenje zaženite v obdobjih največje uporabe.
  8. Ustavite sledenje in razvrstite po trajanju, da prepoznate najpočasnejše poizvedbe.

Analiza na podlagi trajanja razkriva vzorce časa izvajanja. Razvrstite zajete dogodke po stolpcu Trajanje, da si najprej ogledate najdlje trajajoče operacije. Preverite stolpec TextData za te dogodke, da ugotovite dejanske poizvedbe, ki so odgovorne za zamude.

Poizvedbe, ki zahtevajo veliko procesorja in vhodno/izhodne poizvedbe, zahtevajo različne optimizacijske pristope. Razvrstite po stolpcu CPE, da poiščete poizvedbe, ki zahtevajo veliko procesorja in algoritmične izboljšave. Razvrstite po stolpcih Branje ali Pisanje, da prepoznate poizvedbe, ki zahtevajo veliko V/I in imajo koristi od indeksiranja ali prepisovanja poizvedb.

7.1.2 Zaznavanje blokiranja in zastojev

Konfigurirajte zaznavanje blokiranja tako, da sledite tem korakom:

  1. Ustvari novo sled.
  2. v Izbor dogodkov zavihek, razširi Ključavnice.
  3. Izberite Zaklepanje: Zaklepanje in Ključavnica: Veriga z zaklepom.
  4. Razširi Napake in opozorila.
  5. Izberite Poročilo o blokiranem procesu.
  6. Vključi stolpce: SPID, Besedilni podatki, DatabaseName, Prijava.
  7. Zaženite sledenje in spremljajte dogodke zaklepanja.

Spremljanje dogodkov zaklepanja razkriva težave s sočasnostjo, ki vplivajo na delovanje aplikacije. Dogodki zaklepanja: zastoj označujejo, kdaj SQL Server zaznane in razrešene situacije zastojev. Dogodki verige zastojev Zaklepanje:Zastoj prikazujejo procese, ki sodelujejo pri zastojih.

Grafi zastojev zagotavljajo vizualne predstavitve scenarijev zastojev. Ko pride do dogodka zastoja, stolpec TextData vsebuje XML, ki opisuje zastoj. Kopirajte ta XML in ga odprite v SQL Server Management Studio za ogled grafičnega diagrama zastojev, ki prikazuje, kateri procesi so se medsebojno blokirali.

7.1.3 Iskanje manjkajočih indeksov

Zajem delovne obremenitve za analizo indeksa z uporabo teh korakov:

  1. Ustvarite novo sled z uporabo Tuning predlogo.
  2. Konfigurirajte sled za shranjevanje v datoteko.
  3. Sledenje zaženite med reprezentativnimi obdobji delovne obremenitve.
  4. Zberite vsaj nekaj ur aktivnosti.
  5. Ustavi sledenje in shrani datoteko.
  6. Zaženite svetovalca za uglaševanje mehanizma zbirk podatkov.
  7. Izberite datoteko sledenja kot vir delovne obremenitve.
  8. Za prejem priporočil za indeksiranje izvedite analizo.

Integracija s programom Database Engine Tuning Advisor avtomatizira priporočila indeksov. Program Tuning Advisor analizira zajeto delovno obremenitev in predlaga indekse, ki bi izboljšali delovanje. Pred implementacijo natančno preglejte priporočila, pri čemer upoštevajte stroške shranjevanja in vzdrževanja.

7.2 Odpravljanje težav z aplikacijo

7.2.1 Odpravljanje napak v aplikaciji

Sledenje napakam aplikacije z uporabo te konfiguracije:

  1. Ustvari novo sled.
  2. Razširi Napake in opozorila na zavihku Izbira dogodkov.
  3. Izberite Izjema, Sporočilo o napaki uporabnikain pozornost.
  4. Vključi stolpce: napaka, Besedilni podatki, Ime aplikacije, SPID.
  5. filtriraj Ime aplikacije da se osredotočite na svojo prijavo.
  6. Zaženite sledenje in poustvarite scenarij napake.
  7. Za diagnostične informacije preglejte zajete dogodke napak.

Sledenje napakam razkriva podrobnosti o izjemah, ki so pogosto skrite pred aplikacijami. Stolpec Napaka vsebuje SQL Server številke napak. Stolpec TextData prikazuje sporočila o napakah in poizvedbo, ki je povzročila napako. Stolpec Resnost označuje stopnje resnosti napake.

Spremljanje izjem zajame težave med izvajanjem, vključno s kršitvami omejitev, napakami dovoljenj in dogodki časovnih omejitev. Povežite dogodke napak s predhodnimi dogodki poizvedb, da razumete, kaj je sprožilo izjeme.

7.2.2 Sledenje komunikaciji med aplikacijo in zbirko podatkov

Spremljajte aktivnost aplikacije tako, da sledite tem korakom:

  1. Ustvarite novo sled z uporabo Standardna predlogo.
  2. klik Filtri stolpcev.
  3. Izberite Ime aplikacije in vnesite ime svoje aplikacije v Kot področju.
  4. Izbirno filtrirajte po Ime gostitelja za izolacijo določenih strežnikov.
  5. Zaženite sledenje med delovanjem aplikacije.
  6. Preglejte zajete dogodke, da vidite vse interakcije z zbirko podatkov.

Filtriranje imen aplikacij izolira poizvedbe iz določenih aplikacij. SQL Server Nastavi ime aplikacije iz povezovalnih nizov, kar olajša sledenje posameznim aplikacijam v okoljih z več aplikacijami. Za učinkovito filtriranje preverite, ali povezovalni niz vključuje parameter Ime aplikacije.

Sledenje povezavam prikazuje življenjski cikel seje, vključno s prijavo, izvajanjem poizvedb in odjavo. Spremljajte stopnje ustvarjanja povezav, da prepoznate težave z združevanjem povezav. Prekomerno odvajanje povezav kaže na morebitne težave s konfiguracijo aplikacije.

7.2.3 Preverjanje vedenja aplikacije

Preverite pričakovano vedenje aplikacije z analizo sledi. Zajemite vse operacije baze podatkov med poslovno transakcijo in preverite, ali se pravilne poizvedbe izvajajo v pravilnem zaporedju. Primerjajte dejansko zajete poizvedbe s pričakovanim vedenjem, da ugotovite neskladja.

Preverjanje parametrov zagotavlja, da aplikacije shranjenim proceduram in parametriziranim poizvedbam posredujejo pravilne vrednosti. Preglejte zajeto besedilo poizvedbe, da preverite, ali se vrednosti parametrov ujemajo s pričakovanji. Napačni parametri pogosto povzročijo logične napake, ki se kažejo kot napačni poslovni rezultati.

7.3 Varnostna revizija

7.3.1 Spremljanje poskusov prijave

Konfigurirajte spremljanje prijave s temi koraki:

  1. Ustvari novo sled.
  2. Razširi Security Audit na zavihku Izbira dogodkov.
  3. Izberite Prijava v revizijo, Odjava iz revizijein Prijava v revizijo ni uspela.
  4. Vključi stolpce: Prijava, Ime gostitelja, Ime aplikacije, Začetni čas.
  5. Zaženite sled za spremljanje dejavnosti preverjanja pristnosti.
  6. Preglejte neuspešne prijave za morebitne varnostne težave.

Uspešne in neuspešne prijave zagotavljajo celovito sledenje preverjanju pristnosti. Dogodki revizije prijave beležijo uspešne poskuse preverjanja pristnosti z identiteto uporabnika in podatki o viru. Dogodki revizije prijave, ki niso uspeli, označujejo neuspešne poskuse prijave, ki lahko predstavljajo napade ali težave s konfiguracijo.

Sledenje preverjanju pristnosti razkriva vzorce pri dostopu do baze podatkov. Spremljajte pogostost prijav, da odkrijete nenavadne dejavnosti. Več neuspešnih poskusov prijave, ki jim sledi uspešna prijava, lahko kaže na ogrožene poverilnice. Neuspešne prijave z nepričakovanih lokacij zahtevajo preiskavo.

7.3.2 Dostop do podatkov sledenja in njihove spremembe

Spremljajte dostop do podatkov z uporabo te konfiguracije:

  1. Ustvari novo sled.
  2. Razširi Security Audit.
  3. Izberite Dostop do objektov nadzorne baze podatkov.
  4. Vključi stolpce: Ime predmeta, Prijava, Besedilni podatki, DatabaseName.
  5. filtriraj Ime predmeta za spremljanje določenih občutljivih tabel.
  6. Začnite sledenje, da zajamete poskuse dostopa.

Sledenje SELECT, INSERT, UPDATE, DELETE zagotavlja celovito spremljanje sprememb podatkov. Zajemite dogodke SQL:BatchCompleted z ustreznimi filtri za spremljanje vseh operacij dostopa do podatkov. Filtrirajte po ObjectName ali TextData, da se osredotočite na občutljive tabele.

Dostop do občutljivih podatkov zahteva skrbno spremljanje, da se zagotovi skladnost z varnostnimi politikami. Ustvarite sledi posebej za tabele, ki vsebujejo osebne podatke, finančne podatke ali druge zaupne informacije. Redno pregledujte vzorce dostopa, da prepoznate neprimeren dostop do podatkov.

7.3.3 Prepoznavanje nedovoljenih dejavnosti

Zaznajte sumljive dejavnosti z analizo vzorcev poizvedb v zajetih sledovih. Poiščite nenavadne poizvedbe, ki se ne ujemajo z običajnim delovanjem aplikacije. Stavki SELECT brez stavka WHERE, ki pridobivajo celotne tabele, lahko kažejo na poskuse kraje podatkov.

Poskusi eskalacije privilegijev se pojavijo kot napake dovoljenj ali poskusi izvajanja skrbniških ukazov. Spremljajte poizvedbe, ki poskušajo dostopati do sistemskih tabel, spreminjati konfiguracijo strežnika ali ustvarjati privilegirane račune. Filtrirajte dogodke napak in preglejte stolpec TextData za sumljive dejavnosti.

7.4 Načrtovanje zmogljivosti in analiza delovne obremenitve

Določite izhodišča z zajemanjem reprezentativne delovne obremenitve med običajnim delovanjem. Izvedite sledenja med tipičnim delovnim časom, da razumete standardne vzorce dejavnosti. Shranite te sledi kot izhodišča delovanja za prihodnjo primerjavo.

Identifikacija največje obremenitve razkrije, kdaj je vaš sistem najbolj obremenjen. Zajemajte sledi v različnih časovnih obdobjih, vključno z delovnim časom, okni paketne obdelave in dejavnostmi po delovnem času. Analizirajte število dogodkov in porabo virov, da prepoznate obdobja največje obremenitve.

Vzorci izrabe virov izhajajo iz analize delovne obremenitve. Združite dogodke po časovnih intervalih, da si ogledate porazdelitev aktivnosti čez dan. Izračunajte skupne metrike CPU, V/I diska in trajanja, da količinsko opredelite porabo virov. Uporabite te podatke za načrtovanje nadgradenj zmogljivosti ali prepoznavanje priložnosti za optimizacijo.

8. Napredno SQL Server Tehnike profiliranja

8.1 Ustvarjanje sledi na strani strežnika s T-SQL

8.1.1 Uporaba sp_trace_create in sorodnih postopkov

Sledi na strani strežnika ustvarite programsko z uporabo shranjenih procedur T-SQL. Ta pristop omogoča avtomatizirano ustvarjanje in upravljanje sledi brez potrebe SQL Server Grafični vmesnik Profilerja.

Sled na strani strežnika definirajte s to vzorčno kodo:

  1. Deklariraj spremenljivke za ID sledi in pot do datoteke.
  2. Za ustvarjanje nove sledi pokličite sp_trace_create.
  3. Za dodajanje dogodkov in stolpcev uporabite sp_trace_setevent.
  4. Za konfiguracijo filtrov lahko uporabite sp_trace_setfilter.
  5. Za začetek sledenja pokličite sp_trace_setstatus.

Procedura sp_trace_create inicializira novo definicijo sledi. Določite pot izhodne datoteke, največjo velikost datoteke in možnosti prenosa. Procedura vrne ID sledi, ki se uporablja v nadaljnjih klicih procedure za konfiguriranje sledi.

Dodajte dogodke s proceduro sp_trace_setevent. Za vsako kombinacijo dogodka in stolpca, ki jo želite zajeti, določite ID sledenja, ID dogodka in ID stolpca. Za izgradnjo popolnih konfiguracij sledenja pokličite to proceduro večkrat.

Konfigurirajte filtre s proceduro sp_trace_setfilter. Določite ID sledenja, ID stolpca, logični operator, operator primerjave in vrednost filtra. Več klicev filtrov se združi, da ustvari kompleksne kriterije filtra.

Sledenje zaženete s klicem sp_trace_setstatus s statusno vrednostjo 1. Sledenje ustavite s klicem iste procedure s statusno vrednostjo 0. Definicije sledi izbrišete s klicem s statusno vrednostjo 2.

8.1.2 Prednosti sledenja na strani strežnika

Zaradi zmanjšanih stroškov odjemalca so sledenja na strani strežnika idealna za spremljanje produkcije. Strežnik baz podatkov obravnava vse operacije sledenja, ne da bi porabljal vire odjemalskega računalnika. Omrežna pasovna širina se ne porablja za prenos dogodkov v odjemalsko aplikacijo.

Samodejno izvajanje omogoča nenadzorovano zbiranje sledi. Sledi na strani strežnika se po ustvarjanju nadaljujejo, tudi če ni povezave odjemalca. Načrtujte ustvarjanje sledi prek SQL Server Naloge agentov za avtomatizirano spremljanje.

Nižji vpliv na zmogljivost je posledica obdelave na strani strežnika. Dogodki se zapisujejo neposredno na disk brez dodatne serializacije ali omrežnega prenosa. Upravljanje medpomnilnika optimizira V/I diska za boljšo splošno zmogljivost.

8.2 Funkcionalnost ponovnega predvajanja sledi

8.2.1 Zajemanje sledi za ponovno predvajanje

Sledi, pripravljene za ponovno predvajanje, ustvarite tako, da sledite tem korakom:

  1. Ustvarite novo sled z uporabo TSQL_Replay predlogo.
  2. Preverite, ali so izbrani vsi zahtevani dogodki in stolpci.
  3. Konfigurirajte sled za shranjevanje v datoteko.
  4. Sledenje zaženite med obdobjem delovne obremenitve, ki ga želite zajeti.
  5. Ustavi sledenje in shrani datoteko.

Zahtevani dogodki in stolpci zagotavljajo popolno ponovitev sledenja. Predloga TSQL_Replay vključuje vse potrebne vrste dogodkov in podatkovne stolpce. Manjkajoči obvezni elementi preprečujejo uspešno ponovitev, zato pri zajemanju za namene ponovnega predvajanja vedno uporabite to predlogo.

8.2.2 Ponovno predvajanje sledi

Zajete delovne obremenitve predvajajte s temi koraki:

  1. In SQL Server Profiler, kliknite file -> Odprto -> Datoteka sledi.
  2. Izberite datoteko sledi, pripravljeno za ponovno predvajanje.
  3. klik Ponovi -> Začetek.
  4. V pogovornem oknu za predvajanje se povežite s ciljnim strežnikom.
  5. Konfigurirajte možnosti ponovnega predvajanja, vključno z vrstnim redom in časom predvajanja.
  6. klik OK za začetek ponovnega predvajanja.
  7. Spremljajte napredek predvajanja v oknu stanja.

Možnosti konfiguracije ponovnega predvajanja nadzorujejo, kako SQL Server Profiler reproducira zajeto delovno obremenitev. Ponovno predvaja dogodke v vrstnem redu, v katerem so bili zajeti, da se ohranijo časovni odnosi. Konfigurirajte, ali naj se ohrani prvotni čas ali naj se dogodki ponovijo čim hitreje.

8.2.3 Primeri uporabe za ponovno predvajanje sledi

Testiranje obremenitve ima koristi od ponovnega predvajanja sledi, saj reproducira realistične delovne obremenitve. Zajemite sledi produkcijskih delovnih obremenitev in jih predvajajte v testnih sistemih, da preverite delovanje v dejanskih vzorcih uporabe. Prilagodite nastavitve sočasnosti, da simulirate različne ravni obremenitve.

Validacija migracije okolja zagotavlja, da lahko novi sistemi obvladujejo obstoječe delovne obremenitve. Zajemite sledi iz trenutnih produkcijskih sistemov in jih predvajajte na novi strojni opremi ali posodobljeni strojni opremi. SQL Server različice. Primerjajte meritve učinkovitosti delovanja, da preverite, ali selitve ne bodo poslabšale učinkovitosti delovanja.

Scenariji testiranja vključujejo regresijsko testiranje po spremembah kode, potrjevanje sprememb optimizatorja v SQL Server različice in konfiguracije strojne opreme za stresno testiranje. Replay zagotavlja dosledne, ponovljive delovne obremenitve za zanesljivo testiranje.

8.3 Integracija SQL Profilerja s svetovalcem za optimizacijo mehanizma baz podatkov

Ustvarite datoteke delovnih obremenitev za svetovalca za optimizacijo mehanizma baz podatkov (Database Engine Tuning Advisor) tako, da zajamete sledi z ustreznimi dogodki. Uporabite predlogo za optimizacijo, da zagotovite, da so zajeti vsi potrebni podatki za analizo.

Zaženite svetovalca za optimizacijo mehanizma baz podatkov in izberite datoteko sledenja kot vir delovne obremenitve. Svetovalec analizira zajete poizvedbe in priporoči indekse, indeksirane poglede ali strategije particioniranja, ki bi izboljšale delovanje.

Delovni tok za optimizacijo delovanja združuje zajemanje sledi z analizo optimizacije. Zajemite reprezentativne delovne obremenitve med normalnim delovanjem, analizirajte s svetovalcem za optimizacijo, preglejte priporočila, preizkusite predlagane spremembe v razvoju in na koncu implementirajte odobrene spremembe v produkciji.

8.4 Avtomatizacija zbiranja sledi

Načrtovanje sledi z uporabo SQL Server Naloge agentov za samodejno zbiranje podatkov. Ustvarite skripte T-SQL, ki definirajo sledi na strani strežnika z uporabo procedur sp_trace. Načrtujte izvajanje teh skriptov ob določenih časih ali intervalih.

Avtomatizacija PowerShella omogoča dovršene scenarije upravljanja sledenja. Napišite skripte PowerShella, ki ustvarjajo sledi, spremljajo njihovo stanje in obdelujejo zbrane podatke. Načrtujte skripte PowerShella prek razporejevalnika opravil ali SQL Server agent.

SQL Server Opravila agentov zagotavljajo zanesljivo načrtovano izvajanje. Ustvarite opravila, ki zaženejo sledenje na začetku obdobij spremljanja in ga ustavijo po končanem zbiranju podatkov. Konfigurirajte obvestila o opravilih, da opozorite skrbnike na napake.

8.5 Programsko analiziranje sledi

Preberite datoteke sledenja s T-SQL z uporabo funkcije fn_trace_gettable. Ta funkcija, ki vrne tabelarne vrednosti, razčleni datoteke sledenja in vrne podatke o dogodkih kot nabor rezultatov. Po teh podatkih poizvedite s standardnim T-SQL za izvedbo analize po meri.

Skripti za analizo po meri omogočajo avtomatizirano obdelavo sledi. Pišite poizvedbe, ki izračunajo združene statistične podatke, prepoznajo vzorce ali označijo anomalije. Načrtujte samodejno izvajanje teh skriptov po končanem zbiranju sledi.

Ustvarite poročila s poizvedovanjem po podatkih sledenja, shranjenih v tabelah. Ustvarite poglede, ki združujejo dogodke po časovnem obdobju, uporabniku ali aplikaciji. Zgradite rešitve za poročanje, ki zagotavljajo reden vpogled v dejavnost in delovanje baze podatkov.

9. SQL Server Najboljše prakse za profilerje

9.1 Najboljše prakse za doseganje uspešnosti

9.1.1 Zmanjšanje stroškov sledenja

Izberite le potrebne dogodke, da zmanjšate stroške sledenja. Vsaka dodatna vrsta dogodka poveča količino podatkov, ki jih mora obdelati mehanizem sledenja. Preglejte svoje cilje spremljanja in vključite le dogodke, ki so neposredno povezani s temi cilji.

Učinkovito uporabljajte filtre, da preprečite zajemanje nepomembnih podatkov. Filtrirajte po imenu baze podatkov, da izključite sistemske baze podatkov. Filtrirajte po trajanju, da zajamete le počasne poizvedbe. Filtrirajte po imenu aplikacije, da se osredotočite na določene aplikacije. Pravilno filtriranje drastično zmanjša stroške sledenja.

Premisleki na strani strežnika v primerjavi s stranjo odjemalca vplivajo na delovanje. Sledi na strani strežnika zapisujejo podatke neposredno na disk z minimalnimi stroški. Sledi na strani odjemalca prenašajo dogodke prek omrežja v vmesnik Profilerja, kar povečuje zakasnitev in porabo pasovne širine. Sledi na strani strežnika uporabite za spremljanje produkcije.

9.1.2 Optimizacija shranjevanja sledi

Upravljanje velikosti datotek preprečuje izčrpanost prostora na disku. Nastavite največje omejitve velikosti datotek, ki ustrezajo razpoložljivemu pomnilniku. Omogočite prenos datotek, da ustvarite več datotek namesto, da se ena datoteka neomejeno povečuje. Spremljajte prostor na disku med izvajanjem sledenja.

Shranjevanje v tabelah v primerjavi s shranjevanjem v datoteke vključuje različne kompromise glede zmogljivosti. Shranjevanje v datotekah ponuja boljšo zmogljivost med izvajanjem sledenja, ker zaobide mehanizem za shranjevanje. Shranjevanje v tabelah omogoča poizvedbe T-SQL za podatke sledenja, vendar doda stroške pisanja. Izberite vrsto shranjevanja glede na vaše analitične zahteve.

9.2 Najboljše varnostne prakse

Upravljanje dovoljenj nadzoruje, kdo lahko ustvarja in izvaja sledi. Dovoljenje ALTER TRACE podelite samo zaupanja vrednim uporabnikom, ki potrebujejo zmožnosti sledenja. Člani vloge sistemskega administratorja imajo neomejen dostop do sledenja. Redno pregledujte in revidirajte dovoljenja za sledenje.

Zaščita občutljivih podatkov zahteva skrbno konfiguracijo sledenja. Pri delu z občutljivimi podatki se izogibajte zajemanju celotnega besedila poizvedbe. Razmislite o filtriranju ali šifriranju izhodnih podatkov sledenja, ki vsebujejo zaupne informacije. Datoteke sledenja shranjujte na varnih mestih z ustreznimi kontrolami dostopa.

Varnost datotek sledenja preprečuje nepooblaščen dostop do zajetih podatkov. Nastavite dovoljenja za datoteke, da omejite dostop do datotek sledenja. Šifrirajte datoteke sledenja, če vsebujejo občutljive podatke. Po končani analizi izbrišite datoteke sledenja, da zmanjšate tveganje izpostavljenosti.

9.3 Premisleki glede produkcijskega okolja

9.3.1 Kdaj uporabiti Profiler v produkciji

Ocena tveganja določa, kdaj SQL Server Profiler je primeren za produkcijsko uporabo. Profiler uvaja merljive režijske stroške, ki se povečujejo z obsegom sledenja. Preden zaženete produkcijske sledi, ocenite, ali diagnostična vrednost upravičuje vpliv na zmogljivost.

Konfiguracije z minimalnim vplivom omogočajo varnejše sledenje produkciji. Uporabite visoko selektivne filtre za zajemanje le kritičnih dogodkov. Nastavite pragove trajanja, da prezrete hitro izvajajoče se poizvedbe. Med sejami odpravljanja težav omejite trajanje sledenja na kratka obdobja. Konfigurirajte sledenje na strani strežnika, da zmanjšate režijske stroške odjemalca.

9.3.2 Alternative za spremljanje proizvodnje

Razširjeni dogodki zagotavljajo nižje stroške spremljanja proizvodnje. Ta sodobna tehnologija ponuja boljšo zmogljivost in prilagodljivost kot SQL Server Profiler. Za dolgoročno produkcijsko uporabo migrirajte rešitve za spremljanje v Extended Events.

Query Store samodejno zajame podatke o učinkovitosti delovanja poizvedb brez ročne konfiguracije sledenja. Omogočite Query Store v produkcijskih bazah podatkov za sledenje statistiki izvajanja poizvedb skozi čas. Query Store ponuja večino zmogljivosti spremljanja učinkovitosti delovanja brez dodatnih stroškov sledenja.

Dinamični pogledi upravljanja ponujajo preprosto spremljanje za specifične scenarije. DMV-ji zagotavljajo informacije o trenutnem stanju brez zajemanja zgodovinskih dogodkov. Periodično poizvedujte v DMV-jih za spremljanje zdravja strežnika brez dodatnih stroškov neprekinjenega sledenja.

9.4 Najboljše prakse upravljanja sledi

Konvencije poimenovanja zagotavljajo, da so datoteke sledenja prepoznavne in organizirane. V imena datotek sledenja vključite datum, čas, ime strežnika in namen. Za lažje upravljanje in analizo uporabite dosledne vzorce poimenovanja v vseh sledeh.

Dokumentacija beleži konfiguracijo in namen sledenja. Dokumentirajte, katere dogodke ste zajeli, zakaj ste ustvarili sled in kaj ste se naučili iz analize. Vodite dnevnik sledenja, ki se izvaja v produkcijskih sistemih, za namene skladnosti in odpravljanja težav.

Pravilniki o hranjenju preprečujejo prekomerno kopičenje datotek sledi. Določite, kako dolgo naj se hranijo datoteke sledi glede na poslovne zahteve in zmogljivost shranjevanja. Avtomatizirajte brisanje starih datotek sledi, da sprostite prostor na disku. Pred brisanjem arhivirajte pomembne sledi v dolgoročno shrambo.

9.5 pogostih napak, ki se jim je treba izogibati

Prekomerno sledenje povzroča prekomerno obremenitev delovanja in ustvarja neobvladljive količine podatkov. Izogibajte se zajemanju vseh dogodkov brez filtrov. Začnite z ozkimi, osredotočenimi sledmi in razširite obseg le, kadar je to potrebno. Več podatkov ni vedno boljše za učinkovito odpravljanje težav.

Če pozabite ustaviti sledenje, se zapravljajo viri in zapolni prostor na disku. Sledenje vedno ustavite, ko je spremljanje končano. Nastavite omejitve trajanja sledenja ali največje velikosti datotek, da preprečite nepotrebne sledi. Redno spremljajte delujoče sledi in ustavite neaktivne ali nepotrebne sledi.

Če zanemarite optimizacijo filtrov, pride do slabe učinkovitosti in težavne analize. Preden začnete s sledenjem, vložite čas v konfiguriranje učinkovitih filtrov. Preizkusite filtre v razvojnih okoljih, da preverite, ali zajemajo pričakovane podatke. Preglejte in izboljšajte filtre na podlagi zajetih rezultatov.

10. Alternative SQL Server Profiler leta 2025

10.1 Razširjeni dogodki: Sodobna zamenjava

10.1.1 Kaj so razširjeni dogodki

Razširjeni dogodki predstavljajo SQL Serversodobna arhitektura za obravnavo dogodkov. Microsoft je ta sistem zasnoval posebej za obravnavo SQL Server Omejitve Profilerja, vključno z dodatnimi stroški delovanja in prilagodljivostjo konfiguracije. Razširjeni dogodki zagotavljajo celovite zmogljivosti spremljanja z bistveno manjšo porabo virov.

Arhitektura in prednosti ločijo razširjene dogodke od starejših tehnologij sledenja. Mehanizem dogodkov se globoko integrira v SQL ServerOsnovna arhitektura, ki zajema dogodke z minimalnimi stroški. Asinhrono shranjevanje dogodkov v medpomnilnik preprečuje, da bi spremljanje blokiralo delovanje baze podatkov. Prilagodljive možnosti ciljanja omogočajo raznolike konfiguracije izhoda.

Zaradi prednosti zmogljivosti so razširjeni dogodki idealni za spremljanje proizvodnje. Primerjalni testi kažejo, da razširjeni dogodki prinašajo 50–90 % manj režijskih stroškov kot enakovredne rešitve. SQL Server Sledi profilerja. Arhitektura se bolje prilagaja velikim količinam dogodkov in podpira več sočasnih sej spremljanja.

10.1.2 Selitev iz Profilerja na razširjene dogodke

Preslikava dogodkov se prevaja SQL Server Dogodki profilerja v enakovredne razširjene dogodke. Večina dogodkov profilerja ima ustrezne dvojnike razširjenih dogodkov. Microsoft ponuja dokumentacijo, ki preslikava pogoste dogodke med obema sistemoma.

Ustvarjanje sej v programu Extended Events zahteva učenje nove sintakse in konceptov. Seje dogodkov definirajte z uporabo stavkov T-SQL CREATE EVENT SESSION ali grafičnega vmesnika Extended Events v programu Management Studio. Seje določajo, katere dogodke je treba zajeti, katere podatke je treba zbrati in kam shraniti rezultate.

10.1.3 Razširjena orodja in vmesniki za dogodke

Uporabniški vmesnik SSMS Extended Events omogoča grafično upravljanje sej. Do razširjenih dogodkov dostopajte prek mape Upravljanje v Raziskovalcu objektov. Ustvarjajte, spreminjajte in spremljajte seje dogodkov prek vmesnika. Zajete podatke si oglejte v grafičnih oblikah, vključno z mrežami in grafikoni.

Upravljanje sej T-SQL omogoča programski nadzor razširjenih dogodkov. Za definiranje sej v kodi napišite stavke CREATE EVENT SESSION. Za spreminjanje delujočih sej uporabite ALTER EVENT SESSION. Zbrišite seje z DROP EVENT SESSION. Ta pristop omogoča avtomatizirane rešitve za spremljanje.

10.2 SQL Server Trgovina s poizvedbami

Query Store samodejno zajame podatke o učinkovitosti delovanja poizvedb za baze podatkov, kjer je omogočena. Ta funkcija spremlja načrte poizvedb, statistiko izvajanja in metrike učinkovitosti delovanja skozi čas brez ročne konfiguracije sledenja. Query Store hrani zgodovinske podatke, kar omogoča analizo trendov in zaznavanje regresije.

Spremljanje delovanja poizvedb v realnem času prek shrambe poizvedb razkriva trenutno delovanje sistema. Oglejte si nedavno izvedene poizvedbe, njihove načrte izvajanja in porabo virov. Prepoznajte poizvedbe z daljšim trajanjem ali spreminjajočimi se načrti izvajanja, ki lahko kažejo na težave.

Analiza zgodovinskih poizvedb omogoča primerjavo med časovnimi obdobji. Query Store hrani podatke o učinkovitosti delovanja za nastavljiva obdobja hrambe. Primerjajte trenutno učinkovitost delovanja z zgodovinskimi izhodišči za ugotavljanje regresij. Analizirajte trende učinkovitosti delovanja za napovedovanje prihodnjih potreb po zmogljivostih.

Uporabite Query Store, ko potrebujete samodejno in stalno spremljanje delovanja. Omogočite Query Store v produkcijskih bazah podatkov za nenehno spremljanje delovanja poizvedb. Query Store dopolnjuje odpravljanje težav na podlagi sledenja z zagotavljanjem zgodovinskega konteksta za težave z delovanjem.

10.3 Dinamični pogledi upravljanja (DMV)

Lažje spremljanje prek DMV-jev zagotavlja informacije o trenutnem stanju brez zajemanja zgodovinskih dogodkov. DMV-ji razkrivajo notranje SQL Server statistiko in metapodatke prek pogledov, v katerih je mogoče poizvedovati. Poizvedujte po DMV-jih z uporabo standardnih stavkov T-SQL SELECT.

Pogoste poizvedbe DMV za spremljanje delovanja vključujejo sys.dm_exec_query_stats za statistiko delovanja poizvedb, sys.dm_exec_requests za trenutno izvajane zahteve in sys.dm_os_wait_stats za statistiko čakanja. Ti pogledi zagotavljajo vpogled v stanje in aktivnost strežnika v danem trenutku.

DMV-ji dopolnjujejo spremljanje na podlagi sledenja z zagotavljanjem meritev v realnem času. Uporabite DMV-je za hitre preglede stanja in analizo trenutnega stanja. Združite poizvedbe DMV s podatki sledenja za celovite pristope k odpravljanju težav.

10.4 Orodja za spremljanje tretjih oseb

Komercialne alternative ponujajo izboljšane zmogljivosti spremljanja, ki presegajo SQL ServerVgrajena orodja. Izdelki ponudnikov, kot so SolarWinds, Redgate in Quest, ponujajo celovite funkcije spremljanja, opozarjanja in analize. Ta orodja pogosto združujejo več virov podatkov, vključno s sledmi, DMV-ji in števci učinkovitosti delovanja.

Primerjava funkcij razkriva prednosti različnih pristopov spremljanja. Orodja drugih ponudnikov ponujajo vrhunske uporabniške vmesnike, avtomatizirana opozorila in zgodovinske trende. SQL ServerVgrajena orodja ponujajo nič dodatnih stroškov in globljo integracijo. Ocenite orodja glede na vaše specifične zahteve in proračun.

10.5 Izbira pravega orodja za vaše potrebe

Matrika odločanja pomaga izbrati ustrezna orodja za spremljanje. Za ad-hoc odpravljanje težav, SQL Server Profiler ostaja dostopen in učinkovit. Za spremljanje produkcije zagotavljata Extended Events ali Query Store boljšo zmogljivost. Za celovito spremljanje podjetja rešitve drugih ponudnikov ponujajo največ funkcij.

Merila za izbiro orodij vključujejo stroške delovanja, enostavnost uporabe, zahteve glede hrambe podatkov in proračunske omejitve. Pri izbiri orodij upoštevajte strokovno znanje svoje ekipe. Znana orodja omogočajo hitrejše odpravljanje težav, tudi če novejše alternative ponujajo boljše funkcije.

Združite več orodij za celovite strategije spremljanja. Uporabite Query Store za neprekinjeno sledenje učinkovitosti delovanja, Extended Events za preiskavo specifičnih težav in DMV za preglede stanja v realnem času. Ta večplastni pristop zagotavlja robustno spremljanje brez prekomernih režijskih stroškov.

11. Odpravljanje težav SQL Server Težave s profilerjem

11.1 Pogoste težave s povezavo

Napake pri preverjanju pristnosti preprečujejo SQL Server Profilerju preprečite povezovanje s ciljnimi strežniki. Preverite, ali uporabljate pravilne poverilnice za izbrano metodo preverjanja pristnosti. Za preverjanje pristnosti sistema Windows je potrebno, da ima vaš račun Windows ustrezne SQL Server dovoljenja. SQL Server Za preverjanje pristnosti so potrebne veljavne prijavne poverilnice SQL.

Težave z omrežno povezljivostjo se kažejo kot napake časovne omejitve ali prekinitve povezave. Preverite SQL Server omogoča oddaljene povezave v svoji konfiguraciji. Preverite, ali nastavitve požarnega zidu dovoljujejo promet na SQL ServerPred odpravljanjem težav, specifičnih za Profiler, preizkusite osnovno povezljivost s programoma ping in telnet.

11.2 Težave z delovanjem Profilerja

Počasno izvajanje sledenja kaže na prekomerno obremenitev zaradi konfiguracije sledenja. Preglejte izbrane dogodke in odstranite nepotrebne. Dodajte filtre za zmanjšanje količine zajetih dogodkov. Razmislite o uporabi sledenja na strani strežnika za zmanjšanje obremenitve obdelave na strani odjemalca.

Visoka poraba virov vpliva na oboje SQL Server in odjemalca Profiler. Med izvajanjem sledenja spremljajte procesor in pomnilnik strežnika. Če so viri strežnika omejeni, povečajte selektivnost filtra ali skrajšajte trajanje zajemanja. Težave z viri odjemalca zahtevajo zapiranje drugih aplikacij ali nadgradnjo strojne opreme odjemalca.

11.3 Težave s sledilno datoteko in tabelo

Poškodovane datoteke sledi preprečujejo odpiranje v SQL Server Profiler. Poškodbe so običajno posledica nepazljivega prekinjanja sledenja ali napak na disku. Poskusite odpreti datoteko v urejevalniku besedil, da preverite, ali ni popolnoma poškodovana. Včasih je mogoče delne podatke obnoviti z uvozom v tabelo z uporabo funkcije fn_trace_gettable.

Težave z dostopom do tabele se pojavijo pri poskusu nalaganja sledi iz SQL Server tabele. Preverite, ali imate dovoljenje SELECT za tabelo sledenja. Preverite, ali tabela ni bila izbrisana ali preimenovana. Prepričajte se, da se povezujete s pravilnim strežnikom in bazo podatkov, ki vsebuje tabelo sledenja.

11.4 Manjkajoči dogodki ali nepopolni podatki

Napačna konfiguracija filtrov povzroči, da sledi ne zajamejo pričakovanih dogodkov. Pazljivo preglejte merila filtrov, da se prepričate, da ne izključujejo želenih dogodkov. Preizkusite filtre tako, da zaženete kratke sledi in preverite, ali zajeti podatki ustrezajo pričakovanjem. Začasno odstranite filtre, da ugotovite, ali povzročajo težavo.

Do prelivanja medpomnilnika pride, ko SQL Server Podatkov sledi ne morem zapisovati dovolj hitro, da bi sledil ustvarjanju dogodkov. To se običajno zgodi pri nefiltriranih sledeh med visoko aktivnostjo. Simptomi vključujejo manjkajoče dogodke ali opozorila »Dogodki niso bili zajeti«. Težavo odpravite z dodajanjem filtrov za zmanjšanje količine dogodkov ali povečanjem zmogljivosti V/I diska za lokacijo datoteke sledenja.

11.5 Zrušitve in napake profilerja

Pogosta sporočila o napakah vključujejo »Ni mogoče ustvariti sledi«, kar kaže na težave z dovoljenji ali omejitve virov. Sporočila »Sledenje je bilo ustavljeno« kažejo na napake sledenja na strani strežnika, verjetno zaradi stanja polnega diska. Napake »Neveljavna definicija sledi« kažejo na težave s konfiguracijo.

Strategije reševanja so odvisne od specifične napake. Napake dovoljenj zahtevajo, da uporabniku podelite dovoljenje ALTER TRACE. Napake virov zahtevajo sprostitev prostora na disku ali pomnilnika. Napake konfiguracije zahtevajo pregled in popravljanje nastavitev sledenja. Znova zaženite. SQL Server Profiler, če se ne odziva.

12. Praktično SQL Server Scenariji in primeri profilerjev

12.1 Scenarij 1: Prepoznavanje najpočasnejših poizvedb v vaši zbirki podatkov

Ta vodnik prikazuje zajemanje in analiziranje počasnih poizvedb.

Sled konfigurirajte tako, da sledite tem korakom:

  1. Zagon SQL Server Profiler in se povežite s ciljnim strežnikom.
  2. klik file -> Nova sled.
  3. V polje vnesite »Analiza počasnih poizvedb« Ime sledi področju.
  4. Izberite TSQL Iz Uporabite predlogo padajoči.
  5. klik Izbor dogodkov tab.
  6. klik Filtri stolpcev.
  7. Izberite Trajanje in vnesite 1000000 Večje ali enako.
  8. Izberite DatabaseName in vnesite ime svoje baze podatkov Kot.
  9. klik OK za zapiranje filtrov.
  10. Omogoči Shrani v datoteko in določite pot do datoteke.
  11. klik Run za začetek snemanja.

Sledenje izvajajte v času največje obremenitve vsaj 30 minut, da zajamete reprezentativno delovno obremenitev. Sledenje ustavite po zadostnem zbiranju podatkov.

Analizirajte rezultate po tem postopku:

  1. Kliknite Trajanje glava stolpca za razvrščanje po času izvajanja.
  2. Določite 10 najdlje trajajočih poizvedb.
  3. Za vsako poizvedbo preglejte Besedilni podatki stolpec.
  4. Kopirajte besedilo poizvedbe in ga prilepite v Management Studio.
  5. Uporaba Prikaz predvidenega načrta izvedbe za analizo poizvedbe.
  6. Poiščite preglede tabel, manjkajoče indekse ali neučinkovite združitve.
  7. pregled CPU, Berein Piše stolpci za vzorce porabe virov.

12.2 Scenarij 2: Odpravljanje napak zaradi zastoja

Ta primer prikazuje, kako zajeti in analizirati zastoje.

Konfigurirajte spremljanje zastojev s temi koraki:

  1. Ustvarite novo sled z imenom »Preiskava zastoja«.
  2. klik Izbor dogodkov tab.
  3. klik Prikaži vse dogodke.
  4. Razširi Ključavnice kategorija.
  5. Izberite Zaklepanje: Zaklepanje.
  6. Izberite Ključavnica: Veriga z zaklepom.
  7. Razširi Napake in opozorila kategorija.
  8. Izberite Poročilo o blokiranem procesu.
  9. Zagotoviti Besedilni podatki stolpec je izbran.
  10. klik Run za začetek spremljanja.

Ko med izvajanjem sledenja pride do zastoja, se v mreži sledenja prikaže dogodek Lock:Deadlock.

Informacije o zastoju interpretirajte tako, da sledite tem korakom:

  1. Kliknite Zaklepanje: Zaklepanje vrstica dogodkov.
  2. Poglej Besedilni podatki stolpec v spodnji plošči.
  3. Kopirajte vsebino XML iz TextData.
  4. Odprite Management Studio in ustvarite novo okno za poizvedbo.
  5. Prilepite XML v okno poizvedbe.
  6. Shranite datoteko s končnico .xdl.
  7. Odprite datoteko .xdl v programu Management Studio, da si ogledate graf zastojev.
  8. Graf prikazuje vključene procese, zaklenjene vire in izbrano žrtev.
  9. Preglejte poizvedbe iz obeh procesov, da razumete konflikt.

Koraki za razreševanje običajno vključujejo prerazporeditev operacij v kodi aplikacije za dostop do virov v doslednem vrstnem redu, zmanjšanje obsega transakcij ali implementacijo ustreznih namigov za zaklepanje.

12.3 Scenarij 3: Sledenje vsem poizvedbam iz določene aplikacije

Ta scenarij prikazuje spremljanje poizvedb, specifičnih za aplikacijo.

Sledenje, specifično za aplikacijo, konfigurirajte s temi koraki:

  1. Ustvarite novo sled z imenom »Sledenje poizvedb aplikacije«.
  2. Izberite Standardna predlogo.
  3. klik Izbor dogodkov tab.
  4. klik Filtri stolpcev.
  5. Izberite Ime aplikacije.
  6. Vnesite ime aplikacije v Kot področju.
  7. Če vaša aplikacija uporablja združevanje povezav, boste morda potrebovali ujemanje nadomestnih znakov.
  8. klik OK za uporabo filtra.
  9. Omogoči Shrani v tabelo za lažje poizvedovanje.
  10. klik Run za začetek snemanja.

Analiza vzorcev poizvedb razkriva, kako vaša aplikacija komunicira z SQL Server:

  1. Po zbiranju podatkov ustavite sledenje.
  2. Odprite Management Studio in se povežite s strežnikom s tabelo sledenja.
  3. Za analizo vzorcev izvedite poizvedbo v tabeli sledenja.
  4. Preštejte poizvedbe po vrsti, da vidite kombinacijo operacij.
  5. Določite najpogosteje izvedene poizvedbe.
  6. Poiščite poizvedbe, ki bi jih bilo mogoče predpomniti ali optimizirati.
  7. Preverite, ali se ponavljajo enake poizvedbe, ki kažejo na manjkajoče združevanje povezav.

12.4 Scenarij 4: Revidiranje dostopa do podatkov za skladnost s predpisi

Ta primer prikazuje ustvarjanje varnostne revizijske sledi.

Konfigurirajte varnostno revidiranje tako, da sledite tem korakom:

  1. Ustvarite novo sled z imenom »Varnostna revizijska sled«.
  2. klik Izbor dogodkov tab.
  3. klik Prikaži vse dogodke.
  4. Razširi Security Audit kategorija.
  5. Izberite Prijava v revizijo, Odjava iz revizije, Prijava v revizijo ni uspela.
  6. Izberite Dostop do objektov nadzorne baze podatkov.
  7. Razširi TSQL kategorija.
  8. Izberite SQL:BatchCompleted.
  9. klik Filtri stolpcev.
  10. filtriraj Ime predmeta za spremljanje določenih občutljivih tabel.
  11. Omogoči Shrani v tabelo za dolgoročno hrambo.
  12. Omogočite sledenje na strani strežnika za nenadzorovano delovanje.
  13. klik Run za začetek revizije.

Ustvarite revizijska poročila s poizvedovanjem v tabeli sledenja:

  1. Ustvarite poizvedbe, ki povzemajo dostop po uporabniku in časovnem obdobju.
  2. Prepoznajte nenavadne vzorce dostopa ali dejavnosti po uradnih urah.
  3. Dokumentirajte neuspešne poskuse prijave za varnostni pregled.
  4. Izvozite revizijske podatke v sisteme za poročanje za dokumentacijo o skladnosti.
  5. Arhivirajte dokončane revizijske sledi v skladu s pravilniki o hranjenju.

12.5 Scenarij 5: Zajemanje delovne obremenitve za testiranje zmogljivosti

Ta scenarij prikazuje zajem delovne obremenitve za namene testiranja.

Sledi, pripravljene za ponovno predvajanje, ustvarite s temi koraki:

  1. Ustvarite novo sled z imenom »Zajem delovne obremenitve«.
  2. Izberite TSQL_Replay iz spustnega menija predloge.
  3. Ta predloga vključuje vse zahtevane dogodke in stolpce za ponovno predvajanje.
  4. klik Izbor dogodkov tab.
  5. Če želite zajeti določene segmente delovne obremenitve, uporabite filtre.
  6. Omogoči Shrani v datoteko.
  7. Določite pot do datoteke z dovolj prostora na disku.
  8. Nastavite ustrezne omejitve velikosti datotek in omogočite premik miške.
  9. klik Run za začetek snemanja.

Zajem med reprezentativnimi poslovnimi operacijami. Za celovit zajem delovne obremenitve sledite več ur in zajemajte različne vzorce dejavnosti. Sledenje ustavite, ko zberete dovolj podatkov.

Analiza delovne obremenitve razkriva vzorce vedenja sistema:

  1. Odprite zajeto datoteko sledi v SQL Server Profiler.
  2. Preglejte porazdelitev dogodkov po vrsti in času.
  3. Izračunajte skupne metrike porabe virov.
  4. Prepoznajte obdobja največje aktivnosti in ozka grla virov.
  5. Uporabite sled za analizo s programom Database Engine Tuning Advisor.
  6. Ponovno predvajajte sled v testnih sistemih, da potrdite spremembe.

13. Zaznavanje poškodb podatkovne baze z SQL Server Profil

13.1 Uporaba SQL Server Profiler za zgodnje opozorilne znake korupcije

Poškodba podatkovne baze predstavlja eno najresnejših groženj celovitosti podatkov in zanesljivosti sistema. Medtem ko SQL Server Profiler ni namensko orodje za odkrivanje korupcije, temveč lahko zazna kritične opozorilne znake, ki kažejo na morebitne težave s korupcijo, ki zahtevajo takojšnjo preiskavo.

13.2 Kritični dogodki napak, ki kažejo na morebitno poškodbo

  • Napake resnosti 24 (823, 824, 825): Napake strojne opreme in medijev.
  • Napaka 605: Neuspešni poskusi pridobivanja strani
  • Napaka 8928 in 8929: Poškodba objekta

13.3 Sumljivo vedenje baze podatkov in vzorci opozoril

  • Ponavljajoče se časovne omejitve poizvedb za določene objekte
  • Kršitve dostopa in zrušitve aplikacij
  • Nenavadno združevanje napak

13.4 Zagon ukaza DBCC CHECKDB na podlagi ugotovitev profilerja

If SQL Server Če Profiler najde sumljive poškodbe, lahko z ukazom DBCC CHECKDB izvedete popolno preverjanje baze podatkov. Nato izvedite popravilo, če so poškodbe potrjene. Napisali smo obsežen vodnik za opravljanje teh nalog.

Če ukaz DBCC CHECKDB ne uspe popraviti baze podatkov, so poškodbe resne. V takem primeru se lahko zatečete k orodje za obnovitev SQL-ja drugega ponudnika.

14. Pogosta vprašanja

V: Je SQL Server Profiler je še vedno podprt v SQL Server 2022?

O: Da, SQL Server Profiler je še vedno vključen v SQL Server 2022 in SQL Server Management Studio, čeprav je od leta 2004 zastarel SQL Server 2016. Microsoft še naprej dobavlja orodje s trenutnimi različicami, vendar za nove izvedbe spremljanja priporoča selitev na razširjene dogodke. Orodje ostaja delujoče in se pogosto uporablja za odpravljanje težav in ad-hoc analizo.

V: Kakšna je razlika med SQL Server Profiler in sled SQL?

A: SQL Server Profiler je orodje z grafičnim uporabniškim vmesnikom, ki se poveže z mehanizmom za sledenje SQL, ki deluje znotraj SQL ServerSledenje SQL je osnovna tehnologija, ki dejansko zajema dogodke. Sledi lahko ustvarite z uporabo vmesnika Profilerja ali neposredno prek shranjenih procedur T-SQL, kot je sp_trace_create. Profiler omogoča lažjo konfiguracijo, medtem ko sledi T-SQL ponujajo več možnosti avtomatizacije.

V: Koliko režijske vrednosti za zmogljivost SQL Server Dodatek profilerja?

A: Vpliv na zmogljivost se razlikuje glede na konfiguracijo sledenja. Dobro filtrirana sled, ki zajema le določene dogodke, lahko doda 1–5 % režijskih stroškov. Slabo konfigurirane sledi brez filtrov lahko dodajo 20–50 % ali več režijskih stroškov, zlasti v obremenjenih sistemih. Sledi na strani strežnika imajo manjši vpliv kot sledi na strani odjemalca. Vedno uporabite filtre, da zmanjšate količino dogodkov, in sledi najprej preizkusite v neprodukcijskih okoljih.

V: Ali lahko tečem SQL Server Profiler na produkcijskih strežnikih?

O: Lahko tečeš SQL Server Profiler na produkcijskih strežnikih, vendar bodite previdni. Uporabljajte zelo selektivne filtre, omejite trajanje sledenja in dajte prednost sledenjem na strani strežnika, da zmanjšate vpliv. Po možnosti izvajajte produkcijske sledi v obdobjih z nizko aktivnostjo. Za neprekinjeno spremljanje produkcije razmislite o uporabi Extended Events ali Query Store, saj ponujata nižje stroške.

V: Katera dovoljenja potrebujem za uporabo SQL Server Profiler?

A: Za ustvarjanje in izvajanje sledi potrebujete dovoljenje ALTER TRACE. Člani fiksne strežniške vloge sysadmin imajo to dovoljenje samodejno. Za uporabnike, ki niso sysadmin, izrecno podelite dovoljenje ALTER TRACE. Poleg tega potrebujete ustrezna dovoljenja za shranjevanje podatkov sledenja v datoteke ali tabele glede na vašo konfiguracijo.

V: Zakaj ne morem videti vseh dogodkov v svoji sledi?

A: Manjkajoči dogodki so običajno posledica preveč omejevalnih filtrov ali preobremenitve medpomnilnika. Preverite konfiguracijo filtra in se prepričajte, da ne izključuje želenih dogodkov. Preobremenitev medpomnilnika se pojavi, ko SQL Server Dogodkov ne morem zapisovati dovolj hitro, običajno z nefiltriranimi sledmi v zasedenih sistemih. Dodajte filtre za zmanjšanje količine dogodkov ali povečanje zmogljivosti V/I diska. Preverite sporočila o napakah, ki kažejo, da dogodki niso bili zajeti.

V: Kako zajamem informacije o zastoju z SQL Server Profiler?

A: Ustvarite sled, ki vključuje dogodka Lock:Deadlock in Lock:Deadlock Chain iz kategorije Locks. Prepričajte se, da je izbran stolpec TextData, saj vsebuje XML grafa zastoja. Ko pride do zastoja, kopirajte XML iz stolpca TextData, ga shranite s pripono .xdl in ga odprite v SQL Server Management Studio za ogled grafičnega diagrama zastoja.

V: Kakšna je razlika med shranjevanjem sledi v datoteke in shranjevanjem v tabele?

A: Datoteke ponujajo boljšo zmogljivost med izvajanjem sledenja, ker zaobidejo SQL Server mehanizem za shranjevanje. Sledi datotek zapisujejo podatke neposredno na disk z minimalnimi stroški. Sledi tabel zapisujejo prek mehanizma za shranjevanje, kar dodaja stroške, vendar omogoča takojšnje poizvedbe T-SQL za podatke sledenja. Datoteke uporabite za scenarije, občutljive na zmogljivost, in tabele, ko morate poizvedovati po podatkih takoj med zajemanjem ali po njem.

V: Ali lahko avtomatiziram SQL Server Zbiranje sledi profilerja?

A: Da, avtomatizirajte zbiranje sledi z uporabo sledi na strani strežnika, ustvarjenih s shranjenimi procedurami T-SQL. Napišite skripte z uporabo sp_trace_create in sorodnih procedur, nato pa jih razporedite. SQL Server Opravila agenta. Ta pristop omogoča nenadzorovano zbiranje sledi po določenih urnikih. Skripti PowerShell ponujajo še eno možnost avtomatizacije za bolj zapletene scenarije.

V: Kako dolgo naj izvajam sledenje?

A: Trajanje sledenja je odvisno od vaših ciljev. Za odpravljanje specifičnih težav izvajajte sledenja med reprodukcijo težave, običajno 5–30 minut. Za analizo učinkovitosti delovanja zajemite vsaj eno uro med obdobji največje aktivnosti. Za analizo delovne obremenitve ali načrtovanje zmogljivosti zberite več ur v različnih časovnih obdobjih. Sledenja vedno ustavite, ko je spremljanje končano, da sprostite vire.

V: Kaj naj storim, če moja datoteka sledenja postane prevelika?

A: V lastnostih sledi omogočite prenos datotek med datotekami, da ustvarite več manjših datotek namesto ene velike datoteke. Nastavite največjo velikost datoteke, ki ustreza vašemu prostoru na disku in potrebam po analizi. Uporabite filtre za zmanjšanje količine zajetih dogodkov. Pri velikih sledih razmislite o analizi podatkov v segmentih, namesto da naložite celotno sled hkrati. Redno arhivirajte ali brišite stare datoteke sledi, da upravljate prostor na disku.

V: Kako najdem poizvedbe, ki povzročajo visoko porabo procesorja?

A: Ustvarite sled z dogodki SQL:BatchCompleted in RPC:Completed. Vključite stolpce CPU, Duration in TextData. Filtrirajte po Duration, da zajamete le poizvedbe, ki presegajo prag, kot je 1000 milisekund. Po zbiranju podatkov jih razvrstite po stolpcu CPU v padajočem vrstnem redu. Poizvedbe na vrhu porabijo največ procesorskega časa. Preglejte te poizvedbe za možnosti optimizacije, kot so manjkajoči indeksi ali neučinkovita logika.

V: Can SQL Server Načrti izvajanja poizvedb za zajemanje profilerjev?

A: SQL Server Profiler lahko zajame informacije o načrtu izvedbe prek dogodkov Showplan XML v kategoriji Performance. Izberite dogodke Showplan XML ali Showplan XML Statistics Profile, da zajamete celotne načrte izvedbe. Stolpec TextData vsebuje podatke o načrtu XML. Vendar pa za rutinsko analizo načrta izvedbe, SQL Server Funkcije grafičnega izvedbenega načrta v programu Management Studio ali shramba poizvedb ponujajo lažje alternative.

V: Katera je najboljša predloga za začetek splošnega spremljanja?

A: Standardna predloga ponuja dobro izhodišče za splošno spremljanje. Vključuje običajne dogodke izvajanja poizvedb, klice shranjenih procedur in sledenje napakam z uravnoteženimi stroški. Za spremljanje z manjšim vplivom, osredotočeno na delovanje poizvedb, uporabite predlogo TSQL. Prilagodite predloge glede na svoje specifične potrebe z dodajanjem filtrov in prilagajanjem izbire dogodkov, potem ko razumete osnove.

V: Kako sledim samo določeni aplikaciji ali uporabniku?

A: Za izolacijo določenih aplikacij ali uporabnikov uporabite filtre stolpcev. Za aplikacije filtrirajte po stolpcu ApplicationName z imenom, navedenim v nizu za povezavo. Za uporabnike filtrirajte po stolpcu LoginName z SQL Server prijavo ali ime računa Windows. Za dodatno zožitev fokusa združite več filtrov, na primer filtriranje po imenu aplikacije (ApplicationName) in imenu baze podatkov (BaseDatabaseName) za spremljanje dejavnosti ene aplikacije v določeni bazi podatkov.

15. Zaključek in naslednji koraki

15.1 ključnih zajtrkov

SQL Server Profiler ostaja dragoceno orodje za odpravljanje težav z bazami podatkov, kljub temu da je zastarel. Zaradi preprostega vmesnika in celovitega zajemanja dogodkov je idealen za hitre diagnostične seje, ko potrebujete takojšnje rezultate. Uporabite Profiler za odpravljanje določenih težav, analizo vedenja aplikacij in varnostne preglede.

Najboljše prakse vključujejo agresivno uporabo filtrov za zmanjšanje vpliva na zmogljivost, dajanje prednosti sledenju na strani strežnika za produkcijska okolja in omejevanje trajanja sledenja na potrebna obdobja. Izberite le bistvene dogodke in stolpce, da zmanjšate režijske stroške. Za boljšo zmogljivost med zajemanjem shranite sledi v datoteke namesto v tabele.

15.2 Naprej: Uporaba sodobnih orodij

Prehod iz SQL Server Profiler v Extended Events za dolgoročne rešitve spremljanja. Čeprav Profiler ostaja funkcionalen, vas vlaganje časa v učenje Extended Events pripravi na prihodnost SQL Server različice. Začnite s preprostimi sejami razširjenih dogodkov, ki podvojijo vaše običajne sledi Profilerja.

Omogočite Query Store v produkcijskih bazah podatkov za samodejno spremljanje delovanja brez ročne konfiguracije sledenja. Query Store neprekinjeno zajema načrte poizvedb in statistiko izvajanja ter zagotavlja osnovne podatke za analizo delovanja. Za celovito spremljanje združite Query Store s ciljno usmerjenimi sejami razširjenih dogodkov.

15.3 Dodatni viri

Naslednji viri vam bodo pomagali poglobiti vaše SQL Server Znanje o profilerjih in spremljanje najboljših praks spremljanja:

Uradna Microsoftova dokumentacija

Viri skupnosti

  • SQL Server Central – Članki, forumi in skripti za strokovnjake za baze podatkov
  • Stack Overflow SQL Server Oznaka – Vprašanja in odgovori skupnosti za specifična vprašanja o odpravljanju težav
  • Reddit r/SQLServer – Forum za razprave o SQL Server teme in nasveti
  • Forumi SQLServerCentral.com – Aktivne razprave skupnosti o profiliranju in zmogljivosti
  • MSDN SQL Server Forumi – forumi za podporo skupnosti, ki jih gosti Microsoft

Blogi in tehnični članki

  • SQL Server Performance Monitor – Namenska vsebina za spremljanje in optimizacijo delovanja
  • Brent Ozar Unlimited Blog – Najboljše prakse za optimizacijo in spremljanje delovanja
  • SQLSkills.com – Strokovna raven SQL Server vsebine vodilnih v panogi
  • Microsoft SQL Server Blog – Uradne posodobitve izdelkov in napovedi funkcij
  • Preprost pogovor – praktičen SQL Server vadnice in študije primerov

Usposabljanje in certificiranje

  • Microsoft Learn – Brezplačni spletni moduli usposabljanja za SQL Server
  • Microsoftov certifikat: skrbnik baze podatkov Azure – Uradna pot certificiranja
  • Pluralsight SQL Server Tečaji – Video usposabljanje o profiliranju in optimizaciji delovanja
  • Povezovanje učenja SQL Server Usposabljanje – Tečaji strokovnega izpopolnjevanja
  • Udemy SQL Server Tečaji uspešnosti – praktične možnosti usposabljanja

knjige

  • SQL Server Optimizacija učinkovitosti delovanja poizvedb – celovit vodnik za optimizacijo učinkovitosti delovanja
  • za SQL Server Notranjost – poglobljen vpogled SQL Server Arhitektura
  • SQL Server Izvedbeni načrti – Razumevanje optimizacije poizvedb
  • Strokovno indeksiranje uspešnosti za SQL Server – Oblikovanje in optimizacija indeksa
  • SQL Server Napredno odpravljanje težav in optimizacija delovanja – napredne diagnostične tehnike

Orodja in pripomočki

  • SQL Server Studio za upravljanje – Primarni vmesnik za SQL Server Profil
  • Azure DataStudio – Sodobno orodje za večplatformske baze podatkov
  • sp_WhoIsActive – Priljubljena shranjena procedura za spremljanje, ki jo je ustvarila skupnost
  • SQL Sentry Plan Explorer – brezplačno orodje za analizo izvedbenih načrtov
  • DBForge Studio – Zunanja stran SQL Server orodje za razvoj in administracijo

O Author

Yuan Sheng je višji administrator baz podatkov (DBA) z več kot 10 leti izkušenj na področju SQL Server okolja in upravljanje poslovnih baz podatkov. Uspešno je rešil na stotine scenarijev obnovitve baz podatkov v finančnih storitvah, zdravstvu in proizvodnih organizacijah.

Yuan je specializiran za SQL Server obnovitev baze podatkov, rešitve z visoko razpoložljivostjoin optimizacijo delovanja. Njegove bogate praktične izkušnje vključujejo upravljanje večterabajtnih baz podatkov, implementacijo Skupine razpoložljivosti Always Onin razvoj avtomatiziranih strategij varnostnega kopiranja in obnovitve za poslovne sisteme, ki so ključnega pomena za poslovanje.

Yuan se s svojim tehničnim znanjem in praktičnim pristopom osredotoča na ustvarjanje celovitih vodnikov, ki pomagajo skrbnikom baz podatkov in IT-strokovnjakom reševati kompleksne SQL Server učinkovito se spopada z izzivi. Vedno je na tekočem z najnovejšimi SQL Server izdaje in Microsoftove razvijajoče se tehnologije baz podatkov, pri čemer redno testira scenarije obnovitve, da zagotovi, da njegova priporočila odražajo najboljše prakse iz resničnega sveta.

Imate vprašanja o SQL Server obnovitev ali potrebujete dodatna navodila za odpravljanje težav z zbirko podatkov? Yuan pozdravlja povratne informacije in predlogi za izboljšanje teh tehničnih virov.

Skupna raba zdaj: