Trouver blocage/verrouillage des requêtes dans MS SQL (mssql)
À l'aide de sys.dm_os_wait_stats
j'ai identifié ce que je crois est un problème de verrouillage de
wait type waittime pct running ptc
LCK_M_RS_S 2238.54 22.14 22.14
LCK_M_S 1980.59 19.59 41.73
Est-il une manière que je peux trouver le top de blocage/verrouillage des requêtes? J'ai essayé de l'interrogation sys.dm_db_index_operational_stats
sans beaucoup de chance.
OriginalL'auteur Carlo V. Dango | 2010-12-06
Vous devez vous connecter pour publier un commentaire.
Vous pouvez trouver cette requête utile:
J'ai édité la déclaration, pour faire en sorte que vous obtenez toujours le "vrai" coupable:
SELECT * FROM sys.dm_exec_requests CROSS APPLY sys.dm_exec_sql_text(sql_handle) where session_id IN (SELECT blocking_session_id FROM sys.dm_exec_requests WHERE DB_NAME(database_id)='SDCS20' and blocking_session_id <>0)
Certains états sont de blocage parce qu'ils sont bloqués par quelque chose d'autre, dans ce cas, la blocking_session_id sera différente de la session_id.OriginalL'auteur Nomad
Utiliser le script: sp_blocker_pss08 ou de Trace SQL/Profiler et du blocage du Processus de Rapport d'événement de la classe.
OriginalL'auteur Martin Smith