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

Introduktion af ny funktion - dødvandsanalyse

Først og fremmest, hvad er en dødvande? En deadlock opstår, når to eller flere transaktioner blokerer for hinandens fremskridt, fordi en transaktion har en lås på et databaseobjekt, de andre har brug for adgang til. Dette skaber et hårdt stop for enhver form for fremskridt, fordi hver proces kan vente på ubestemt tid på det låste objekt. SQL Server træder ind for at bryde dødvandet ved at dræbe en eller flere af de blokerede processer. De uheldige processer, der blev dræbt, skal starte forfra.

De fleste DBA'er kæmper med at finde en dødvande (eller forsøger at finde ud af, om en dødvande overhovedet er det, der skete i første omgang), fordi det er så tidskrævende. Ofte, når et dødvande er lokaliseret, kan der være opstået et par flere, hvilket forværrer problemet. Selv når du finder ud af, at der opstod et dødvande, er det næsten umuligt at rette op på det uden at vide, hvad der er blevet blokeret, karakteren af ​​låsetypen, der anmodes om af hver proces, og hvilke sessioner der var involveret.

Funktioner som dødvandsanalyse ses typisk kun i dyre overvågningsværktøjer på "virksomhedsniveau". Men vores udviklere hos Spotlight Cloud forstår nogle gange, at DBA'er ikke overvåger hundredvis af SQL-servere – nogle gange er det kun 1 eller 2. Det er derfor, vi er så glade for at kunne meddele, at deadlock-analyse nu er inkluderet som en standardfunktion i vores hostede overvågningsværktøj, Spotlight Cloud Professional. Sådan fungerer det.

Med Spotlight Cloud SQL Server Deadlock Analysis vil du være i stand til at få adgang til alle de ydeevnedata, der kræves for at identificere og løse deadlocks og forbedre din databaseydeevne.

Dashboardet Deadlock Analysis i Spotlight Cloud viser en komplet oversigt over deadlocks i dit SQL Server-miljø. Her kan du se alle de processer og ressourcer, der er påvirket af dødlåsen på et enkelt skærmbillede, se en oversigt over, hvor mange dødvande der opstod inden for en bestemt tidsramme, den tid, hver proces mistede som følge af dødvandet, den tilknyttede SQL, og hvilke processer, der blev ofre for SQL Server-deadlock-opløsningen.

I Alarmoversigten kan du se alle deadlock-relaterede alarmer. Hvis du klikker på alarmen, ser du en oversigt over, hvor mange dødvande der opstod, antallet af sessioner, der blev ofret som ofre, og den samlede tid, der er tabt på grund af opløsningen af ​​dødvande. Ud over alle de oplysninger, der er anført ovenfor, vil du se de sessioner, databaser og objekter, der er mest påvirket.

I oversigt

Spotlight Cloud Deadlock Analysis giver dig mulighed for at se sessioner og programmer, der kørte under et dødvande. I dashboardet kan du se den nøjagtige SQL-tekst, der blev udført af det pågældende program. Når du borer i den SQL, kan du identificere, hvorfor den var fastlåst, og hvad der ellers prøvede at få fat i den på det tidspunkt. Du kan også filtrere efter låsetype – række, nøgle, side, SPID osv. Med låsetypen, objektet, der var involveret, erklæringsteksten, der var involveret, og sessionerne, vil du være i stand til at sammensætte dødvande og begynde at løse.

Med Spotlight Clouds deadlock-analyse kan du...

  • Se/rediger din deadlock-tidslinje og gennemløbsanmodning pr. sekund i en letlæselig tabel.
  • Filtrer baseret på databaser, programmer, brugere og objekter, så du kan identificere årsagen til de dræbte processer. For eksempel, hvis et bestemt objekt, måske en tabel i databasen, var utilgængeligt på grund af dødvandet.
  • Identificer alle sessioner, det tilknyttede program og alle ofre forbundet med en bestemt dødvande.
  • Se en liste over objekter, der er anmodet om af hver session, og den ønskede låsetype
  • Se den nøjagtige SQL-tekst, der blev udført af et bestemt program.

Så i stedet for at bruge timer på at finde en dødvande, prøv en Spotlight Cloud Professional 30-dages prøveversion for at maksimere din tid og dine ressourcer.


  1. understøtter rails postgres adapter ssl?

  2. MySQL Tutorial:MySQL IN-klausul (Grundlæggende)

  3. Hvordan tilføjer man et specifikt antal tomme rækker i sqlite?

  4. Trin for trin postgres_fdw