每天聊点区块链6:ACID

前言:

很多人都知道数据库事务的几个特新(ACID):原子性、一致性、隔离性见证性和持久性,这些在开发当中会经常用到。

一原子性(Atomicity)

数据库中所有操作执行成功才算整个事务成功,一个SQL语句执行失败,那么已经成功的SQL语句也会撤销。

二 一致性(Consistency)

如果事务中出现错误,系统中的所有变化会自动地回滚,系统返回初使状态。

三 隔离见证性(Isolation)

在并发环境中不同事务同时操作相同数据,每个事务都能获取到完整数据空间。

四 持久性(Durability)

事务执行成功,系统中产生的改变是永久的,即使发生系统崩溃断电等,数据库还可以恢复到事务成功结束时的状态。

五 总结

在数据库中是如何保证这些的呢,数据库由两个文件组成,一个数据库文件和一个日志文件,数据库进行任何操作的时候都是要先写日志的,同样在系统异常情况下,数据库会根据事务去进行回滚等操作。

你可能感兴趣的:(每天聊点区块链6:ACID)