数据库四个隔离级别为read uncommitted,read committed,repeatable read,serializable,依次解决脏读,不可重复读,幻读问题。
 
read uncommitted:写事务阻止其他写事务,避免了更新遗失,但是未阻止读事务。
read committed:写事务阻止读写事务,读事务不会阻止其他事务。解决脏读问题
repeatable read:读事务会阻止其他写事务,但不会阻止其他读事务。解决不可重复读问题
serializable:读加共享锁,写加排他锁。读事务可并发。但是读写,写写互斥,基本上是一个个执行事务,所以叫做串行化。解决幻读问题
 
脏读:读取到未提交数据,导致获取到不准确数据。
不可重复读: (同一个事务中)同一select语句,两次读取到已提交数据,数据内容(数据信息)不一致。
幻读:(可以不是同一事务)同一select语句, 两次读取到已提交数据,数据内容(数据条数)不一致。
 
mysql命令
查询当前数据库隔离级别:select @@tx_isolation;
set transaction isolation level (read uncommitted | read committed | repeatable read | serializable)
posted on 2016-12-26 15:03  逝水往昔拂流年  阅读(647)  评论(0编辑  收藏  举报