Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

Monitorare il database SQL tramite SP_WhoIsActive o FogLight | Risoluzione dei problemi relativi alle prestazioni di SQL Server -1

Ciao,

Spiegherò come risolvere i problemi di prestazioni di SQL Server in questa serie di articoli.

Risoluzione dei problemi relativi alle prestazioni di SQL Server

Si prevede che risolva i problemi di prestazioni da parte del DBA (Amministratore database) quando i problemi di prestazioni nel database di SQL Server iniziano ad aumentare. Prima di poter risolvere il problema di prestazioni, è necessario determinare qual è il problema e perché si verifica.

Monitoraggio del database di SQL Server tramite SP_WhoIsActive

È necessario utilizzare una o più delle seguenti azioni per identificare il problema.

  1. Monitoraggio del database tramite SP_WhoIsActive o FogLight ecc. Software di terze parti
  2. Monitoraggio del database e delle istanze tramite Monitoraggio attività
  3. Monitoraggio dei contatori delle prestazioni tramite PERFMON ed esaminare lo stato del carico
  4. Esaminare il file di log degli errori di SQL Server
  5. Utilizza DMV (Dynamic Management View) e DMF (Dynamic Management Function) per analizzare il database in dettaglio
  6. Esaminare le attività in tempo reale in un database utilizzando SQL Server Profiler
  7. Esaminare il database in dettaglio e creare report tramite SQLDIAG e lo strumento RML Utilities
  8. Risoluzione dei problemi di prestazioni

Monitoraggio del database tramite FogLight

Il DBA (Amministratore del database) dovrebbe eseguire il monitoraggio in tempo reale del database per sempre. È possibile eseguire il monitoraggio in tempo reale del database tramite software di monitoraggio in tempo reale come FogLight o procedure archiviate come SP_WhoIsActive.

Foglight fornisce la GUI e alcuni utili monitoraggio e avvisi in tempo reale. Ma non è gratuito e se pensi alla tua azienda e se hai molti database critici, ti consiglio di utilizzare questo software per monitorare il database in tempo reale.

Ma se non c'è un budget per questo e la tua azienda non è grande. Non usarlo perché è molto costoso.

Ti consiglio di creare SP_WhoIsActive e monitorare il database tramite questa stored procedure. La stored procedure SP_WhoIsActive, scritta da Adam Mechanical, è disponibile gratuitamente e fornisce informazioni sulle sessioni di sessione correnti e sugli SQL. Dopo aver creato SP_WhoIsActive manualmente nel database, puoi eseguirlo come segue.

Puoi esaminare le seguenti caratteristiche critiche e importanti di qualsiasi sessione tramite SP_WhoIsActive.

  • Testo SQL
  • Attendere informazioni
  • Stato della sessione di blocco
  • Utilizzo CPU
  • allocazione TempDB
  • Durata della sessione e ora di accesso
  • Nome di accesso e nome della macchina
  • Percentuale di completamento
  • Stato

Puoi scaricare l'ultimo SP_WhoIsActive utilizzando questo link.

Scarica SP_WhoIsActive e copia e incolla questi SP in SSMS (SQL Server Management Studio) ed esegui e crea SP_WhoIsActive, quindi puoi usarlo.

Esaminare il file di log degli errori di SQL Server

Gli errori che si verificano nelle istanze di SQL Server possono essere trovati esaminando i log degli errori. Puoi vedere i log degli errori dal database come segue.

Se non riesci ad accedere a Instance , puoi trovare i file Errorlog nel percorso predefinito di seguito.

C:\Program Files\Microsoft SQL Server\MSSQL12.MSSQLSERVER\MSSQL\Log

Continuerò a spiegare Risoluzione dei problemi relativi alle prestazioni di SQL Server nel prossimo articolo.