Mysql中锁的类型有哪些?

article/2025/8/19 1:39:46

Mysql中锁的类型有哪些?

  • 1. 基于锁的属性分类:共享锁、排他锁
  • 2. 基于锁的粒度分类:行级锁(INNODB)、表级锁(INNODB、MYISAM)、页级锁(BDB引擎)、记录锁、间隙锁、临键锁。
  • 3.基于表的状态分类:意向共享锁、意向排他锁。




请添加图片描述

1. 基于锁的属性分类:共享锁、排他锁

  • 共享锁

又称为读锁,S锁,当一个事务为数据加上读锁之后,其他事务只能对该时间加读锁,而不能对数据加写锁,知道所有读锁释放之后,其他事务才能对其进行加持写锁。共享锁的特性主要是为了支持并发的读取数据,读取数据的时候不支持修改,避免重复读取的问题。

  • 排他锁

排他锁又称写锁,简称X锁,当一个事务为数据加上写锁的时候,其他事务不能对其加上任何锁。直到排他锁释放后,才能对数据进行加锁。排他锁的目的是在数据修改的时候,不允许其他人读取和修改,避免了脏数据的问题。

2. 基于锁的粒度分类:行级锁(INNODB)、表级锁(INNODB、MYISAM)、页级锁(BDB引擎)、记录锁、间隙锁、临键锁。

  • 表锁

对整个表进行上锁,当下一个事务访问该表的时候,必须等待上一个事务释放了表锁,才能对其表进行访问。不会会出现死锁。

粒度大、加锁简单、容易冲突

  • 页锁

页锁介于标所和行锁之间,表锁速度快,但是冲突多,行锁冲突少,但是速度慢。一次锁定一组数据,并发一般,会出现死锁。

  • 行锁

锁住的是表中的一行或者多行记录,其他事务访问同一张表的时,只有被锁住的记录不能访问,其他的记录可以正常访问。会出现死锁。

粒度小,加锁比表锁困难,不易冲突,支持更高的并发

  • 记录锁

行锁的一种,和行锁的不同是,只能锁某一行的记录,属于精准命中,命中字段为唯一索引。

粒度更小,加锁更困难,不易冲突,支持更高的并发。

  • 间隙锁

对于键值在条件范围内但不存在的记录,叫做“间隙(GAP)”,InnoDB也会对这些“间隙”进⾏加锁,这种锁机制就是所谓的间隙锁(NEXT-KEY)锁。表记录的一个区间加锁。

  • 临键锁

也是行锁的一种,总结说就是记录所和间隙锁的组合,临键锁会把查询出的记录锁住,并且吧范围查询内的所有间隙也锁住。

3.基于表的状态分类:意向共享锁、意向排他锁。

  • 意向共享锁

当一个事务试图对整个表进行加共享锁之前,首先需要获取这个表的意向共享锁。

  • 意向排他锁

当一个事务试图对整个表进行加排他锁之前,需要先获得这个表的意向排他锁。

当加了这样一个状态,就相当于,告诉其他事务,我已经对整个表进行了共享锁会这我排他锁。避免了对整个索引的每个节点扫描是否加锁,而这个状态就是意向锁。






如有错误欢迎指正


http://chatgpt.dhexx.cn/article/iuTbYoKV.shtml

相关文章

mysql 常见锁的类型(一)

文章目录 一、锁的分类1.1 加锁的目的1.2 锁的类别 二、乐观锁和悲观锁2.1. 乐观锁2.2. 悲观锁: 三、共享锁与排他锁四、表锁五、意向锁六、行级锁七、记录锁(Record Locks)八、间隙锁(Gap Locks)九、临键锁&#xff0…

MySQL-InnoDB常用锁类型解析

Shared(乐观锁) and Exclusive Locks(互斥锁): InnoDB有两种锁类型,Shared(s) and Exclusive(x) Locks(乐观锁和互斥锁)。 Shared&…

MySql InnoDB锁类型

MySql InnoDB锁类型 从类型上来分类,InnoDB存储引擎实现了两种标准的锁 共享锁(S-Lock):允许事务读一行数据 排它锁(X-Lock):允许事务删除或者更新一行数据 如果一个事务获取了S锁,那么其他事务也可以立即获得S锁,…

锁的分类总结

锁的分类是从不同角度去看的。同一个锁也可以同时属于多种类型。 一、乐观锁与悲观锁 1. 互斥同步锁的劣势 阻塞和唤醒会带来性能的劣势 用户态和核心态切换上下文切换检查是否有被阻塞线程需要被唤醒等等 可能出现永久阻塞的问题:持有锁的线程永久阻塞了&#…

锁的介绍和分类(轻量级锁 重量级锁 偏向锁 自旋锁 互斥锁)

目录 公平锁 非公平锁 非公平锁 公平锁 可重入锁 不可重入锁 可重入锁(递归锁) 不可重入锁 轻量级锁 重量级锁 偏向锁 重量级锁 自旋锁(循环上锁) 轻量级锁 轻量级锁的释放 偏向锁 自旋锁和互斥锁 自旋锁 互斥锁 为何要使用自旋锁 自旋…

最全锁种类

你可能听说过很多锁,也看到过很多文章讲解锁,这篇我在这里将对锁的不同分类进行描述锁的设计 互斥锁–共享锁 互斥锁:顾名思义,就是互斥的,意思就是当前同步代码块只能被一个线程访问,sync、reentrantlock、…

锁的类型有哪些

锁的类型有哪些 基于锁的属性分类:共享锁、排他锁。 基于锁的粒度分类:行级锁(INNODB)、表级锁(INNODB、MYISAM)、页级锁(BDB引擎 )、记录锁、间隙锁、临键锁。 基于锁的状态分类:意向共享锁、意向排它锁 共享锁(Share Lock) 共享锁又称读锁&…

Kettle使用教程之Job使用

1、Kettle的Job使用十分简单,这里也只是演示比较简单的操作,创建Job 2、点击转换,然后点击浏览,选择转换对象 3、执行按钮,运行该转换 4、如果需要长期的进行定时转换,可以在Job中的start控件进行配置 转载…

Kettle使用教程之数据同步

Kettle使用教程之数据同步 数据模型原型如下: 1、表输入,针对最新的数据输入的表 2、目标表,需要更新的表 3、两个表都需要进行排序操作 4、合并,根据id进行合并 5、数据同步(包括更新、插入、删除) 6、点击运行,就可…

ETL开发工具KETTLE使用教程

Kettle的建立数据库连接、使用kettle进行简单的全量对比插入更新:kettle会自动对比用户设置的对比字段,若目标表不存在该字段,则新插入该条记录。若存在,则更新。 Kettle简介:Kettle是一款国外开源的ETL工具&#xff0…

ETL工具Kettle使用教程

Kettle使用教程之数据同步 数据同步标识字段 标志字段的值有4种,分别是: “Identical” : 关键字段在新旧数据源中都存在,且域值相同 “changed” : 关键字段在新旧数据源中都存在,但域值不同 “new” : 旧数据源中没有找到该…

Kettle使用教程(一)—— 在MacOS系统中安装 Kettle

Kettle使用教程(一)—— 在MacOS系统中安装 Kettle 一、环境准备二、下载并启动Kettle二、初始化资源库 一、环境准备 Kettle 9.2JDK 1.8 (安装指引)Mysql(安装指引) 二、下载并启动Kettle 首先到官网下…

Kettle使用教程(问题)

关于kettle的介绍此文不做介绍 笔者电脑环境 winoraclejdk1.8kettle7.1 1. 考虑到在在官网下载速度比较慢,在这里可以使用国内的镜像 国内镜像 2. 配置java环境 (1) kettle需要以来java环境,因为没有安装java环境的朋友请移步配置java环境&#xff…

R-P-Faster R-CNN day65 读论文:高分辨率遥感影像综合地理空间目标检测框架

An Efficient and Robust Integrated Geospatial Object Detection Framework for High Spatial Resolution Remote Sensing Imagery 1. Introduction3. Overview of the Proposed R-P-Faster R-CNN Framework3.1. 有效集成区域建议网络与目标检测Faster R-CNN框架3.1.2. RPN与…

多特征融合的高分辨率遥感图像海陆分离——刘思彤

论文阅读笔记 摘要 为解决目前大多数海陆分离方法仅利用单一特征对图像进行处理,从而导致误分割或存在大量孤立区域,造成后续处理工作难度大或无法开展的问题,提出一种联合灰度、梯度和纹理等多特征的海陆分离方法。针对不同的陆地类型选用…

从实现的技术手段细数:高分辨率遥感影像+人工智能的现在和未来

【转自】http://baijiahao.baidu.com/s?id1601901487917871613&wfrspider&forpc 人工智能不可阻挡地向各行业渗透。这一现象,恰巧撞上了“商业遥感卫星发射潮”。这似乎预示了某种潜流。此刻,从事卫星遥感影像解译和大数据提取的专业人士、科研…

高分辨率光学遥感影像舰船目标检测与识别算法研究(尹莹莹)

论文阅读笔记 摘要 本文主要研究海陆背景下的光学遥感图像舰船目标检测与识别技术,重点研究了海陆分离、舰船目标疑似区域检测技术与疑似区域目标识别技术。 海陆分离: 采用了OTSU与形态学相结合的方法实现海路区域初步划分;再以孤立区域内…

基于高分辨率影像的潍坊大棚遥感提取

1 背景 朋友,当你坐在经过潍坊的火车上的时候,是否被窗外的风景震惊过?那一望无际的大棚,像一片海洋,又像一片草原,连接天际,一眼望不到边。在卫星地图上,白茫茫一片,蔚为…

如何浏览与下载全球免费的地图高分辨率(亚米级)的遥感影像?

目录 一.引言 二、高分辨率的地图数据源简介 1.Google Earth影像 2.Esri World Image 3.天地图 4.必应地图 5.高德地图 三、浏览与下载该地图源 1.Google Earth影像浏览与下载​ 2.Esri World Image的浏览与下载 3.天地图瓦片地址浏览与下载 4.必应地图浏览与下载 …

学习笔记-基于全局和局部对比自监督学习的高分辨率遥感图像语义分割-day2

高分辨率遥感图像语义分割-day2 摘要一、引言二、方法2.1 对比学习2.2 全局风格与局部匹配对比学习网络(GLCNet)2.2.1 全局风格对比学习模块:2.2.2局部匹配对比学习: 三、实验和结果A. 数据说明B. 实验设置1 基线:2 评…