MySQL中的事务

Posted Cucci

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL中的事务相关的知识,希望对你有一定的参考价值。

一、事务的概念:

  事务就是一组原子性的SQL语句,事务内的语句,要么全部执行成功,要么全部执行失败

二、事务的特性

  原子性(atomicity): 一个事务中的SQL语句要么全部执行成功,要么全部执行失败。不存在一部分SQL语句执行成功,一部分SQL语句执行不成功。

  一致性(consistency):在执行事务时,其中一部分SQL执行成功。此时系统发生崩溃,整个事务将全部回滚,不会出现一部分成功的情况,因为此时事务并未提交。

  隔离性(isolation): 一个事务在提交之前所做的修改在提交之前对其他事务是不可见的。

  持久性(durability): 事务一旦提交,就会将修改永久地保存到数据库中

三、事务的隔离级别

  未提交读:在事务未提交之前,所做的修改对其他事务是可见的(脏读)

  提交度:一个事务从开始直到提交之前,所作的修改对其他事务都是不可见的(不可重复读)

  可重复读:在同一事务中多次读取同样的记录的结果是一致的(幻读)

          InnoDB通过MVCC的方式解决了幻读的问题

  可串行化:该级别是最高的隔离级别,通过强制串行事务的方式,解决幻读的问题

以上是关于MySQL中的事务的主要内容,如果未能解决你的问题,请参考以下文章

MySQL中的事务

Mysql中的事务是啥如何使用

mysql中的事务

MySQL事务

MySQL/MariaDB中的事务和事务隔离级别

十:MYSQL中的事务