MySQL-锁篇

文章目录

  • 表级锁和行级锁了解吗?有什么区别?
  • 行级锁使用有什么注意事项?
  • InnoDB有哪几类行锁?
  • 共享锁和排他锁是什么?
  • 意向锁有什么用?

锁是一种常见的并发事务的控制方式

表级锁和行级锁了解吗?有什么区别?

表级锁:MySQL中锁定粒度最大的一种锁(全局锁除外),针对非索引字段加的锁,不会出现死锁,不过,触发锁冲突的概率最高,高并发下效率极低
行级锁:MySQL中锁定粒度最小的一种锁,是针对索引字段加的锁,只针对当前操作记录的行加的锁

行级锁使用有什么注意事项?

行锁是针对索引字段加的锁,表级锁是针对非索引字段的锁,当我们执行update,delete语句时,如果where条件没有命中唯一索引或者索引失效的话,就会导致扫描全表对表中所有行记录进行加锁

InnoDB有哪几类行锁?

  1. 记录锁:锁定单个行记录的锁
  2. 间隙锁:锁定索引记录间隙(不含该记录)
  3. 临键锁:记录锁+间隙锁,同时锁住数据,并锁住间隙

共享锁和排他锁是什么?

不论表级锁和行级锁,都存在共享锁(S锁)和排他锁(X锁)两类
共享锁:读锁,事务在读取记录时获取共享锁,允许多个事务同时获取
排他锁:写锁/独占锁,事务在修改记录时获取排他锁,不允许多个事务同时获取
排他锁与其他任何锁都不兼容,共享锁只与共享锁兼容

S 锁X 锁
S 锁不冲突冲突
X 锁冲突冲突

意向锁有什么用?

用到表锁时,快速判断一个表是否有行锁
意向锁是表级锁,分为两类:

  • 意向共享锁(IS锁):事务有意向对表中某些记录添加共享锁(S锁),加共享锁之前必须先获取该表的IS锁
  • 意向排他锁(IX锁):事务有意向对表中某些记录添加排他锁(X锁),加排它锁之前必须先获取该表的IX锁

意向锁之间是相互兼容的

IS 锁IX 锁
IS 锁兼容兼容
IX 锁兼容兼容

意向锁和共享锁和排他锁互斥兼容情况

IS 锁IX 锁
S 锁(读锁)兼容互斥
X 锁(写锁)互斥互斥

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/822179.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

鸿蒙HarmonyOS开发规范-完善中

代码规范 所有文件,包括自动生成的编译文件package.json都要格式化(IDE快捷键CtrlAltL);函数命名,C大驼峰,TS、JS小驼峰,函数命名注意动宾结构;静态常量需使用全大写,文…

如何提取音频中的封面

大家在播放MP3音乐的时候经常可以在播放器上看到这个音乐的封面,那么我们要如何提取MP3的音乐里面的封面呢? 打开智游剪辑(官网: zyjj.cc),搜索音乐封面提取 然后就只需要拖入MP3文件点击提交就可以了 下面这里简单展示…

Python100个库分享第20个—xlrd(办公库篇)

目录 专栏导读库的介绍库的功能库的安装测试数据准备基础用法1:读取xlsx表格基础用法2:读取指定单元格的数据基础用法3:工作表的一些基本信息总结专栏导读 🌸 欢迎来到Python办公自动化专栏—Python处理办公问题,解放您的双手 🏳️‍🌈 博客主页:请点击——> 一晌…

预分频器×重装载值)/LSI频率 为什么等于总时间

1. 第一种算法理解:分频系数 64 ,外部低速时钟40khz, 则一次计数周期1.6ms ,计数625个数,则有625个周期 ,1.6ms*625 等于1s 如果分频系数是64,外部低速时钟(LSI)频率是…

K8S之Resource Quotas

参考文档:资源配额 | Kubernetes 1.Resource Quotas:资源配额管理 当多个用户或团队共享具有固定节点数目的集群时,人们会担心有人使用超过其基于公平原则所分配到的资源量。 资源配额是帮助管理员解决这一问题的工具。 资源配额&#xff0c…

Linux硬件管理

文章目录 Linux硬件管理1.查看磁盘空间 df -h2.查看文件的磁盘占用空间 du -ah3.查看系统内存占用情况 htop Linux硬件管理 1.查看磁盘空间 df -h 语法 df [选项][参数]选项 -a或–all&#xff1a;包含全部的文件系统&#xff1b; –block-size<区块大小>&#xff1a;…

微信小程序浮标,可以拖动,自动靠边隐藏一半客服图标功能

不多说&#xff0c;直接上代码。全屏拖动无抖动&#xff0c;中间停留自动靠边&#xff0c;拖动隐藏一半&#xff0c;可自己根据代码改动为自己想要的效果 js代码 import { tpStaticUrl,basictpStaticUrl } from "../../../envConfig"; let app getApp(); Componen…

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十三 简单去除图片水印效果

Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十三 简单去除图片水印效果 目录 Python 基于 OpenCV 视觉图像处理实战 之 OpenCV 简单实战案例 之十三 简单去除图片水印效果 一、简单介绍 二、简单去除图片水印效果实现原理 三、简单去除图片水印效果案例…

神经网络压缩图像

简介 典型的压缩管道由四个组件组成&#xff1a; 编码&#xff1a;输入图像 x x x通过编码器函数 ε \varepsilon ε&#xff0c;将其转换为潜在表示 z z z。 量化&#xff1a;截断 z z z以丢弃一些不重要的信息 熵编码&#xff1a;使用某种形式的熵编码&#xff08;例如&…

盲人安全导航技巧:科技赋能让出行更自如

作为一名资深记者&#xff0c;长期关注并报道无障碍领域的发展动态。今日&#xff0c;我将聚焦盲人安全导航技巧&#xff0c;探讨这一主题下科技如何赋能视障人士实现更为安全、独立的出行。一款融合了实时避障、拍照识别物体及场景功能的盲人出行辅助应用叫做蝙蝠避障&#xf…

Java中Session的实现

在Java中&#xff0c;Session是一种用于在Web应用程序中跟踪用户状态的机制。它允许服务器在不同的HTTP请求之间存储和检索特定于用户的信息。Session是建立在HTTP协议之上的&#xff0c;它通过在服务器和客户端之间传递一个唯一的标识符来跟踪用户。 下面是对Java中的Session的…

4G/5G布控球/移动执法仪/智能单兵电力巡检远程视频智能监控方案

一、背景与需求 随着科技的不断进步&#xff0c;视频监控技术已成为电力行业不可或缺的一环。电力行业的巡检及建设工作&#xff0c;因施工现场在人迹罕见的野外或山区&#xff0c;地形复杂多变&#xff0c;安全更是重中之重&#xff0c;现场工作的视频图像需实时传回监管中心…

全量知识系统 程序详细设计之 “组织”与“分析”(QA SmartChat)

Q1. 今天我们聊聊全量知识系统&#xff08;“全知系统”&#xff09;中的“组织”与“分析” 全知系统是指一个包含所有可能知识和信息的系统&#xff0c;它具有对所有领域的知识的理解和洞察力。在这样一个系统中&#xff0c;组织和分析是非常重要的环节&#xff0c;可以帮助…

【读论文】【泛读】三篇生成式自动驾驶场景生成: Bevstreet, DisCoScene, BerfScene

文章目录 1. Street-View Image Generation from a Bird’s-Eye View Layout1.1 Problem introduction1.2 Why1.3 How1.4 My takeaway 2. DisCoScene: Spatially Disentangled Generative Radiance Fields for Controllable 3D-aware Scene Synthesis2.1 What2.2 Why2.3 How2.4…

LabVIEW变速箱自动测试系统

LabVIEW变速箱自动测试系统 在农业生产中&#xff0c;采棉机作为重要的农用机械&#xff0c;其高效稳定的运行对提高采棉效率具有重要意义。然而&#xff0c;传统的采棉机变速箱测试方法存在测试效率低、成本高、对设备可能产生损害等问题。为了解决这些问题&#xff0c;开发了…

HTTP协议安全传输教程

HTTP协议有多个版本&#xff0c;包括但不限于HTTP/0.9、HTTP/1.0、HTTP/1.1、HTTP/2和HTTP/3。这些版本各自具有不同的特点和改进&#xff0c;以适应网络技术的发展和满足不同的需求。例如&#xff0c;HTTP/1.0使用文本格式传输数据&#xff0c;简单易用且兼容性好&#xff0c;…

C++11 Thead线程和线程池

参考资料&#xff1a; 2、5.lock_guard 与 std::unique_lock-陈子青的编程学习课堂 (seestudy.cn) 3、C11 多线程编程-小白零基础到手撕线程池_哔哩哔哩_bilibili 一、 C11 Thead线程库的基本使用 # include <thread> std::thread t(function_name, args...); // 线…

十大排序——11.十大排序的比较汇总及Java中自带的排序算法

这篇文章对排序算法进行一个汇总比较&#xff01; 目录 0.十大排序汇总 0.1概述 0.2比较和非比较的区别 0.3基本术语 0.4排序算法的复杂度及稳定性 1.冒泡排序 算法简介 动图演示 代码演示 应用场景 算法分析 2.快速排序 算法简介 动图演示 代码演示 应用场景…

java 溯本求源之基础(十五)之Monitoring--jps

目录 1.jps命令概述 2.基本用法 2.1常用选项 3.应用场景 4.注意事项 5.结语 Java开发与运维过程中&#xff0c;对于Java虚拟机&#xff08;JVM&#xff09;的监控与管理至关重要。在众多JVM工具中&#xff0c;jps命令作为一种监控工具&#xff0c;为开发者提供了一种快捷…

Linux LVM与磁盘配额

目录 一.LVM概述 LVM LVM机制的基本概念 PV&#xff08;Physical Volume&#xff0c;物理卷&#xff09; VG&#xff08;Volume Group&#xff0c;卷组&#xff09; LV&#xff08;Logical Volume&#xff0c;逻辑卷&#xff09; 二.LVM 的管理命令 三.创建并使用LVM …