您的位置:首页 > 数据库 > MySQL

MySQL中的事务隔离级别

2010-04-05 11:55 148 查看

MySQL中的事务隔离级别

文章分类:数据库
SQL标准用三个必须在并行的事务之间避免的现象定义了四个级别的事务隔离。这些可能会出现的现象有:

1. 脏读(dirty reads): 一个事务读物了另一个未提交的并行事务写的数据。
2. 不可重复读(non-repeatable reads): 一个事务重新读取前面读取过的数据,发现该数据已经被另一个已提交的事务修改过。
3. 幻读(phantom read): 一个事务查询重新执行一个查询,返回一套符合查询条件的记录,发现这些记录因为其他最近提交的事务而发生了改变。

SQL事务隔离级别

隔离级别脏读(Dirty Read)不可重复读(Non-Repeatable Read)幻读(Phantom Read)
读未提交(Read uncommitted)可能可能可能
读已提交(Read committed)不可能可能可能
可重复读(Repeatable Read)不可能不可能可能
可串行化(Serializable)不可能不可能不可能
在MySql中默认的是事务隔离级别是可重复读(Repeatable Read)。如果想看下MySQL默认事务隔离级别则使用:
SELECT @@global.tx_isolation;
如果想修改事务隔离级别使用
set global transaction isolcation level +事务隔离级别
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: