关于mysql的事务四个特性

背景知识:

  1. mysql事务支持的引擎是InnoDB
  2. mysql事务的四个特性(ACID),分别是原子性,一致性,隔离性,持久性

1.原子性:事务开启(start transaction)到事务结束(commit / rollback)之间的语句要么全部执行成功,要么全部执行失败,不存在一些语句执行成功,一些语句执行失败。

2.一致性:例如小明有2000元存款,小王有1000元存款,总数是3000元,这时候小明转账给小王1000元存款,小明剩下1000元存款而小王则有2000元存款,但是总数仍然是3000元,这就是一致性的体现

3.持久性:事务一旦提交,对数据的修改是永久的

4.隔离性:一个事务对数据库的修改在未提交之前,其他事务是看不见的,如下是事务的四个级别(隔离性由低到高,并发性由高到低):

  1. 读未提交(read uncommitted)
  2. 读已提交(read committed)
  3. 可重复读(repeatable read)
  4. 可串行化(serializable)

可以通过如下命令查看和设置隔离级别:

5.至于四个隔离级别具体是怎么回事,可以查看这篇博文:隔离级别详细

猜你喜欢

转载自blog.csdn.net/wx145/article/details/82744317