sql >> Databasteknik >  >> RDS >> Sqlserver

Samla in prestandadata med verktyget SQLDiag | Felsökning av SQL Server-prestanda -6

Hej,

Jag kommer att fortsätta att förklara hur man felsöker prestandaproblem för SQL Server i den här artikelserien.

Felsökning av SQL-serverprestanda

Läs tidigare artikel innan detta.

SQL Server Performance Felsökning -5 Använda SQL Server Profiler

Samla in prestandadata med verktyget SQLDiag

Det finns olika verktyg för att identifiera långsamheten och problemen som uppstår i SQL Server-databaser. Vissa av dessa verktyg kommer med SQL Server, medan några av verktygen behöver installeras extra. Dessa verktyg är följande.

  1. SQL Server Profiler
  2. Performance Monitor ( Perfmon )
  3. SQLDIAG
  4. PSSDIAG
  5. RML-verktyg
  6. Prestandaanalys av loggar (PAL)
  7. SQL Nexus

Jag kommer att samla in prestandadata på en exempeldatabas som jag skapade med verktyget SQLDIAG. Tja, vilken prestandadata kan vi samla in med SQLDIAG?

Med SQLDIAG kan du samla in följande data.

  1. TOPP SQL enligt CPU, Memory och IO
  2. Värden för Windows och SQL Server-räknare (Disk, Minnesläsning/skrivning).
  3. SQL-serverinstanskonfiguration.
  4. Windows händelseloggar och SQL Server-loggar.

Låt oss nu gå till att skapa en databas med namnet TestDatabase och skapa en tabell med namnet testtable på min lokala dator, i mitt fall med namnet MYTESTINSTANCE. Jag kommer att skapa exempeltransaktioner i min TestDatabase-databas.

Exempelskriptet för TestDatabase databasen och TestTable tabellen är följande.

use master
go
create database TestDatabase
go
use TestDatabase
create table testtable(
col1 int identity(1,1) not null,
col2 datetime null
)
use TestDatabase
alter table testtable add constraint DF_testtable_col2 default (getdate()) for col2
go





När du kör det här skriptet framgångsrikt ska databasen med namnet TestDatase och tabellen med namnet testtable skapas i den lokala instansen MYTESTINSTANCE enligt följande.

Skapa en parameterfil som heter Configuration.xml som indata för SQLDIAG-verktyget för att läsa de nödvändiga prestandavärdena. I denna parameterfil specificerade jag tillägget av ovanstående parametrar med pil enligt följande. Du kan ladda ner SQLDiag Configuration Tool genom att klicka på den här länken.

Jag kommer att utse denna Configuration.xml-fil som en indata till SQLDIAG-verktyget, så jag flyttar den här filen under C:\ Program Files \ Microsoft SQL Server \ 100 \ Tools \ Binn.

Filen configuration.xml har samma sökväg som verktyget SQLDIAG.exe enligt följande.

Nu, med SQLDIAG-verktyget, kommer jag att använda filen Configuration.xml som indata och samla in prestandadata för TestDatabase-databasen.

Öppna kommandotolken och gå till sökvägen där SQLDIAG-verktyget finns.

Efter att ha gått till sökvägen där sökvägsverktyget för SQLDIAG är, starta processen med att samla in prestandadata i 15 minuter, och ge Configuration.xml-filen som indata och utdatafilen till D:\ SQL_DIAG_OUTPUT sökväg som följer.

SQLDIAG Code:

SQLdiag /I Configuration.xml /O "D:\SQL_DIAG_OUTPUT" /E +00:15:00

När du kör ovanstående kod måste den efter att ha väntat ett tag indikera att processen har startat Datainsamling enligt följande

Jag har kört några exempel på transaktioner som att följa för att se i SQLDiag.

När du går till sökvägen D:\ SQL_DIAG_OUTPUT, där du matar ut utdatafilen enligt följande, kan du se att många spårningsfiler har skapats enligt följande:

När du öppnar kommandotolken efter 15 minuter kan du se att datainsamlingen slutförs enligt följande.

I min nästa artikel kommer jag att läsa data som jag samlade in i den här artikeln med verktyget RML Utility och visa kostsamma frågor och allmän information om databasen i en rapport.

Vill du lära dig Microsoft SQL Server DBA-handledningar för nybörjare, läs följande artiklar.

SQL Server ( MSSQL DBA ) Databashandledning för nybörjare Databasadministratörer


  1. Vad är en bitmappshögavsökning i en frågeplan?

  2. Hur man väljer ett visst antal tecken från vänster eller höger om en sträng i SQL Server

  3. Virtualmin:Du har inte tillgång till den här MySQL-databasen efter att ha ändrat lösenord

  4. Många-till-många relationer exempel