Informațiile de blocaj pot fi capturate în Jurnalul de erori SQL Server sau utilizând Profiler / Server Side Trace.
Cum monitorizez blocajele SQL Server?
Vizualizați o reprezentare grafică a evenimentului de blocaj
- Deschide evenimentul de blocare în Vizualizatorul de evenimente.
- În fila General, accesați secțiunea Raport xml de blocare SQL Server, apoi copiați textul din eticheta de blocare (inclusiv eticheta de început și de sfârșit) într-un editor de text, cum ar fi Notepad sau Visual Studio Code.
- Salvați fișierul ca.
Cum gestionează SQL Server blocajele?
Setați prioritățile de blocaj folosind variabila de sesiune SET DEADLOCK_PRIORITY. Dacă setați prioritatea de blocaj, SQL Server oprește sesiunea cu cea mai mică prioritate de blocaj. Utilizați tratarea erorilor folosind blocurile try-catch Puteți capta eroarea de blocaj și reluați tranzacția în cazul unei victime a blocajului.
Blocarea SQL Server este blocată?
Eroarea „Tranzacția a fost blocată” apare când două sau mai multe sesiuni așteaptă pentru a obține o blocare a unei resurse care a fost deja blocată de o altă sesiune din același lanț de blocare Ca rezultat, niciuna dintre sesiuni nu poate fi finalizată și SQL Server trebuie să intervină pentru a rezolva această problemă. … Reluați tranzacția.
Cum verificați dacă există blocări în SQL Server?
Pentru a obține informații despre blocaje în Motorul de baze de date SQL Server, utilizați sistemul sys. dm_tran_locks vizualizarea de gestionare dinamică.