关于数据库的隔离级别

来源:互联网 发布:上市公司研发支出数据 编辑:程序博客网 时间:2024/05/16 14:08

一般来说, 数据库有四种隔离级别如下:



1.READ UNCOMMITTED(读未提交数据):允许事务读取未被其他事务提交的变更。此种隔离级别下,脏读、不可重复读和幻度都可能出现

2.READ COMMITTED(读已提交数据):只允许事务读取已经被其他事务提交的变更。但不可重复读和幻读的问题仍然会出现

3.REPEATABLE READ(可重复读):确保事务可以多次从一个字段中读取相同的值,在这个事务持续期间,禁止其他事务对这个字段进行更新。可重复读可以避免脏读和不可重复读,但幻读的问题仍然可能出现。

4.serializable(串行化):确保事务可以从一个表中读取相同的行,在这个事务持续期间。禁止其他事务对该表执行插入、更新和删除操作。串行化可以避免所有的并发问题,但性能十分低下。


Oracle 支持的 2 种事务隔离级别:READ COMMITED, SERIALIZABLE.Oracle 默认的事务隔离级别为:READ COMMITED 
Mysql 支持 4 中事务隔离级别.Mysql 默认的事务隔离级别为: REPEATABLE READ


在MySQL命令行下,如果想修改MySQL的隔离级别,可输入以下命令:

set transaction isolation level read committed;

0 0
原创粉丝点击