数据库事务的四个特性及含义

ACID 表示事务的特性:原子性、一致性、隔离性和持久性。

  1. 原子性(Atomic):事务中各项操作,要么全做要么全不做,任何一项操作的失败都会
    导致整个事务的失败;
  2. 一致性(Consistent):事务结束后系统状态是一致的;
  3. 隔离性(Isolated):并发执行的事务彼此无法看到对方的中间状态;
  4. 持久性(Durable):事务完成后所做的改动都会被持久化,即使发生灾难性的失败。通
    过日志和同步备份可以在故障发生后重建数据。

事务并发产生的问题:脏读、幻读、不可重复读。

  • 脏读(Dirty Read): A 事务读取 B 事务尚未提交的数据并在此基础上操作,而 B 事务执
    行回滚,那么 A 读取到的数据就是脏数据。
  • 幻读(Phantom Read):事务 A 重新执行一个查询,返回一系列符合查询条件的行,发
    现其中插入了被事务 B 提交的行。
  • 不可重复读(Unrepeatable Read):事务 A 重新读取前面读取过的数据,发现该数据已
    经被另一个已提交的事务 B 修改过了。

你可能感兴趣的:(MySQL)