Skip to content
App Stretch
  • Home
  • / Articles
  • /
  • SQL Server övervakningsverktyg

SQL Server övervakningsverktyg

februari 24, 2022Articles
seriesamling / sql-server /varningar /DBMS / sql / microsoft

i Del 1 av denna serie täckte vi ett antal funktioner som SQL Server tillhandahåller för att optimera resursanvändningen. Du kan till exempel justera hur dina frågesatser sammanställs, konfigurera buffertcachen så att den spolas med olika intervall och skapa minnesoptimerade tabeller. För att få ut det mesta av dessa funktioner krävs att du får insikter i realtid om SQL Servers hälsa och prestanda. Här undersöker vi SQL Server-övervakningsverktyg inom inbyggda funktioner och vanliga applikationer, inklusive:

  • T-SQL-frågor: använd SQL Servers frågespråk för att samla internt insamlade data
  • SQL Server Management Studio (SSMS): få realtidsvyer i ditt system, diagram över T-SQL-frågor och on-demand-rapporter
  • Performance Monitor: Korrelera mätvärden från SQL Server med data från dina Windows-värdar

SQL Server-övervakningsverktyg kan hjälpa dig att komma åt de mätvärden som vi diskuterade i Del 1. Några av dessa verktyg rapporterar samma mätvärden, och du kanske föredrar ett gränssnitt framför det andra. Du kan till exempel använda antingen Prestandaövervakaren eller T-SQL-frågorna för att hämta mätvärden från SQL Servers prestandaräknare. Du kan välja realtidsdiagrammen för den tidigare kontra förmågan att skriva den senare. I det här inlägget förklarar vi hur du använder SQL Server-övervakningsverktyg för att få en omfattande bild av din databasinfrastruktur.

  • använda T-SQL-frågor
  • dynamiska hanteringsvyer
  • inbyggda funktioner
  • system lagrade procedurer
  • systemdatasamlingsuppsättningar
  • SQL Server Management Studio
  • Aktivitetsmonitor
  • visualisera frågor
  • rapporter
  • Prestandamonitor
  • Richer realtid SQL Server övervakningsverktyg

använda T-SQL-frågor

du kan övervaka SQL Server genom att använda sitt eget frågespråk, T-SQL, för att samla mätvärden. T-SQL-frågor är flexibla. Du kan köra dem med ett grafiskt hanteringsverktyg som SSMS eller ett kommandoradsverktyg som sqlcmd. Och eftersom de körs och returnerar data precis som alla andra databasfrågor kan du enkelt integrera dem i en hemodlad automatiserad övervakningslösning. I det här avsnittet visar vi hur T-SQL-frågor kan vara ett kraftfullt verktyg för SQL Server-övervakning, oavsett om du använder dynamiska hanteringsvyer, inbyggda funktioner, lagrade procedurer eller systemdatasamlingssatser.

dynamiska hanteringsvyer

SQL Server spårar data om sin egen hälsa och prestanda och gör denna information tillgänglig via dynamiska hanteringsvyer (DMV). Eftersom DMV: er visas som virtuella tabeller, lämpar de sig för både ad hoc och automatiserad fråga. Vissa DMVs returnerar det aktuella värdet för ett mätvärde eller en inställning (t. ex., den aktuella storleken på transaktionsloggen i megabyte). Andra, särskilt mätvärdena för priser inom prestandaräknarna DMV, mäter värden med jämna mellanrum och tar skillnaden mellan på varandra följande prover (t.ex. batchförfrågningar per sekund). Du kan läsa om specifika DMV i SQL Server-dokumentationen.

om du övervakar SQL Server med dynamiska hanteringsvyer vill du förmodligen fråga prestandaräknarna DMV, sys.dm_os_performance_counters. Varje SQL Server-prestandaobjekt (som kan representera allt från en databas till plancachen) upprätthåller sin egen uppsättning prestandaräknare, som kartlägger många av de kategorier av mätvärden som diskuteras i Del 1: SQL-statistik, lås och bufferthanteraren.

du kan till exempel fråga prestandaräknarna DMV för att visa data från buffer manager performance-objektet och begränsa resultaten till mätvärden med icke-nollvärden:

SELECT object_name, counter_name, cntr_value FROM sys.dm_os_performance_counters WHERE object_name="SQLServer:Buffer Manager" AND cntr_value != 0;GO

du får ett resultat som liknar detta (men med många fler rader!):

object_name counter_name cntr_value---------------------------------------------------------------------------------------SQLServer:Buffer Manager Buffer cache hit ratio 30SQLServer:Buffer Manager Buffer cache hit ratio base 30SQLServer:Buffer Manager Page lookups/sec 11091500SQLServer:Buffer Manager Database pages 5819SQLServer:Buffer Manager Target pages 212992SQLServer:Buffer Manager Integral Controller Slope 10

du kan hitta en lista över tillgängliga dynamiska hanteringsvyer organiserade efter kategori här. Inom varje kategori är vyerna olika – medan vissa beräknar prestandamått och utgångsnummer, andra rapporterar namn och egenskaper. Du kan lista SQL Server-noderna i ett kluster, hämta indexanvändningsdata och få statistik för dina exekveringsplaner som slutförandetid och resursanvändning. Och eftersom dynamiska hanteringsvyer fungerar som tabeller kan du använda inbyggda funktioner för att aggregera och rangordna data.

det är viktigt att kontrollera dokumentationen för alla DMV du planerar att använda. En anledning är att DMV: er kräver olika behörigheter, och dokumentationen för varje DMV förklarar den önskade nivån. En annan anledning är att DMV: er kan innehålla tusentals rader och kolumner kan ändras med nya versioner av SQL Server.

inbyggda funktioner

SQL Server innehåller också inbyggda funktioner som hjälper dig att komma åt systeminformation. Till skillnad från dynamiska hanteringsvyer, som returnerar data i form av virtuella tabeller, returnerar inbyggda funktioner systemdata som enskilda numeriska värden, beräknade sedan servern senast startades. Du kan ringa varje inbyggd funktion som argumentet för ett SELECT – uttalande. Du kan till exempel använda den inbyggda funktionen @@connections för att returnera summan av framgångsrika och misslyckade anslutningar över tiden:

SELECT @@connections AS "Total Connections";GO

du får utdata som liknar:

Total Connections----------------- 1571

inbyggda funktioner liknar ibland dynamiska hanteringsvyer. @@connections liknar räknaren User Connections i objektet allmän statistik. Men medan User Connections spårar antalet för närvarande anslutna användare, ökar @@connections varje gång en användare försöker logga in (även om försöket misslyckas).

den enda inbyggda systemstatistikfunktionen som inte returnerar ett enda numeriskt värde är sys.fn_virtualfilestats, som returnerar en tabell med data på disk I/O för databasfiler och ger samma information som sys.dm_io_virtual_file_stats dynamisk hanteringsvy.

system lagrade procedurer

Redaktörens anmärkning: SQL Server använder termerna” master ” för att identifiera sin primära databas. Datadog använder inte denna term.

en annan inbyggd funktion som du kan använda för att fråga mätvärden är den systemlagrade proceduren. De flesta lagrade procedurer hjälper till med administrativa uppgifter som att bifoga en databas eller lägga till en inloggning, men vissa lagrade procedurer rapporterar mätvärden. Till exempel mäter sp_spaceused diskförbrukning i en databas. Du ringer system lagrade procedurer med EXEC snarare än SELECT uttalanden. Detta kommando anropar sp_spaceused lagrad procedur, som returnerar diskanvändningsinformation som två resultatuppsättningar (det vill säga två tabellrader, varje rad inklusive olika kolumner):

EXEC sp_spaceused;GO

utgången kommer att ha ett liknande format som följande:

database_name database_size unallocated space--------------- ----------------- ---------------------master 6.00 MB 0.52 MBreserved data index_size unused--------------- ----------------- ------------------ ------------3568 KB 1536 KB 1600 KB 432 KB

systemdatasamlingsuppsättningar

om du använder T-SQL-frågor för att samla in mätvärden från SQL Server och du vill kunna lagra data och generera rapporter kan du överväga att använda SQL Servers samlingsuppsättningar. En samlingsuppsättning hämtar data från en rad rapporteringskommandon och dynamiska hanteringsvyer och skickar data till en dedikerad databas som kallas ett Hanteringsdatalager.

processen bygger på SQL Server Integration Services för att automatisera uppgiften att fråga databasen och skriva resultaten till Hanteringsdatalagret.

till exempel, från och med SQL Server 2008, frågar diskanvändningssamlingssatsen sys.dm_io_virtual_file_stat dynamisk hanteringsvy och andra vyer som sys.partitions och sys.allocation_units. Du kan också skapa en anpassad samling uppsättning som corrals en sekvens av T-SQL-frågor i ett periodiskt jobb som körs i bakgrunden. Du kan läsa mer om hur du konfigurerar Data Management Warehouse här.

SQL Server Management Studio

SQL Server Management Studio (SSMS) är en grafisk miljö som hjälper dig att övervaka ditt system på flera sätt:

  • livestatistik i Aktivitetsövervakaren
  • en datarik karta över en given fråga
  • rapporter som kombinerar tabeller, diagram och text i ett skrivarvänligt format

om du vill använda SSMS måste du ladda ner den på en av dina värdar, öppna installationsprogrammet och följa anvisningarna. Programvaran kan övervaka fjärrinstanser av SQL Server, inklusive alla instanser som körs på Linux. För att ansluta till en värd, navigera till ”Arkiv” – menyn och klicka på ”Anslut Object Explorer.”I den dialog som följer anger du värden och porten i fältet ”servernamn”, i formatet 0.0.0.0,0000 (notera kommatecken). Välj ”SQL Server Authentication” i rullgardinsmenyn”Authentication” och fyll i användarnamnet (”logga in”) och lösenordet.

SQL Server övervakningsverktyg: ange en fjärrvärd i SSMS

om du har anslutit framgångsrikt ser du fönstret ”Object Explorer” fylla i ett filträd som visar komponenterna i din SQL Server-instans, inklusive databaser. Du kommer då att kunna övervaka din instans med funktionerna som visas nedan.

Aktivitetsmonitor

Aktivitetsmonitorn gör det möjligt att visa SQL Server-mätvärden i realtid, med ett galleri med grafer, en översikt över processer och statistik om dina frågor. Om du redan använder SSMS för hanteringsuppgifter som att konfigurera resurspooler eller skapa tabeller är Aktivitetsövervakaren lätt att lägga till i ditt arbetsflöde. För att använda Aktivitetsmonitorn, skriv ”Ctrl-Alt-A” eller klicka på ikonen i SSMS-verktygsfältet.

SQL Server övervakningsverktyg: Aktivitetsövervakningsfönster

du kan använda Aktivitetsövervakaren för att få insikter i realtid om efterfrågan på din SQL Server-instans. Avsnittet ”Översikt” visar fyra grafer som visar arbets-och resursmått i realtid. Som standard uppdateras dessa mätvärden var 10: e sekund, men du kan uppdatera uppdateringsintervallet genom att högerklicka på rutan ”översikt”. Medan uppdateringsintervallet kan vara så frekvent som en gång per sekund, kommer detta med prestandakostnaden för mer frekventa databasfrågor.

fönstret ”senaste dyra frågor” i Aktivitetsmonitorn kan hjälpa till att ge den information du behöver för att göra dina frågor mer effektiva. Här hittar du frågerelaterade mätvärden som avrättningar per minut, fysiska läsningar per sekund och antalet dubbletter av en exekveringsplan i cachen. Om en enda exekveringsplan har ett stort antal dubbletter eller avrättningar per minut kan du kanske öka prestandan genom att använda frågetips som diskuteras i Del 1.

Aktivitetsövervakaren ger en bekväm översikt över din databas på hög nivå, men den har sina gränser. För det första kan du inte justera storleken på graferna eller mätvärdena som de visar. Du kan inte heller ändra hur Aktivitetsövervakaren aggregerar sin statistik för frågeprestanda eller visa data utöver det förinställda visningsfönstret.

visualisera frågor

SSMS kan hjälpa dig att optimera frågeprestanda genom att du kan visualisera hur SQL Server utför sina frågeplaner och visar resursanvändningen i samband med att utföra varje steg i en frågeplan. Som vi diskuterade i Del 1 sammanställer SQL Server satser av T-SQL-satser genom att använda en automatisk optimerare för att omvandla batchen till en exekveringsplan. Du kan inspektera en exekveringsplan i SSMS som ett diagram över beräkningssteg och ta reda på exakt hur optimeraren tolkade din sats. För att visualisera en fråga, navigera till Aktivitetsmonitorns” senaste dyra frågor ”-fönster, högerklicka på en av frågorna och klicka på ” Visa Exekveringsplan.”Utsikten som följer kommer att se ut så här:

SQL Server övervakningsverktyg: Diagram över en frågeplan i SQL Server

om du för muspekaren över en nod i diagrammet, du kan se en kort förklaring av steget noden representerar, samt en snabb avläsning av nodens ”beräknade Operatörskostnad.”Detta värde beräknas av SQL Server optimizer när du kör frågan. Eftersom optimeringsprocessen är automatisk ger detta dig ett sätt att kontrollera att dina satser har sammanställts som avsedda. Och eftersom varje steg i exekveringsplanen görs efter kostnad kan du se vilka steg du bör fokusera på om du vill öka prestandan.

i det här exemplet kan vi se att Compute Scalar (konvertera en sträng till en flottör) är minimal, med nollkostnad i exekveringsplanen. Den mest kostsamma operationen är en optimeringsteknik, bordspolning, som kopierar rader till ett dolt tillfälligt bord.

rapporter

SSMS erbjuder 20 standardrapporter som ger en hög höjd undersökning av din SQL Server-distribution, Allt från databasens resursanvändning till historiska data om schemaändringar och databas konsekvens. Du kan hitta en detaljerad uppdelning av rapporterna här.

SQL Server övervakningsverktyg: ett exempel på en SQL Server Management Studio rapport

rapporter fixas i layout och innehåll—de visar tillgängliga data när du skapar rapporten, istället för att uppdateras i realtid. Interaktiviteten i standardrapporterna är begränsad. Du kan sortera vissa tabeller efter kolumn och expandera andra när information är kapslad. Den fasta layouten gör det enkelt att skapa utskrifter eller dokument (PDF, Word och Excel).

i 2017 lade Microsoft till rapporten Performance Dashboard, som visar CPU-användning, nuvarande antal användarsessioner och annan systeminformation för SQL Server-instanser.

för att skapa en rapport, högerklicka på namnet på en databas i Object Explorer, muspekaren över ”rapporter” och sedan över ”standardrapporter” och välj en rapport från menyn.

om du inte hittar den vy du behöver från SSMS-standardrapporterna kan du skapa en anpassad rapport. Anpassade rapporter skrivs i Report Definition Language (RDL), en förlängning av XML. När du har angett strukturen för en anpassad rapport kan du fylla i den från menyn ”Rapporter” genom att klicka på ”anpassade rapporter.”Dessa förblir separata från listan över standardrapporter.

det är också värt att notera att Microsoft har utvecklat flera verktyg för att skapa grafiska rapporter som går utöver SSMS-funktionaliteten. Power BI kan visualisera data från ett antal källor, inklusive SQL Server, och levereras med en mer fullfjädrad uppsättning visuella redigeringsverktyg. SQL Server Reporting Services (SSRS) är ett grafiskt rapporteringsverktyg utformat för SQL Server som kan generera paginerade, PDF-klara rapporter samt datavisualiseringar för Mobila enheter och webben.

Prestandamonitor

Windows Performance Monitor hjälper dig att visualisera resursanvändning på systemnivå från dina Windows-värdar och gör att du kan korrelera dessa mätvärden med SQL Server-prestandaräknare i tidsseriegrafer.

SQL Server övervakningsverktyg: Prestandaövervakningsdiagram som visar procent processortid

Performance Monitor är inbyggd i Windows-operativsystemet. För att använda det, öppna fönstret Kör från Start-menyn och ange programnamnet perfmon. En realtidsdiagram visas i navigeringsträdet under ”övervakningsverktyg.”Du kan sedan välja SQL Server performance counters och system resource metrics du vill plotta och använda alternativen för att utforma dina grafer.

välja SQL Server-prestandaräknare som ska visas i Performance Monitor

Richer realtid SQL Server övervakningsverktyg

i det här inlägget, Vi har visat hur man använder SQL Server övervakningsverktyg och inbyggda funktioner för att generera realtid översikter av dina databaser samt att få detaljerad, on-demand data om SQL Server hälsa och prestanda.

i nästa del av den här serien visar vi dig hur du använder Datadog för att samla in, grafera och varna i realtid och historiska SQL Server-mätvärden. Vi visar också hur du ställer in instrumentpaneler med dra-och-släpp-visualiseringar och korrelerar SQL Server-mätvärden med data från hela stacken.

Write a Reply or Comment Avbryt svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *

Senaste inläggen

  • Auto glas och vindruta ersättning i Tempe
  • Stu Shea, 2020 Wash100 vinnare, kommentarer till Peratons COVID-19 hjälpinsatser
  • Den flickans blogg: ta anteckningar för Hand
  • Vad ska man göra när man tänker på skilsmässa
  • den $3 Trader Joe ’ s frys gången Hitta mina barn ständigt ber mig att göra
  • Deutsch
  • Nederlands
  • Svenska
  • Norsk
  • Dansk
  • Español
  • Français
  • Português
  • Italiano
  • Română
  • Polski
  • Čeština
  • Magyar
  • Suomi
  • 日本語
  • 한국어

Arkiv

  • mars 2022
  • februari 2022
  • januari 2022
  • december 2021

Copyright App Stretch 2022 | Theme by ThemeinProgress | Proudly powered by WordPress