Cómo comprobar el nivel de aislamiento de la base de datos MySQL
Método de modificación
Los programas configurados usando systemd tienen dos métodos para aislar recursos: 1. Modificación de la línea de comando: ejecutando "systemctl set-property?name" ("systemctl set property") comando; de forma predeterminada, la modificación entrará en vigor inmediatamente. 2. Modifique manualmente el archivo: edite directamente el archivo de la unidad systemd. Una vez completado, debe ejecutar manualmente el demonio systemctl. La modificación entrará en vigor de inmediato. 2. Modifique manualmente el archivo: edite directamente el archivo de unidad systemd del programa. Una vez completado, debe ejecutar manualmente el comando ?systemctl?daemon-reload?
Elementos de configuración de aislamiento de recursos admitidos en archivos de unidad systemd, como común:
CPUQuota=value?
Este parámetro indica el tiempo máximo de CPU que el servicio puede obtener El valor se expresa como un porcentaje. Superior al 100% significa que se puede usar más de 1 núcleo de la CPU. Se usa junto con el elemento de configuración cpu.cfs_quota_us del controlador de CPU de cgroup.
MemoryLimit=valor?
Este parámetro indica la cantidad máxima de memoria que puede utilizar el servicio. El valor puede utilizar sufijos K, M, G, T, etc. para indicar el tamaño del valor. Corresponde al elemento de configuración cgroup?memory controller?memory.limit_in_bytes.
4 niveles de aislamiento de transacciones
¿LEER NO COMPROMETIDO? Lectura no confirmada, se pueden leer datos no confirmados.
LECTURA COMPROMETIDA Lectura confirmada, para bloquear lecturas (seleccionadas con para actualizar o compartir), actualizar y eliminar declaraciones, InnoDB solo bloquea las filas del índice, no los espacios entre ellas, por lo que permite que las nuevas filas sean libres. insertado junto a las filas bloqueadas.
Espacio
El bloqueo de espacio solo se usa para verificar restricciones de clave externa y verificar claves duplicadas.
LECTURA REPETIBLE Una lectura repetible y consistente dentro de una transacción lee la instantánea creada por la primera lectura de la transacción.
¿SERIALIZABLE? Serialización Después de comprender los requisitos de los 4 niveles de aislamiento, basados en el uso de bloqueos para controlar el nivel de aislamiento, necesitamos desbloquear el objeto (datos en sí y espacios en blanco) y comprender todo el rango de datos. colocar.
La composición del conjunto completo de rangos de datos
No es necesario escanear el rango de datos determinado por la declaración SQL en función de las condiciones (sin bloqueos);
Los datos escaneados por la declaración SQL según las condiciones Es posible que sea necesario bloquear el rango;
Tome un solo rango de datos como ejemplo. El conjunto completo de rangos de datos incluye: (el rango de datos. no es necesariamente un valor continuo, también puede ser un valor de intervalo)