Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Aplica-se a: SQL Server 2016 (13.x) e versões
posteriores Azure SQL Database
AzureSQL Managed Instance
SQL database in Microsoft Fabric
A classe de evento Lock:Deadlock é produzida quando uma tentativa de adquirir um bloqueio é cancelada porque a tentativa fazia parte de um deadlock e foi escolhida como vítima do deadlock.
Use a classe de evento Lock:Deadlock para monitorizar quando ocorrem deadlocks e quais os objetos envolvidos. Pode usar esta informação para determinar se os deadlocks estão a afetar significativamente o desempenho da sua aplicação. Pode então examinar o código da aplicação para determinar se pode fazer alterações para minimizar deadlocks.
Lock:Colunas de Dados da Classe de Evento de Deadlock
| Nome da coluna de dados | Tipo de dados | Description | ID da coluna | Filtrável |
|---|---|---|---|---|
| ApplicationName | nvarchar | Nome do aplicativo cliente que criou a conexão com uma instância do SQL Server. Esta coluna é preenchida com os valores passados pelo aplicativo em vez do nome exibido do programa. | 10 | Yes |
| BinaryData | image | Bloquear identificador de recurso. | 2 | Yes |
| ClientProcessID | int | ID atribuído pelo computador host ao processo em que o aplicativo cliente está sendo executado. Esta coluna de dados será preenchida se a ID do processo do cliente for fornecida pelo cliente. | 9 | Yes |
| Base de Dados | int | ID da base de dados onde a fechadura estava a ser adquirida. O SQL Server Profiler exibirá o nome do banco de dados se a coluna de dados ServerName for capturada no rastreamento e o servidor estiver disponível. Determine o valor de um banco de dados usando a função DB_ID. | 3 | Yes |
| DatabaseName | nvarchar | Nome da base de dados onde a fechadura estava a ser adquirida. | 35 | Yes |
| Duração | bigint | Quantidade de tempo (em microssegundos) entre o momento em que o pedido de bloqueio foi emitido e o momento em que o bloqueio ocorreu. | 13 | Yes |
| EndTime | datetime | Tempo em que o impasse terminou. | 15 | Yes |
| EventClass | int | Tipo de evento = 25. | 27 | Não |
| Sequência de Eventos | int | A sequência de um determinado evento dentro do pedido. | 51 | Não |
| GroupID | int | ID do grupo de carga de trabalho onde o evento Rastreamento SQL é acionado. | 66 | Yes |
| Nome do Anfitrião | nvarchar | Nome do computador no qual o cliente está sendo executado. Esta coluna de dados é preenchida se o cliente fornecer o nome do anfitrião. Para determinar o nome do anfitrião, use a função HOST_NAME. | 8 | Yes |
| IntegerData | int | Número de impasse. Os números são atribuídos a partir de 0 quando o servidor é iniciado e são incrementados para cada bloqueio. | 25 | Yes |
| IntegerData2 | int | Identificado apenas para fins informativos. Não suportado. A compatibilidade futura não é garantida. | 55 | Yes |
| IsSystem | int | Indica se o evento ocorreu em um processo do sistema ou em um processo do usuário. 1 = sistema, 0 = utilizador. | 60 | Yes |
| Nome de login | nvarchar | Nome do login do utilizador (seja login de segurança SQL Server ou credenciais de login do Microsoft Windows na forma de DOMÍNIO\nome de utilizador). | 11 | Yes |
| LoginSid | image | Número de identificação de segurança (SID) do utilizador com sessão iniciada. Pode encontrar esta informação na vista de catálogo sys.server_principals. Cada SID é único para cada login no servidor. | 41 | Yes |
| Mode | int | O modo resultante após o impasse. 0=NULL - Compatível com todos os outros modos de bloqueio (LCK_M_NL) 1=Bloqueio de Estabilidade de Esquema (LCK_M_SCH_S) 2=Bloqueio de Modificação de Esquema (LCK_M_SCH_M) 3=Fechadura Partilhada (LCK_M_S) 4=Atualizar Bloqueio (LCK_M_U) 5=Fechadura Exclusiva (LCK_M_X) 6=Fechadura Partilhada por Intenção (LCK_M_IS) 7=Bloqueio de Atualização de Intenção (LCK_M_IU) 8=Bloqueio Exclusivo de Intenção (LCK_M_IX) 9=Partilhado com intenção de Atualizar (LCK_M_SIU) 10=Partilhado com Intenção Exclusivo (LCK_M_SIX) 11=Atualização com Intenção Exclusiva (LCK_M_UIX) 12=Bloqueio de Atualização em Massa (LCK_M_BU) 13=Gama de chaves Partilhada/Partilhada (LCK_M_RS_S) 14=Intervalo de chaves Partilhado/Atualização (LCK_M_RS_U) 15=Intervalo de Chaves Inserir NULL (LCK_M_RI_NL) 16=Inserir Intervalo de Chaves Partilhado (LCK_M_RI_S) 17=Atualização de Inserção de Gama de Chaves (LCK_M_RI_U) 18=Exclusivo de Inserção de Gama de Chaves (LCK_M_RI_X) 19=Intervalo de Chaves Partilhado Exclusivo (LCK_M_RX_S) 20=Atualização Exclusiva da Gama de Chaves (LCK_M_RX_U) 21=Key Range Exclusivo Exclusivo (LCK_M_RX_X) |
32 | Yes |
| NTDomainName | nvarchar | Domínio do Windows ao qual o usuário pertence. | 7 | Yes |
| NTUserName | nvarchar | Nome de usuário do Windows. | 6 | Yes |
| ID do objeto | int | ID do objeto em disputa, se disponível e aplicável. | 22 | Yes |
| ObjectID2 | bigint | ID do objeto ou entidade relacionada, se disponível e aplicável. | 56 | Yes |
| OwnerID | int | 1=TRANSAÇÃO 2=CURSOR 3=SESSÃO 4=SHARED_TRANSACTION_WORKSPACE 5=EXCLUSIVE_TRANSACTION_WORKSPACE |
58 | Yes |
| ID do Pedido | int | O ID do pedido que contém a declaração. | 49 | Yes |
| Nome do servidor | nvarchar | Nome da instância do SQL Server que está sendo rastreada. | 26 | Não |
| SessionLoginName | nvarchar | Nome de login do usuário que originou a sessão. Por exemplo, se se ligar ao SQL Server usando o Login1 e executar uma instrução como Login2, o SessionLoginName mostra o Login1 e o LoginName mostra o Login2. Esta coluna exibe os logons do SQL Server e do Windows. | 64 | Yes |
| SPID | int | ID da sessão em que o evento ocorreu. | 12 | Yes |
| StartTime | datetime | Hora em que o evento começou, quando disponível. | 14 | Yes |
| TextData | ntext | O valor do texto depende do tipo de fechadura que estava a ser adquirido. | 1 | Yes |
| ID da transação | bigint | ID atribuída pelo sistema da transação. | 4 | Yes |
| Tipo | int | 1=NULL_RESOURCE 2=BASE DE DADOS 3=FICHEIRO 5=OBJETO 6=PÁGINA 7=KEY 8=EXTENSÃO 9=RID 10=APLICAÇÃO 11=METADADOS 12=AUTONAMEDB 13=HOBT 14=ALLOCATION_UNIT |
57 | Yes |
Ver também
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)