mysql数据库事务及隔离级别详解

╰+攻爆jí腚メ 2023-01-14 01:51 208阅读 0赞

今天我们分享 mysql数据库事务及隔离级别:

一、事务特性:

首先,事务应该具有 4 个属性:原子性、一致性、隔离性、持久性。这四个属性通常称为 ACID 特性。

原子性(atomicity):undo log(MVCC)

一致性(consistency):最核心和最本质的要求

隔离性(isolation):锁,mvcc(多版本并发控制)

持久性(durability):redo log

二、隔离性(**isolation**)详解:

1、隔离级别:

一个事务的执行不能被其他事务干扰。即一个事务内部的操作及使用的数据对并发的其他事务是隔离的,并发执行的各个事务之间不能互相干扰。(对数据库的并行执行,应该像串行执行一样)

未提交读(READ UNCOMMITED)脏读

已提交读 (READ COMMITED)不可重复读

可重复读(REPEATABLE READ)

可串行化(SERIALIZABLE)

数据库的事务隔离级别有四种,分别是读未提交、读已提交、可重复读、序列化,不同的隔离级别下会产生脏读、幻读、不可重复读等相关问题,因此在选择隔离级别的时候要根据应用场景来决定,使用合适的隔离级别。各种隔离级别和数据库异常情况对应情况如下:

发表评论

表情:
评论列表 (有 0 条评论,208人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MySQL事务隔离级别详解

    SQL标准定义了4类隔离级别,包括了一些具体规则,用来限定事务内外的哪些改变是可见的,哪些是不可见的。低级别的隔离级一般支持更高的并发处理,并拥有更低的系统开销。 Read

    相关 MySQL事务隔离级别详解

    前言 提到事务,你肯定不会陌生,最经典的例子就是转账,甲转账给乙100块,当乙的账户中到账100块的时候,甲的账户就应该减去100块,事务可以有效的做到这一点。 ![w

    相关 数据库事务隔离级别

    一、事务的基本要素(ACID) 1、原子性(Atomicity):事务开始后所有操作,要么全部做完,要么全部不做,不可能停滞在中间环节。事务执行过程中出错,会回滚到事务开