Zunächst einmal, was ist ein Deadlock? Ein Deadlock tritt auf, wenn zwei oder mehr Transaktionen den Fortschritt der anderen blockieren, weil eine Transaktion eine Sperre für ein Datenbankobjekt hat, auf das die anderen zugreifen müssen. Dies führt zu einem harten Stopp für jede Art von Fortschritt, da jeder Prozess auf unbestimmte Zeit auf das gesperrte Objekt warten kann. SQL Server greift ein, um die Pattsituation zu durchbrechen, indem er einen oder mehrere der blockierten Prozesse beendet. Die unglücklichen Prozesse, die getötet wurden, müssen von vorne beginnen.
Die meisten DBAs haben Mühe, einen Deadlock zu finden (oder herauszufinden, ob ein Deadlock überhaupt passiert ist), weil es so zeitaufwändig ist. Bis ein Deadlock gefunden wird, sind oft noch ein paar mehr aufgetreten, was das Problem verschlimmert. Selbst wenn Sie feststellen, dass ein Deadlock aufgetreten ist, ist es fast unmöglich, ihn zu beheben, ohne zu wissen, was blockiert wurde, welche Art von Sperrtyp von jedem Prozess angefordert wird und welche Sitzungen beteiligt waren.
Funktionen wie die Deadlock-Analyse sind normalerweise nur in teuren Überwachungstools auf „Unternehmensebene“ zu finden. Aber unsere Entwickler bei Spotlight Cloud verstehen, dass DBAs manchmal nicht Hunderte von SQL-Servern überwachen – manchmal sind es nur 1 oder 2. Deshalb freuen wir uns sehr, ankündigen zu können, dass die Deadlock-Analyse jetzt als Standardfunktion in unserem gehosteten Überwachungstool enthalten ist. Spotlight Cloud Professional. So funktioniert es.
Mit Spotlight Cloud SQL Server Deadlock Analysis können Sie auf alle Leistungsdaten zugreifen, die erforderlich sind, um Deadlocks zu identifizieren und zu lösen und Ihre Datenbankleistung zu verbessern.
Das Deadlock-Analyse-Dashboard in Spotlight Cloud zeigt eine vollständige Ansicht der Deadlocks in Ihrer SQL Server-Umgebung. Hier können Sie alle vom Deadlock betroffenen Prozesse und Ressourcen auf einem einzigen Bildschirm anzeigen, eine Zusammenfassung darüber anzeigen, wie viele Deadlocks innerhalb eines bestimmten Zeitrahmens aufgetreten sind, die Zeit, die jeder Prozess aufgrund des Deadlocks verloren hat, das zugehörige SQL und welche Prozesse Opfer der SQL Server-Deadlock-Auflösung wurden.
In der Alarmübersicht sehen Sie alle Deadlock-bezogenen Alarme. Wenn Sie auf den Alarm klicken, sehen Sie eine Zusammenfassung der Anzahl der aufgetretenen Deadlocks, der Anzahl der als Opfer geopferten Sitzungen und der Gesamtzeit, die aufgrund der Deadlock-Auflösung verloren gegangen ist. Zusätzlich zu allen oben aufgeführten Informationen sehen Sie die Sitzungen, Datenbanken und Objekte, die am stärksten betroffen sind.
Zusammenfassung
Mit der Spotlight Cloud Deadlock-Analyse können Sie Sitzungen und Programme anzeigen, die während des Deadlock-Vorfalls ausgeführt wurden. Im Dashboard sehen Sie den genauen SQL-Text, der von diesem bestimmten Programm ausgeführt wurde. Wenn Sie sich dieses SQL genauer ansehen, können Sie feststellen, warum es festgefahren war und was sonst noch versucht hat, es zu diesem Zeitpunkt zu erfassen. Sie können auch nach Sperrtyp filtern – Zeile, Schlüssel, Seite, SPID usw. Mit dem Sperrtyp, dem beteiligten Objekt, dem beteiligten Anweisungstext und den Sitzungen können Sie das zusammensetzen Deadlock und beginnen Sie mit der Auflösung.
Mit der Deadlock-Analyse von Spotlight Cloud können Sie …
- Sehen/bearbeiten Sie Ihre Deadlock-Zeitachse und Durchsatzanforderung pro Sekunde in einer leicht lesbaren Tabelle.
- Filtern Sie basierend auf Datenbanken, Programmen, Benutzern und Objekten, damit Sie die Grundursache der abgebrochenen Prozesse identifizieren können. Zum Beispiel, wenn ein bestimmtes Objekt, vielleicht eine Tabelle in der Datenbank, aufgrund des Deadlocks nicht zugänglich war.
- Identifizieren Sie alle Sitzungen, das zugehörige Programm und alle Opfer, die einem bestimmten Deadlock zugeordnet sind.
- Siehe eine Liste der von jeder Sitzung angeforderten Objekte und den angeforderten Sperrtyp
- Sehen Sie den genauen SQL-Text, der von einem bestimmten Programm ausgeführt wurde.
Anstatt Stunden damit zu verbringen, einen Deadlock zu finden, probieren Sie eine 30-Tage-Testversion von Spotlight Cloud Professional aus, um Ihre Zeit und Ressourcen optimal zu nutzen.