[数据库] 数据库的四大特性acid及事务的隔离级别

转载 2016年08月30日 16:19:09


ACID

A - atomicity 原子性,指事务包含的所有操作要么全部成功,要么全部失败回滚,不可能停滞在某个中间环节

C – consistency 一致性,指事务必须使数据库从一个一致性状态变换到另一个一致性状态,也就是说一个事务执行之前和执行之后都必须处于一致性状态。

I – Isolation 隔离性,当多个用户并发访问数据库时,比如操作同一张表,数据库为每一个用户开启的事务,不能被其他事务的操作所干扰,多个并发事务之间要相互隔离。

D – Durability 持久性,指一个事务一旦被提交了,那么对数据库中的数据的改变就是永久性的,即便是在数据库系统遇到故障的情况下也不会丢失事务的操作。

 

并发操作会带来哪些数据不一致性? (ABC)

A 丢失修改:两个事务读入同一数据并修改,T2提交的结果破坏了T1提交的结果,比如T1 读A修改为A-1, T2读A修改为A-1,实际上T2读的是A-1,修改后变为A-2.

 

B 不可重复读:在一个事务两次读数据之间的间隙,另一个事务对该数据访问并进行了修改(同一条件,不同时间,读取的数据值不同,存在update)

 

C 脏读:是指当一个事务对数据进行了修改但还没提交到数据库时,另一个事务访问并使用了这个数据。



 

幻影读: 同一事务在两个不同的时间段执行相同的查询条件得到的结果不一致(同样的条件,第一次和第二次读出的记录个数不一样,存在add/delete记录)

 

 现在来看看MySQL数据库为我们提供的四种隔离级别:

  ① Serializable (串行化):可避免脏读、不可重复读、幻读的发生。

  ② Repeatable read (可重复读):可避免脏读、不可重复读的发生。

  ③ Read committed (读已提交):可避免脏读的发生。

  ④ Read uncommitted (读未提交):最低级别,任何情况都无法保证。

 

在MySQL数据库中默认的隔离级别为Repeatableread (可重复读)。

在MySQL数据库中查看当前事务的隔离级别:

    select @@tx_isolation;

 

在MySQL数据库中设置事务的隔离 级别:

    set  [glogal | session]  transaction isolation level 隔离级别名称;
 
    set tx_isolation=’隔离级别名称;’
举报

相关文章推荐

数据库事务的ACID特性和隔离级别

1. 事务的四个特性 数据库事务(Transaction)是指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。一方面,当多个应用程序并发访问数据库时,事务可以在应用程序间...

MySql--数据库事务四大特性以及隔离级别

事务的 四大特性(ACID):原子性、一致性、隔离性、持久性。 ⑴ 原子性(Atomicity)   原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,换言之,事务的操作如果成功就必...
  • Gol_s
  • Gol_s
  • 2017-06-08 14:32
  • 284

精选:深入理解 Docker 内部原理及网络配置

网络绝对是任何系统的核心,对于容器而言也是如此。Docker 作为目前最火的轻量级容器技术,有很多令人称道的功能,如 Docker 的镜像管理。然而,Docker的网络一直以来都比较薄弱,所以我们有必要深入了解Docker的网络知识,以满足更高的网络需求。

数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。 1 数据库事务的四大特性   如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性:  1.1 原...

数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity)...

数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity)   原子性...

数据库事务的四大特性以及事务的隔离级别

来源:http://www.cnblogs.com/fjdingsd/p/5273008.html 本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   ...

数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity)...

数据库事务的四大特性以及事务的隔离级别

数据库事务的四大特性以及事务的隔离级别   本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要...

数据库事务的四大特性以及事务的隔离级别

数据库事务的四大特性以及事务的隔离级别   本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要具备...

数据库事务的四大特性以及事务的隔离级别

本篇讲诉数据库中事务的四大特性(ACID),并且将会详细地说明事务的隔离级别。   如果一个数据库声称支持事务的操作,那么该数据库必须要具备以下四个特性: ⑴ 原子性(Atomicity)   ...
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)