美文网首页
mysql-数据库锁理论概述

mysql-数据库锁理论概述

作者: 卫泽洪_70a7 | 来源:发表于2021-06-01 15:38 被阅读0次

什么是锁?

锁是计算机协调多个进程或线程并发访问某一资源的机制。

锁的分类

  • 从数据操作的类型分为:读锁、写锁
    1)读锁(共享锁):针对同一份数据,多个度操作可以同时进行而不互相影响。
    2)写锁(排它锁):当前写操作没有完成前,它会阻断其他写锁和读锁。

  • 从对数据操作的粒度分为:表锁、行锁、页锁,前两种是企业里面用的最多的,重点介绍。而介于表锁和行锁之间,知道即可。
    1)表锁(偏读):

    • 特点:偏向MyISAM存储引擎,开销小,加锁快;无死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。
      2)行锁(偏写)

额外说明:

  • 在MySQL里,表锁不会有死锁发生,因为再加表锁前,要先解锁已有的表锁。
  • 表锁时,会锁定表以及表里所有数据,对该表的任何请求(尤其是写请求)几乎都可能会被阻塞,所以说冲突更多。
  • 死锁是两个或多个事务/请求之间的锁产生了回路,也就是死循环了,其中一个循环不主动放弃解开的话,就永远解不开。而锁冲突则是有个session持有了某个资源(比如id=1的数据)的写锁,另一个seession正好也要请求同一条数据的写锁,就必须被阻塞,直到前面的session释放锁为止,我一般称之为”锁死“或”长时间锁等待“。

相关文章

  • mysql-数据库锁理论概述

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

  • mysql锁机制

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

  • mysql-行锁理论

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

  • MySQL的锁

    数据库锁 概述 相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。比...

  • Mysql-概述

    架构图 图片来源 数据文件(innodb) 每张表都有两种后缀名的文件,分别为frm后缀与ibd后缀。 .frm ...

  • MySQL表级锁和行级锁

    MySQL学习笔记(五):MySQL表级锁和行级锁 一:概述 相对其他数据库而言,MySQL的锁机制比较简单,其最...

  • MySQL锁简介

    备注:测试数据库版本为MySQL 8.0 这个blog我们来聊聊MySQL 事务 一.MySQL锁概述 数据库锁定...

  • 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-数据库锁理论概述

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