ACID原则-大道至简,你不觉得很秒嘛?

简介: ACID原则-大道至简,你不觉得很秒嘛?

简介

对于一个可靠的支持事务的数据库管理系统来说,若要保证事务过程中数据的正确性,则必须具有的四个基本特性,分别是:原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability);本篇主要介绍ACID四个原则的语义。

原子性(Atomicity)

原子性是说,一次事务中所有的指令,从效果来看他们需作为一个不可分割的整体。在操作这些指令时,从执行效果看,要么全部执行成功,要么全部不执行。只要当前事务中的有一个指令执行失败,那其他所有指令都要执行失败:尚未执行的指令不再执行,已经执行的指令,需将其数据变更进行回滚,恢复到事务执行前的状态。

一致性(Consistency)

一致性的说法很多,我比较认可的一种说法是“系统从一个正确的状态,迁移到另一个正确的状态”。这里正确的状态特别有讲究,既要能够达到理想状态下的预期效果,又要遵守数据库实现层面的相关约束(违反约束会报错)。

有这种解释推荐给大家:通过事务的AID来保证C,AID都是手段,C是目的,AID是数据库的特征(就是依赖数据库的具体实现);而C实际上它依赖于应用层(正确的状态由上层应用的业务状态决定),也就是依赖于开发者(由开发着的逻辑控制来保证这个正确的状态)。具体查看:如何理解数据库事务中的一致性的概念?

隔离性(Isolation)

隔离性是说,事务是并发的,多个并发执行的事务相互之间是隔离的;每个事务都不受其它事务中的操作干扰;某个事务中所做的修改在完成提交以前,其他事务不可见。

持久性(durability)

持久性是说,当事务成功提交后,事务操作对数据的变更是会永久性的保存到数据库中。

最后说一句(请关注,莫错过)

如果这篇文章对您有帮助,或者有所启发的话,欢迎关注公众号【 架构染色 】进行交流和学习。您的支持是我坚持写作最大的动力。


相关文章
|
22天前
|
SQL 关系型数据库 MySQL
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
46 1
分布式事物【 认识事物、脏写、脏读、不可重复读、幻读】(一)-全面详解(学习总结---从入门到深化)
|
22天前
|
SQL 关系型数据库 MySQL
|
SQL 数据库 数据库管理
事物的ACID是指什么?
事物的ACID是指什么?
|
数据库 数据库管理
分布式学习四:ACID理论
分布式学习四:ACID理论
136 0
|
SQL 关系型数据库 MySQL
事务的四大特性(ACID)| 学习笔记
快速学习事务的四大特性(ACID)。
事务的四大特性(ACID)| 学习笔记
|
存储 SQL 关系型数据库
步步为营,剖析事务中最难的——隔离性
步步为营,剖析事务中最难的——隔离性
114 0
步步为营,剖析事务中最难的——隔离性
|
消息中间件 存储 SQL
分布式事务理论详解
分布式事务理论详解
191 0
分布式事务理论详解
|
关系型数据库 MySQL 测试技术
软件测试mysql面试题:事物的四大特性(ACID)介绍一下?
软件测试mysql面试题:事物的四大特性(ACID)介绍一下?
100 0
|
SQL 关系型数据库 MySQL
事务的四大特性(ACID)|学习笔记
快速学习事务的四大特性(ACID)
事务的四大特性(ACID)|学习笔记
|
SQL Oracle 关系型数据库