美文网首页
mysql-行锁理论

mysql-行锁理论

作者: 卫泽洪_70a7 | 来源:发表于2021-06-08 13:16 被阅读0次

特点

  • 偏向InnoDB存储引擎,开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。
  • InnoDB与MyISAM的最大不同有两点:
    一是支持事务(TRANSACTION);
    二是采用了行级锁

由于行锁支持事务,老知识复习

  • 事务(Transaction)及其ACID属性
    事务是由一组SQL语句组成的逻辑处理单元,事务具有以下4个属性,通常简称为事务的ACID属性。
    1、原子性(Atomicity): 事务时一个原子操作单元,其对数据的修改,要么全都执行,要么全都不执行。
    2、一致性(Consistent): 在事务开始和完成时,数据都必须保持一致状态。这意味着所有相关的数据规则都必须应用于事务的修改,以保证数据的完整性;事务结束时,所有的内部数据结构(例如B树索引或双向链表)也都必须时正确的。
    3、隔离性(Isolation): 数据库系统提供一定的隔离机制,保证事务在不受外部并发操作影响的“独立”环境。这意味着事务处理过程中的中间状态对外部时不可见的,反之亦然。
    4、持久性(Duration):事务完成之后,它对于数据的修改都是永久性的,即使出现系统故障也能够保持。

  • 并发事务处理带来的问题
    1、更新丢失(Lost Update)


    image.png

    2、脏读(Dirty Reads)


    image.png

3、不可重复读(Non-Repeatable Reads)


image.png

4、幻读(Phantom Reads)


image.png
  • 事务隔离级别(mysql的事务隔离级别时可重读)


    image.png

查看当前数据库的事务隔离级别

show 
image.png

相关文章

  • mysql-行锁理论

    特点 偏向InnoDB存储引擎,开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。 I...

  • 07 MySQL-初识MySQL-锁-行锁

    聊聊InnoDB的行锁,以及如何通过减少锁冲突来提升业务并发度。 行锁 顾名思义,行锁就是针对数据表中行记录的锁。...

  • mysql-行锁案例讲解

    建表 行锁定基本演示 首先要在两个会话中都关闭自动提交 无索引行锁升级为表锁 间隙锁危害 常考如何锁定一行 案例结...

  • mysql-数据库锁理论概述

    什么是锁? 锁是计算机协调多个进程或线程并发访问某一资源的机制。 锁的分类 从数据操作的类型分为:读锁、写锁1)读...

  • mysql锁机制

    1,数据库锁理论概述分类: 读锁、写锁。行锁,表锁,页锁。1.1 表锁:无死锁,加锁快加锁:lock tabl...

  • Mysql-锁

    http://www.cnblogs.com/chenqionghe/p/4845693.html https:/...

  • Mysql-锁

    https://blog.csdn.net/xifeijian/article/details/20313977

  • Mysql-锁

    锁 by shihang.mai 项目MyisamInnodb锁粒度表锁行锁或者表锁写锁/排他锁lock tabl...

  • MySQL-锁

    锁的分类对表的并发操作就需要用到锁,其中mysql中锁分为共享锁(shared lock读锁)和排他锁(exclu...

  • mysql-锁

    一 什么是锁 锁机制用于管理对公共资源的并发访问。 1.1 优点 数据是一种供多用户共享的资源,保证数据并发访问的...

网友评论

      本文标题:mysql-行锁理论

      本文链接:https://www.haomeiwen.com/subject/seyysltx.html