Compartir vía


Lock:Acquired (clase de eventos)

Se aplica a: SQL Server

La clase de eventos Lock:Acquired indica que se ha logrado la adquisición de un bloqueo en un recurso, por ejemplo, una página de datos.

Las clases de eventos Lock:Acquired y Lock:Released se pueden utilizar para supervisar cuándo se bloquean objetos, el tipo de bloqueos obtenidos y cuánto tiempo se han mantenido éstos. Los bloqueos mantenidos durante largos períodos pueden causar problemas de contención y se deben investigar. Por ejemplo, una aplicación puede estar adquiriendo bloqueos en filas de una tabla y esperar después a que se produzca una entrada del usuario. Puesto que la introducción de datos puede tardar bastante tiempo, los bloqueos pueden bloquear a otros usuarios. En tal caso, es necesario volver a diseñar la aplicación para que realice solicitudes de bloqueo solo cuando sea preciso y no solicite que el una entrada del usuario cuando se han adquirido bloqueos.

Columnas de datos de la clase de evento Lock:Acquired

Nombre de columna de datos Tipo de datos Descripción Identificador de columna Filtrable
ApplicationName nvarchar Nombre de la aplicación cliente que creó la conexión a una instancia de Microsoft SQL Server. Esta columna se rellena con los valores que pasa la aplicación, en lugar de con el nombre que se muestra para el programa. 10
BigintData1 bigint Id. de la partición si el recurso de bloqueo tiene particiones. 52
BinaryData image Identificador del recurso de bloqueo. 2
ClientProcessID int Identificador que el equipo host asigna al proceso en el que se ejecuta la aplicación cliente. Esta columna de datos se rellena si el cliente proporciona el identificador de proceso del cliente. 9
DatabaseID int Identificador de la base de datos en la que se ha adquirido el bloqueo. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. Determina el valor de una base de datos mediante la función DB_ID. 3
Duration bigint Tiempo (en microsegundos) entre el envío de la solicitud de bloqueo y la adquisición del mismo. 13
EndTime datetime Hora de finalización del evento. 15
EventClass int Tipo de evento = 24. 27 No
EventSequence int Secuencia de un evento determinado de la solicitud. 51 No
GroupID int Id. del grupo de carga de trabajo donde se activa el evento de Seguimiento de SQL. 66
HostName nvarchar Nombre del equipo en el que se está ejecutando el cliente. Esta columna de datos se rellena si el cliente proporciona el nombre del host. Para averiguar el nombre de host, use la función HOST_NAME . 8
IntegerData2 int Solamente se identifica con fines informativos. No compatible. La compatibilidad con versiones posteriores no está garantizada. 55
IsSystem int Indica si el evento ha ocurrido en un proceso del sistema o en un proceso de usuario. 1 = sistema, 0 = usuario. 60
LoginName nvarchar Nombre del inicio de sesión del usuario (inicio de sesión de seguridad de SQL Server o las credenciales de inicio de sesión de Windows en forma de DOMINIO\nombredeusuario). 11
LoginSid image SID (número de identificación de seguridad) del usuario que ha iniciado la sesión. Puede buscar esta información en la vista de catálogo sys.server_principals. Cada SID es único para cada inicio de sesión en el servidor. 41
Mode int Modo resultante tras adquirir el bloqueo.

0=NULL: Compatible con los demás modos de bloqueo (LCK_M_NL)

1=Bloqueo Estabilidad del esquema (LCK_M_SCH_S)

2=Bloqueo Modificación del esquema (LCK_M_SCH_M)

3=Bloqueo Compartido (LCK_M_S)

4=Bloqueo Actualizar (LCK_M_U)

5=Bloqueo Exclusivo (LCK_M_X)

6=Bloqueo Intención compartida (LCK_M_IS)

7=Bloqueo Actualizar intención (LCK_M_IU)

8=Bloqueo Intención exclusiva (LCK_M_IX)

9=Actualizar intención compartida (LCK_M_SIU)

10=Intención compartida exclusiva (LCK_M_SIX)

11=Actualizar intención exclusiva (LCK_M_UIX)

12=Bloqueo Actualización masiva (LCK_M_BU)

13=Intervalo de claves compartido/compartido (LCK_M_RS_S)

14=Intervalo de claves compartido/actualización (LCK_M_RS_U)

15=Intervalo de claves de inserción NULL (LCK_M_RI_NL)

16=Intervalo de claves de inserción compartido (LCK_M_RI_S)

17=Intervalo de claves de inserción de actualización (LCK_M_RI_U)

18=Intervalo de claves de inserción exclusivo (LCK_M_RI_X)

19=Intervalo de claves exclusivo compartido (LCK_M_RX_S)

20=Intervalo de claves exclusivo de actualización (LCK_M_RX_U)

21=Intervalo de claves exclusivo exclusivo (LCK_M_RX_X)
32
NTDomainName nvarchar Dominio de Windows al que pertenece el usuario. 7
NTUserName nvarchar Nombre del usuario de Windows. 6
ObjectID int Id. del objeto en el que se ha adquirido el bloqueo, si está disponible y es aplicable. 22
ObjectID2 bigint Id. del objeto o entidad relacionado, si está disponible y es aplicable. 56
OwnerID int 1=TRANSACTION

2=CURSOR

3=SESSION

4=SHARED_TRANSACTION_WORKSPACE

5=EXCLUSIVE_TRANSACTION_WORKSPACE
58
RequestID int Identificador de la solicitud que contiene la instrucción. 49
nombreDeServidor nvarchar Nombre de la instancia de SQL Server que se realiza el seguimiento. 26 No
SessionLoginName nvarchar Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server mediante Login1 y ejecuta una instrucción como Login2, SessionLoginName muestra Login1 y LoginName muestra Login2. En esta columna se muestran los inicios de sesión de SQL Server y Windows. 64
SPID int Identificador de la sesión en la que se produjo el evento. 12
StartTime datetime Hora a la que se inició el evento, si está disponible. 14
TextData ntext Valor de texto dependiente del tipo de bloqueo que se ha adquirido. Este valor es el mismo que el de la columna resource_description de sys.dm_tran_locks. 1
TransactionID bigint Id. de la transacción asignado por el sistema. 4
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

Consulte también

Lock:Released (clase de eventos)
sp_trace_setevent (Transact-SQL)
sys.dm_tran_locks (Transact-SQL)