Mysql事物原理
什么是事务?
一组对数据库的操作,把这一组看成一个再给你,要么全部成功,要么全部失败。
事务的四大特性
事务具有原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)四个特性,简称 ACID,缺一不可。
原子性 Atomicity :把一组操作(一个事务)看成一个整体,这一组操作要么全部成功,或者全部失败,不可分割
一致性Consistency :一致性要求任何写到数据库的数据都必须满足于预先定义的规则(数据不能出错),简单来说就是在任何时间点都不能出现违反一致性要求的状态。Mysql通过排他锁来保证一致性
比如A向B转账,A账户的钱少了,B账户的钱就应该对应增加,这就转账成功了,失败就不一致了。
持久性Durability : 持久性的关键在于一旦“完成事务提交”(committed),那么数据就不会丢失,因为数据已经被持久化到磁盘。(持久化是将内存中的数据备份到磁盘的过程;持久性是一旦完成事务提交,数据就已经持久化到磁盘了)
隔离性Isolation :多个事务之间是相互隔离的,互不影响,