Partilhar via


Classe de evento Lock:Acquired

Aplica-se a: SQL Server

A classe de evento Lock:Acquired indica que foi obtida a aquisição de um bloqueio em um recurso, como página de dados.

As classes de evento Lock:Acquired e Lock: Released podem ser usadas para monitorar quando os objetos estão sendo bloqueados, o tipo de bloqueio obtido, e por quanto tempo os bloqueios foram retidos. Os bloqueios retidos por longos períodos de tempo podem causar problemas de contenção e devem ser investigados. Por exemplo, um aplicativo pode estar adquirindo bloqueios em linhas em uma tabela, e em seguida esperando por uma entrada do usuário. Como a entrada do usuário pode levar muito tempo, os bloqueios podem bloquear outros usuários. Nesta instância, o aplicativo deveria ser reprojetado para fazer solicitações de bloqueios somente quando necessário e não exigir uma entrada do usuário quando forem adquiridos os bloqueios.

Colunas de dados da classe de evento Lock:Acquired

Nome da coluna de dados Tipo de dados Descrição ID da coluna Filtrável
ApplicationName nvarchar Nome do aplicativo cliente que criou a conexão com uma instância do Microsoft SQL Server. Essa coluna é populada com os valores passados pelo aplicativo e não com o nome exibido do programa. 10 Sim
BigintData1 bigint ID da partição se o recurso de bloqueio for particionado. 52 Sim
BinaryData imagem Identificador de recurso bloqueado. 2 Sim
ClientProcessID int ID atribuída pelo computador host ao processo em que o aplicativo cliente está sendo executado. Essa coluna de dados será populada se o cliente fornecer a ID de processo do cliente. 9 Sim
DatabaseID int ID do banco de dados no qual foi adquirido o bloqueio. 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 para um banco de dados usando a função DB_ID. 3 Sim
Duration bigint Tempo (em microssegundos) entre a hora em que a solicitação de bloqueio foi emitida e a hora em que ocorreu o bloqueio. 13 Sim
EndTime datetime Hora em que o evento foi encerrado. 15 Sim
EventClass int Tipo de evento = 24. 27 Não
EventSequence int Sequência de um determinado evento na solicitação. 51 Não
GroupID int ID do grupo de carga de trabalho no qual o evento de Rastreamento do SQL dispara. 66 Sim
HostName nvarchar Nome do computador no qual o cliente está sendo executado. Essa coluna de dados será populada se o cliente fornecer o nome do host. Para determinar o nome do host, use a função HOST_NAME . 8 Sim
IntegerData2 int Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida. 55 Sim
IsSystem int Indica se o evento ocorreu em um processo do sistema ou do usuário. 1 = sistema, 0 = usuário. 60 Sim
LoginName nvarchar Nome do logon do usuário (logon de segurança do SQL Server ou as credenciais de logon do Windows na forma de DOMAIN\username). 11 Sim
LoginSid imagem Número SID (identificação de segurança) do usuário que fez logon. Você pode encontrar essas informações na exibição de catálogo sys.server_principals. Cada SID é exclusivo para cada logon no servidor. 41 Sim
Mode int Modo resultante depois da aquisição do bloqueio.

0=NULL - Compatível com todos os outros modos de bloqueio (LCK_M_NL)

1=Bloqueio de estabilidade do esquema (LCK_M_SCH_S)

2=Bloqueio de modificação de esquema (LCK_M_SCH_M)

3=Bloqueio compartilhado (LCK_M_S)

4=Bloqueio de atualização (LCK_M_U)

5=Bloqueio exclusivo (LCK_M_X)

6=Bloqueio de tentativa compartilhada (LCK_M_IS)

7=Bloqueio de atualização da tentativa (LCK_M_IU)

8=Bloqueio exclusivo da tentativa (LCK_M_IX)

9=Compartilhado com tentativa de atualizar (LCK_M_SIU)

10=Compartilhado com tentativa exclusiva (LCK_M_SIX)

11=Atualizar com tentativa exclusiva (LCK_M_UIX)

12=Bloqueio de atualização em massa (LCK_M_BU)

13=Intervalo de chaves compartilhado/compartilhado (LCK_M_RS_S)

14=Intervalo de chaves compartilhado/atualizar (LCK_M_RS_U)

15=Inserção de Intervalo de Chaves NULL (LCK_M_RI_NL)

16=Inserção de Intervalo de Chaves Compartilhado (LCK_M_RI_S)

17=Atualização de Inserção de Intervalo de Chaves (LCK_M_RI_S)

18=Inserção de intervalo de chaves exclusivo (LCK_M_RI_X)

19=Intervalo de chaves compartilhado exclusivo (LCK_M_RX_S)

20=Atualização de intervalo de chaves exclusivo (LCK_M_RX_U)

21=Intervalo de chaves exclusivo exclusivo (LCK_M_RX_X)
32 Sim
NTDomainName nvarchar O domínio do Windows ao qual o usuário pertence. 7 Sim
NTUserName nvarchar Nome do usuário do Windows. 6 Sim
ObjectID int Identificação do objeto no qual foi adquirido o bloqueio, se disponível e aplicável. 22 Sim
ObjectID2 bigint Identificação do objeto ou entidade relacionada, se disponível e aplicável. 56 Sim
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58 Sim
RequestID int ID da solicitação que contém a instrução. 49 Sim
ServerName nvarchar Nome da instância do SQL Server que está sendo rastreada. 26 Não
SessionLoginName nvarchar Nome de logon do usuário que originou a sessão. Por exemplo, se você se conectar ao SQL Server usando Login1 e executar uma instrução como Login2, SessionLoginName mostrará Login1 e LoginName mostrará Login2. Esta coluna exibe logons do SQL Server e do Windows. 64 Sim
SPID int Identificação da sessão em que ocorreu o evento. 12 Sim
StartTime datetime Hora de início do evento, se disponível. 14 Sim
TextData ntext Valor de texto dependente do tipo de bloqueio adquirido. Este é o mesmo valor que a coluna do resource_description em sys.dm_tran_locks. 1 Sim
TransactionID bigint ID da transação atribuída pelo sistema. 4 Sim
Tipo int 1=NULL_RESOURCE

2=DATABASE

3=FILE

5=OBJECT

6=PAGE

7=KEY

8=EXTENT

9=RID

10=APPLICATION

11=METADATA

12=AUTONAMEDB

13=HOBT

14=ALLOCATION_UNIT
57 Sim

Confira também

Classe de evento Lock:Released
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)