mysql事物隔离级别
2017-08-29 13:52
513 查看
1、Read uncommited(读未提交)
导致脏读:事物A读取了事物B未提交的更改
2、Read commited(读提交)
解决脏读,导致不可重复读:事物A读取了记录record1,事物B更改了记录record1,事物再尝试去修改record1,record1已经发生改变,报错。
大部分数据库:SQL Server、Oracle都支持到这个级别
3、Repeatable read(可重复读)
解决脏读,可以重复读,但是不能解决幻读:当事物读取了记录record1,此时其他事物B就不能对record1进行修改,因此可以重复读,不会出问题。但是还是会产生幻读(幻读一般是针对插入和删除的)。比如事物A select count() from students where gender = 2; 此时事物B向students表中插入一条记录恰好gender = 2。此时,如果事物A再次select count() from students where gender = 2,发现记录多了1条,产生了幻读现象。
Mysql InnoDb可以支持这中级别
4、Serializable(序列化)
导致脏读:事物A读取了事物B未提交的更改
2、Read commited(读提交)
解决脏读,导致不可重复读:事物A读取了记录record1,事物B更改了记录record1,事物再尝试去修改record1,record1已经发生改变,报错。
大部分数据库:SQL Server、Oracle都支持到这个级别
3、Repeatable read(可重复读)
解决脏读,可以重复读,但是不能解决幻读:当事物读取了记录record1,此时其他事物B就不能对record1进行修改,因此可以重复读,不会出问题。但是还是会产生幻读(幻读一般是针对插入和删除的)。比如事物A select count() from students where gender = 2; 此时事物B向students表中插入一条记录恰好gender = 2。此时,如果事物A再次select count() from students where gender = 2,发现记录多了1条,产生了幻读现象。
Mysql InnoDb可以支持这中级别
4、Serializable(序列化)
相关文章推荐
- MySQL 数据库事物隔离级别的设置
- Mysql的四种事物隔离级别
- 【MySQL运维】事物隔离级别和行日志格式设置不当导致故障案例 推荐
- mysql事物隔离级别
- MySQL设置事物隔离级别
- MySQL_Oracle_事物的隔离级别
- mysql__事物隔离级别
- 设置 mysql事物隔离级别
- mysql事物隔离级别设置
- mysql事物隔离级别
- Mysql事物的4种隔离级别
- MySQLInnoDB引擎事物隔离级别RC和RR
- Mysql 查看及设置事物隔离级别
- mysql事物的隔离级别
- Mysql事物四种隔离级别
- mysql 事物隔离级别详解
- mysql 事物隔离级别解读
- MySQL事物隔离级别详解 【转】
- MySQL 事物的隔离级别(简要)
- mySQL数据事物隔离级别简单分析