数据库的四大特性:1、原子性,是指事务包含的所有操作要么全部成功,要么全部失败回滚;2、一致性,是指事务必须使数据库从一个一致性状态变换到另一个一致性状态;3、隔离性;4、持久性。

本教程操作环境:windows10系统、mysql8、Lenovo 小新Air14电脑。

数据库的四大特性

1. 原子性(Atomicity)

原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚。失败回滚的操作事务,将不能对事物有任何影响。

2. 一致性(Consistency)

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

数据库状态如何变化?每一次数据变更就会导致数据库的状态迁移。如果数据库的初始状态是C0,第一次事务T1的提交就会导致系统生成一个SYSTEM CHANGE NUMBER(SCN),这是数据库状态从C0转变成C1。执行第二个事务T2的时候数据库状态从T1变成T2,以此类推,执行第Tn次事务的时候数据库状态由C(n-1)变成Cn。

一致性可以从一致读和一致写两个方面来理解。一致读 事务读取数据只能从一个状态中读取,不能从2个或者2个以上状态读取。也就是T(n)只能从C(n-1),C(n-2)... C(1)中的一个状态读取数据,不能一部分数据读取自C(n-1),而另一部分数据读取自C(n-2)。

一致写 事务执行的数据变更只能基于上一个一致的状态,且只能体现在一个状态中。T(n)的变更结果只能基于C(n-1),C(n-2), ...C(1)状态,且只能体现在C(n)状态中。也就是说,一个状态只能有一个事务变更数据,不允许有2个或者2个以上事务在一个状态中变更数据。至于具体一致写基于哪个状态,需要判断T(n)事务是否和T(n-1),T(n-2),...T(1)有依赖关系。

3. 隔离性(Isolation)

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

例如同时有T1和T2两个并发事务,从T1角度来看,T2要不在T1执行之前就已经结束,要么在T1执行完成后才开始。将多个事务隔离开,每个事务都不能访问到其他事务操作过程中的状态。

关于事务的隔离性,数据库也提供了多种方案,后面我们将会进行详细介绍

4. 持久性(Durability)

持久性是指事务的操作,一旦提交,对于数据库中数据的改变是永久性的,即使数据库发生故障也不能丢失已提交事务所完成的改变。

html中的特性是什么,数据库的四大特性是什么相关推荐

  1. 数据库ACID四大特性到底为了啥,一文带你看通透

    小伙伴想精准查找自己想看的MySQL文章?喏 → MySQL江湖路 | 专栏目录   说起数据库四大特性,同学们张口就来,ACID!那为什么要ACID?每种特性的原理又是什么?如何实现的?废话少说,哈 ...

  2. 数据库事务 四大特性

    数据库事务四大特性(ACID) 敲黑板,这是重点,记下来!!会考到 转载连接:https://www.cnblogs.com/fjdingsd/p/5273008.html ⑴ 原子性(Atomici ...

  3. 数据库的四大特性和事务隔离级别

    数据库中经常被问到四大特性和隔离级别,一般都是涉及到概念性问题,在此做一些整理总结,方便理解. 1.事务的隔离级别 由低到高依次为Read uncommitted(未授权读取.读未提交).Read c ...

  4. mysql事务的四大特性_浅谈数据库事务四大特性

    数据库四大特性分别是:原子性.一致性.分离性.持久性.下面我们看看具体介绍. 原子性 事务的原子性指的是,事务中包含的程序作为数据库的逻辑工作单位,它所做的对数据修改操作要么全部执行,要么完全不执行. ...

  5. 数据库 事务 四大特性 原子性Atomic 一致性Consistent 隔离性Insulation Isolation 持久性Duration 隔离级别

    https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BA%93%E4%BA%8B%E5%8A%A1/9744607?fr=aladdin 数据库事务 ...

  6. mysql数据库事务四大特性的实现原理

    事务的四大特性 原子性.一致性.隔离性.持久性 原子性实现 原子性保证事务要么全执行成功,要么全不执行. mysql使用回滚机制实现,undo log实现回滚. 事务执行 insert.update. ...

  7. mysql特性举例_MySQL事务的四大特性和隔离级别

    1.事务的四大特性(ACID) #### 1.1.原子性(Atomicity) 原子性是指事务包含的一系列操作要么全部成功,要么全部回滚,不存在部分成功或者部分回滚,是一个不可分割的操作整体. 1.2 ...

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

    什么是事务 什么是事务? 当多个操作有这样的要求时:要么都成功要么都失败,这说明这多个操作必须在一个事务中,事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit ...

  9. 数据库事务四大特性(ACID)

    1.原子性(Atomicity) 原子性是指一个事物内所有操作共同组成一个原子包,要么全部成功,要么全部失败回滚.也就是说事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影 ...

最新文章

  1. Flask中的请求上下文和应用上下文
  2. python死机_请问下为什么我用PYTHON写编译器一旦用READ就死机
  3. Webstorm相关设置
  4. 判断一段程序是由C 编译程序还是由C++编译程序编译的
  5. 再谈 document.documentElement 与 document.body 的 scrollWidth、offsetWidth、clientWidth
  6. Oracle11g限制ip访问数据库,Oracle11g设置IP访问限制
  7. linux python守护进程编写
  8. com.sun:tools
  9. PrizmDoc HTML5文档查看器和Web API
  10. 网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
  11. 金融计算机加权平均,什么是加权平均
  12. 利用VBA向Word中批量添加图片以及整理成Excel数据的图片名
  13. 2015-2020: 5年,不问归期,奋斗没有终点
  14. Cisco AAA 配置
  15. 如果使用半导体RFID读写器CK-S640-AP60E读取RI-TRP-DR2B-40的UID信息
  16. 移动互联网业务的产业链
  17. 【Python】如何用pyth做游戏脚本(太简单了吧)
  18. 128、H3C交换机恢复出厂和各种基本配置
  19. 学习编程前需要知道什么?
  20. 外汇交易的高风险行为应该如何防范?

热门文章

  1. python中set函数是什么数据类型_阿博Python之路-详解Set数据类型
  2. 事务超时时间无效_阿里分布式事务组件 fescar/seata 对 XA 2PC 的改进及其设计思想...
  3. Linux 如何取进程运行时间,linux -- 获取进程执行时间
  4. 计算机网络现在成功,百收计算机网络努力的人是怎么成功的
  5. 上下文保存 中断_Linux性能优化(CPU篇)(5)——CPU的上下文切换有几种类型?什么是进程上下文切换?...
  6. activiti 流程图乱码
  7. alm系统的使用流程_840D sl系统授权管理
  8. c语言复制后无法运行,刚学C语言,在Linux下写的代码能正常编译,复制到VC下就无法运行...
  9. python查询mysql 乱码问题_python查询mysql中文乱码问题
  10. u盘启动 联想一体机_关于联想扬天B41-30-NTZ(L)使用U盘重装Win10系统的详细步骤