事务隔离
事务隔离
-
事物的特性:ACID
- 原子性:Atomicity
- 一致性:consistency
- 隔离性:isolation
- 持久性:durability
-
隔离的利弊
隔离程度越高,效率就越低
- 标准SQL的隔离级别
- 读未提交(read uncommitted):一个事务还没提交时,它的变更能被其他事务看到
- 读提交(read committed):一个事务提交之后,它的变更才能被其他事务看到
- 可重复读(repeatable read):一个事务在执行过程中看到的数据,总是在和最开始的是相同的
- 串行化(serializable ):就是加锁,每次只保证有一个事务在执行
事务隔离的实现
简单来说就是记录回滚操作,也就是每个事务记录了前一次的版本。
在执行过程中创建多种视图来实现。
事物的启动方式
- 显式启动事务,使用begin等语句
- set autocommit=0