关于mysql的事务ACID你了解多少?

事务管理(ACID)

事务具有的四个特征(ACID):原子性(Atomicity)、一致性(Consistency)、隔离性(lsolation)、持久性(Durability)

逐个理解四大特性

原子性

原子性指的是事务要么是一个不可分割的工作单位,事务中的操作要么都发生,要么都不发生。

针对同一事物(比如银行转账的时候)
关于mysql的事务ACID你了解多少?
符合事务的原子性,要么一起成功要么一起失败,不能只完成其中一个动作

一致性

针对一个事务操作前与操作后的状态一样
关于一致性和原子性的区别可以看:怎么理解数据库事务的一致性
关于mysql的事务ACID你了解多少?
理解为在数据上钱没多没少…

隔离性

针对多个用户同时操作。主要是排除其他事务对本次事务的影响
关于mysql的事务ACID你了解多少?
两个事务同时进行,一个事务读取到另一个事务还没有提交的数据
关于mysql的事务ACID你了解多少?

持久性

表示事务结束后的数据不随着外界原因导致数据丢失

操作前A:500,B:100
操作后A:300,B:300
如果在操作前(事务还没有提交)服务器宕机或者断电,那么重启数据库以后,数据状态应该为
A:500,B:100
如果在操作后(事务已经提交)服务器宕机或者断电,那么重启数据库以后,数据状态应该为
A:300,B:300

事务隔离级别

未完待续…