Está en la página 1de 9

Practicas transacciones unidad 5

Iniciamos una transaccin

Para comprometer la transaccin se una commit, y para abortarla se usa rollback Deshacemos la transaccin

Revisamos que si iniciamos desde otro usuario no ha habido cambios

Iniciamos una transaccin con este usuario y la comprometemos

Verificamos que en el usuario 1 ya se pueden ver los cambios porque la informacin esta comprometida

LECTURAS CON BLOQUEOS PARA TRANSACCIN Para bloquear una tabla para que no lo utilice otro usuario al mismo tiempo se usa for update para bloquaerla de consultas

Si se intenta hacer la misma operacin desde otro usuario, el usuario queda en espera

Se compromete la transaccin

Se va de nuevo al usuario 2 y como ya se comprometio y se realiza la operacin

EJEMPLO

Para actualizar pero bloquear una tabla en modo compartido se usa lock mode share;

Si se intenta acceder a la tabla desde otro usuario no lo permite queda en espera

NOTA: POR DEFECTO MYSQL EMPLEA EN LAS TRANSACCIONES LECTURAS COMPROMETIDAS. Para ver que nivel de aislamiento tiene un usuario o una coneccion se usa

PARA CAMBIAR EL NIVEL DE AISLAMIENTO SE USA ESTA SENTENCIA ES PARA QUE SE PUEDAN VER O LEER TRANSACCIONES QUE NO SE HAN COMPROMETIDO, se usa global porque se aplica a todas las conecciones

Para aplicar este nivel de aislamiento de manera individual es decir, para una transaccin se usa

Iniciamos una transaccin en el otro usuario pero no la comprometemos

Verificamos que al cambiar el nivel de aislamiento de el primer usuario ya se pueden ver estos datos aunque no se han comprometido

Si se realiza un rollback a la transaccin el otro usuario ve los datos reales

También podría gustarte