[Pregunta de la entrevista] Mecanismo de bloqueo de MySQL

Mecanismo de bloqueo de MySQL

Inserte la descripción de la imagen aquí

Usualmente tengo

  • Bloqueos de fila Los bloqueos
    de nivel de fila son la mejor granularidad de bloqueo en Mysql, lo que significa que solo las filas de la operación actual están bloqueadas. Los bloqueos a nivel de fila pueden reducir en gran medida los conflictos en las operaciones de la base de datos. La granularidad de bloqueo es la más pequeña, pero la sobrecarga de bloqueo también es la más grande. Puede haber una situación de punto muerto.

  • Bloqueos de
    tabla Los bloqueos a nivel de tabla son el tipo de bloqueo más grande en los bloqueos de mysql, lo que significa que la operación actual bloquea toda la tabla y la sobrecarga de recursos es menor que los bloqueos de fila, y no habrá puntos muertos, pero la probabilidad de conflictos de bloqueo es alta. .

  • Bloqueos de página Los bloqueos
    de nivel de página son un tipo de bloqueo que tiene una granularidad de bloqueo entre bloqueos de nivel de fila y bloqueos de nivel de tabla en MySQL.




Los motores de ejecución comunes admiten estos dos bloqueos

Inserte la descripción de la imagen aquí




Método para realizar

Se 通过给索引上的索引项加锁implementan bloqueos de fila InnoDB . MySQL es diferente de Oracle, que se implementa bloqueando las filas de datos correspondientes en el bloque de datos.

Las características de implementación de bloqueo de filas de InnoDB significan:只有通过索引条件检索数据,InnoDB才使用行级锁,否则,InnoDB将使用表锁!




Según la forma de uso, los bloqueos de fila y los bloqueos de mesa se pueden dividir en

  • Bloqueo compartido (bloqueo de lectura): permite que una transacción lea una fila, lo que evita que otras transacciones obtengan un bloqueo exclusivo en el mismo conjunto de datos.

  • Bloqueo exclusivo (bloqueo de escritura): permite que la transacción que obtiene el bloqueo exclusivo actualice los datos y evita que otras transacciones obtengan el bloqueo de lectura compartido y el bloqueo de escritura exclusivo del mismo conjunto de datos.

Supongo que te gusta

Origin blog.csdn.net/qq_42380734/article/details/108713516
Recomendado
Clasificación