Estos contenidos se han traducido de forma automática para su comodidad, pero Huawei Cloud no garantiza la exactitud de estos. Para consultar los contenidos originales, acceda a la versión en inglés.
Actualización más reciente 2025-05-22 GMT+08:00

Gestión de bloqueos y transacciones

Funciones

Bloqueos de metadatos

  • Los bloqueos de metadatos (MDL) se utilizan para garantizar la coherencia entre las operaciones DDL y DML. La ejecución de sentencias DDL en una tabla genera bloqueos de escritura de metadatos. Si hay una cerradura de metadatos, todas las operaciones SELECT, DML y DDL posteriores en la tabla se bloquearán, causando un retraso en la conexión.
  • Los bloqueos de metadatos se muestran en tiempo real. Puede identificar rápidamente problemas de bloqueo y terminar las sesiones que contienen bloqueos de metadatos para restaurar las operaciones bloqueadas.
  • Los bloqueos DML no se incluyen en esta página. Puede verlos y analizarlos en la página InnoDB Locks.
  • Se puede mostrar un máximo de 1,000 de registros.

Bloqueos de InnoDB

  • El bloqueo de InnoDB espera generado antes de que las operaciones DML se muestren en tiempo real. Puede localizar rápidamente las esperas de sesión y los bloques que se produjeron cuando varias sesiones actualizan la misma información al mismo tiempo, y puede finalizar las sesiones de origen que contienen bloqueos para restaurar las operaciones bloqueadas.
  • Los bloqueos de DDL no se incluyen en esta página. Puede verlos y analizarlos en la página Metadata Locks.
  • La información de bloqueo solo se puede ver cuando Performance Schema está habilitado. Para comprobar el estado de Performance Schema, ejecute SHOW GLOBAL VARIABLES LIKE "performance_schema" o vaya a la página Parameters de TaurusDB.

Análisis de interbloqueos

  • Esta función analiza el último registro de interbloqueo devuelto por SHOW ENGINE INNODB STATUS. Si ha habido múltiples interbloqueos, solo se analiza el último interbloqueo.
  • Puede consultar los datos de análisis de bloqueos de los últimos siete días.

Análisis de interbloqueo completo

  • La versión del núcleo de su instancia de TaurusDB debe ser 2.0.45.230900 o posterior.
  • Una vez habilitada esta función, el sistema examina periódicamente los registros de errores, extrae los detalles de interbloqueo de ellos y realiza un análisis completo de interbloqueo.
  • Se deben habilitar los siguientes parámetros:

    innodb_print_all_deadlocks

    innodb_deadlock_detect (Este parámetro está activado por defecto.)

  • Se puede mostrar un máximo de 10,000 registros.
  • Puede consultar los datos de análisis de bloqueos de los últimos siete días.

Procedimiento

  1. Inicie sesión en la consola de gestión.
  2. Haga clic en en la esquina superior izquierda y seleccione una región y un proyecto.
  3. Haga clic en en el extremo superior izquierdo de la página y seleccione Databases > TaurusDB.
  4. En la página Instances, haga clic en el nombre de la instancia.
  5. En el panel de navegación, elija DBA Assistant > Real-Time Diagnosis.
  6. Haga clic en la pestaña Locks & Transactions e ingrese la contraseña del administrador para iniciar sesión en la instancia.

    Figura 1 Inicio de sesión en una instancia

  7. En la página Metadata Locks, filtre los bloqueos de metadatos deseados por ID de sesión, estado de bloqueo, tipo de bloqueo y nombre de base de datos.

  8. Compruebe si hay sesiones con bloqueos de metadatos.

    De ser así, seleccione las sesiones y haga clic en Kill Session.

  9. En la página InnoDB Locks, compruebe si hay esperas de bloqueo.

  10. En la página Deadlock Analysis, vea los últimos datos de análisis de bloqueo. Puede hacer clic en Create Lock Analysis para crear un registro de datos de análisis de bloqueo.

  11. Habilite Full Deadlock Analysis en la página Full Deadlock Analysis y configure el parámetro innodb_print_all_deadlocks en ON para ver los datos completos del análisis de interbloqueo.