Todos los productos
Search
Centro de documentos

ApsaraDB RDS:Deadlocks

Última actualización: Sep 03, 2026

La pestaña DeadLock en ApsaraDB RDS for SQL Server muestra los eventos de interbloqueo de su instancia, incluidos la hora de inicio de la transacción, los ID de sesión, los recursos bloqueados y los tipos de interbloqueo. Utilice esta información para identificar y corregir las instrucciones SQL y las transacciones que causan los interbloqueos.

Funcionamiento

Cuando una transacción modifica un recurso, SQL Server bloquea dicho recurso para impedir modificaciones simultáneas y preservar la consistencia de los datos.

Se produce un interbloqueo cuando dos transacciones retienen cada una un bloqueo que la otra necesita. Por ejemplo, la Transacción A bloquea el Recurso A y espera al Recurso B, mientras que la Transacción B bloquea el Recurso B y espera al Recurso A. Ninguna de las dos transacciones puede continuar, por lo que SQL Server finaliza una de ellas.

死锁

SQL Server selecciona la sesión que se debe finalizar según el costo de reversión: termina la sesión cuya transacción pueda revertirse con el menor costo, denominada víctima del interbloqueo. Por ejemplo, si ocurre un interbloqueo entre una sesión SELECT y una sesión UPDATE, SQL Server finaliza la sesión SELECT porque su reversión es menos costosa.

Conceptos clave

Tipos de interbloqueo

ApsaraDB RDS for SQL Server detecta los siguientes tipos de interbloqueo:

  • KeyDeadlock

  • ObjectDeadLock

  • RIDDeadlock

  • PageDeadlock

  • ComplieDeadlock

Para obtener detalles sobre cada tipo, consulte Granularidad y jerarquías de bloqueo.

Modos de bloqueo

El lock mode aplicado a un recurso depende del tipo de acceso:

  • Compartido (S): El recurso se puede leer, pero no modificar, hasta que la transacción libere el bloqueo compartido.

  • Actualización (U): Otra transacción no puede modificar el recurso hasta que adquiera un bloqueo exclusivo sobre él.

  • Exclusivo (X): Ninguna otra transacción puede acceder al recurso hasta que la transacción que lo bloquea libere el bloqueo exclusivo.

Requisitos previos

Antes de empezar, asegúrese de que:

  • Su instancia RDS no ejecute SQL Server 2008 R2 con discos en la nube.

  • Su instancia RDS se encuentre en una de las siguientes regiones: China (Hangzhou), China (Shanghai), China (Qingdao), China (Beijing), China (Zhangjiakou), China (Hohhot), China (Ulanqab), China (Shenzhen), China (Heyuan), China (Guangzhou), China (Chengdu), China (Hong Kong), Singapore o UAE (Dubai).

Consulta de detalles de interbloqueos

  1. Vaya a la página Instances. En la barra de navegación superior, seleccione la región donde reside su instancia RDS y luego haga clic en el ID de la instancia.

  2. En el panel de navegación izquierdo, elija Autonomy Services > Lock Optimization.

Referencia de la pestaña DeadLock

Cantidad de interbloqueos

Muestra el número de interbloqueos en intervalos de tiempo recientes. Especifique un intervalo de tiempo para filtrar los resultados.

死锁数量

Tendencia de interbloqueos

Muestra la distribución de los tipos de interbloqueo durante un intervalo de tiempo.

死锁变化趋势

  • Establezca una start time y una end time, y luego haga clic en Search. El intervalo de tiempo no puede superar los 30 días.

  • Haga clic en Last 24 Hours, Last 7 Days o Last Month para usar un intervalo predefinido.

  • Pase el cursor sobre un punto de datos para ver los tipos y recuentos de interbloqueos en ese momento.

  • Use los iconos 图标 en la esquina superior derecha del gráfico para cambiar el estilo de visualización o descargar el gráfico como imagen.

Detalles del interbloqueo

死锁详细信息

Haga clic en el icono 加号 junto a un registro de interbloqueo para expandir los detalles de la sesión bloqueante y la sesión bloqueada.

Campo

Descripción

LastTranStarted

Hora en que inició la transacción en la sesión

SPID

ID de sesión

IsVictim

Indica si la sesión se finalizó como víctima del interbloqueo

LogUsed

Tamaño del registro de transacciones generado en la sesión, en bytes

LockMode

Modo de bloqueo retenido por la sesión

WaitResourceDesc

Detalles del recurso que la transacción está esperando

ObjectOwned

Objeto bloqueado por la sesión

ObjectRequested

Objeto que la transacción intenta bloquear

WaitResource

Nombre del recurso que la transacción está esperando

HostName

Host donde se ejecuta la transacción

LoginName

Cuenta utilizada para ejecutar la transacción

Status

Estado de la transacción en la sesión

ClientApp

Cliente que inició la transacción

SQLText

Instrucción SQL ejecutada en la sesión. Haga clic en la instrucción para copiarla y analizarla posteriormente.

Haga clic en un registro de interbloqueo para abrir la sección Deadlock Diagram.

Diagrama de interbloqueo

死锁关系图

Muestra las relaciones entre las sesiones bloqueantes y bloqueadas, junto con detalles sobre los recursos bloqueados. Haga clic en Download para descargar el archivo XDL y luego ábralo en SQL Server Management Studio (SSMS) para ver el gráfico completo del interbloqueo.

Pasos siguientes

¿Qué hago si ocurre un interbloqueo en una instancia de ApsaraDB RDS for SQL Server?