Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Zapytanie SQL, aby uzyskać zakleszczenia w SQL SERVER 2008

Możesz użyć deadlock graph i zbierz potrzebne informacje z pliku dziennika.

Jedynym innym sposobem, jaki mógłbym zasugerować, jest przekopywanie się przez informacje za pomocą EXEC SP_LOCK (Wkrótce zostanie wycofany), EXEC SP_WHO2 lub sys.dm_tran_locks tabeli.

SELECT  L.request_session_id AS SPID, 
    DB_NAME(L.resource_database_id) AS DatabaseName,
    O.Name AS LockedObjectName, 
    P.object_id AS LockedObjectId, 
    L.resource_type AS LockedResource, 
    L.request_mode AS LockType,
    ST.text AS SqlStatementText,        
    ES.login_name AS LoginName,
    ES.host_name AS HostName,
    TST.is_user_transaction as IsUserTransaction,
    AT.name as TransactionName,
    CN.auth_scheme as AuthenticationMethod
FROM    sys.dm_tran_locks L
    JOIN sys.partitions P ON P.hobt_id = L.resource_associated_entity_id
    JOIN sys.objects O ON O.object_id = P.object_id
    JOIN sys.dm_exec_sessions ES ON ES.session_id = L.request_session_id
    JOIN sys.dm_tran_session_transactions TST ON ES.session_id = TST.session_id
    JOIN sys.dm_tran_active_transactions AT ON TST.transaction_id = AT.transaction_id
    JOIN sys.dm_exec_connections CN ON CN.session_id = ES.session_id
    CROSS APPLY sys.dm_exec_sql_text(CN.most_recent_sql_handle) AS ST
WHERE   resource_database_id = db_id()
ORDER BY L.request_session_id

http://www.sqlmag .com/article/sql-server-profiler/gathering-deadlock-information-with-deadlock-graph

http://weblogs.sqlteam.com/mladenp/archive/2008/04/29/SQL-Server-2005-Get-full-information-about-transaction-locks.aspx



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak ustawić wartość zmiennej za pomocą „wykonaj” w t-sql?

  2. Jak ustawić limit czasu skryptu SQL Server z poziomu skryptu?

  3. TSQL-2008 SUM(X) OVER (PARTYCJA... ZAMÓWIENIE WEDŁUG KLAUZULI)

  4. Eksportowanie danych z widoku

  5. Dlaczego przedrostki oddzielone kropkami są ignorowane na liście kolumn dla instrukcji INSERT?