事务隔离级别演示
事务隔离级别演示
1.read uncommitted:读未提交
演示:
set global transaction isolation level read uncommitted;
start transaction;
- - 转账操作
update account set balance = balance - 500 where id = 1;
update account set balance = balance +500 where id = 2;
事务一:

事务二:

2.read committed:读已提交(Oracle)
set global transaction isolation level read committed;
start transaction;
- - 转账操作
update account set balance = balance - 500 where id = 1;
update account set balance = balance +500 where id = 2;
事务一:

事务二:

3.repeatable read:可重复读(MYSQL默认)
set global transaction isolation level repeatable read;
start transaction;
- - 转账操作
update account set balance = balance - 500 where id = 1;
update account set balance = balance +500 where id = 2;
事务一:

事务二:

4.serializable:串行化
set global transaction isolation level serializable;
start transaction;
- - 转账操作
update account set balance = balance - 500 where id = 1;
update account set balance = balance +500 where id = 2;
事务一:

事务二:


浙公网安备 33010602011771号