Mysql 锁

相对其他数据库而言,MySQL的锁机制比较简单,其最显著的特点是不同的存储引擎支持不同的锁机制。下表中罗列出了各存储引擎对锁的支持情况:

存储引擎 表级锁 行级锁 页面锁
MyISAM 支持 不支持 不支持
InnoDB 支持 支持 不支持
MEMORY 支持 不支持 不支持
BDB 支持 不支持 支持

MySQL这3种锁的特性可大致归纳如下 :

锁类型 特点
表级锁 偏向MyISAM 存储引擎,开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低。
行级锁 偏向InnoDB 存储引擎,开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高。
页面锁 开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。

从上述特点可见,很难笼统地说哪种锁更好,只能就具体应用的特点来说哪种锁更合适!仅从锁的角度来说:表级锁更适合于以查询为主,只有少量按索引条件更新数据的应用,如Web 应用;而行级锁则更适合于有大量按索引条件并发更新少量不同数据,同时又有并查询的应用,如一些在线事务处理(OLTP)系统。

MySQL高级 - 锁 - MySQL对锁的支持相关推荐

  1. Mysql高级部分--索引、锁等详解

    1.索引 1.1.概念 1.2.索引的优势和劣势 1.3.索引的分类 1.4.mysql索引结构 1.4.1.B树的检索原理 1.初始化介绍: 一颗B+树,浅蓝色的块我们称之为一个磁盘块,可以看到每个 ...

  2. 【MySQL高级】Mysql锁问题

    5. Mysql锁问题 5.1 锁概述 锁是计算机协调多个进程或线程并发访问某一资源的机制(避免争抢). 在数据库中,除传统的计算资源(如 CPU.RAM.I/O 等)的争用以外,数据也是一种供许多用 ...

  3. MySQL高级【行级锁】

    1:行级锁 1.1:介绍 行级锁,每次操作锁住对应的行数据.锁定粒度最小,发生锁冲突的概率最低,并发度最高.应用在 InnoDB存储引擎中. InnoDB的数据是基于索引组织的,行锁是通过对索引上的索 ...

  4. 【MySQL高级】MySQL 传输数据过大 max_allowed_packet 参数的设置

    MySQL max_allowed_packet设置以字节发送给服务器的最大数据包大小. (默认: 1MB),数据库变更需要:大的插入和更新可能会被max_allowed_packet参数限制,导致失 ...

  5. 【MYSQL高级】Mysql的SQL性能分析【借助EXPLAIN分析】

    文章目录 性能分析 Mysql查询优化器(Mysql Query Optimizer) Mysql常见瓶颈 EXPLAIN简介 EXPLAIN是什么? EXPLAIN怎么使用? EXPLAIN能干嘛? ...

  6. mysql锁定某一行_MySQL高级学习之行锁

    MySQL高级学习之行锁 1.概述 行锁特点 :偏向InnoDB 存储引擎,开销大,加锁慢:会出现死锁:锁定粒度最小,发生锁冲突的概率最低,并发度也最高. InnoDB 与 MyISAM 的最大不同有 ...

  7. 从前慢-MySql高级

    MySql高级 MySql高级 1 MYSQL用户管理 修改密码 方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@l ...

  8. Mysql高级完整版

    文章目录 写在前面的话: 2.1.1 查看索引 2.1.2 删除索引 2.1.3 ALTER命令 1. 视图 1.1 视图概述 1.2 创建或者修改视图 1.3 查看视图 1.4 删除视图 2. 存储 ...

  9. Mysql 高级学习笔记

    Mysql 高级学习笔记 文章目录 Mysql 高级学习笔记 一.Mysql 基础 1. 聚合函数 2. having 3. sql 的执行顺序 4. 约束 5. 试图 二.Mysql 高级 1. M ...

  10. Mysql高级知识概括

    Mysql高级知识概括 Mysql高级简介 Mysql存储引擎 MYSQL配置文件 MYSQL日志 MVCC MYSQL锁机制 主重复制与读写分离 Mysql分区分表分库 MYSQL字符集与字符序 M ...

最新文章

  1. 什么是深度智能:2021年深度智能的发展趋势
  2. oracle 操作树大全,oracle树查询语句
  3. zephyr 系统--- 内存池使用方法
  4. mysql dif_mysqldiff实现MySQL数据表比较
  5. Linux笔记-inode基本概念
  6. 计算机系统中CPU的寄存器介绍
  7. 使用phppgadmin 遇到的小问题
  8. 项目管理--maven浅析《四》之私服(Nexus)
  9. ffmpeg ts与mp4互相转换
  10. gitlab将个人项目与他人共享设置
  11. 计算机课程设计心得,课程设计心得体会 -心得
  12. springboot修改请求头
  13. dji osdk使用的一些问题
  14. coreseek note
  15. nnunet入门之一 (CT图像分割)
  16. java词云_Java:生成词云(KUMO)
  17. 虚拟服务器 补丁,两种方法为VMware ESXi打补丁
  18. 数据中心蓄冷罐的开式与闭式的选择-孙长青
  19. PIE IN THE SKY
  20. 2021年熔化焊接与热切割考试及熔化焊接与热切割找解析

热门文章

  1. JSTL(JSP Standard Tag Library)读书笔记
  2. 菜单点击展开,超过四个则进行向右滑动显示demo
  3. linux查看文件的编码格式的方法 set fileencoding
  4. element-ui的NavMenu置于顶部(mode=horizontal)时,让菜单可以滚动(overflow-x:auto)(主要用于移动端的菜单显示)...
  5. C++卷积神经网络实例:tiny_cnn代码具体解释(7)——fully_connected_layer层结构类分析...
  6. 用JavaScript实现图片剪切效果
  7. Silverlight学习笔记(三):创建第一个Silverlight应用程序
  8. COM+在win2003+IIS+MSSQL环境下的部署步骤
  9. (二)html5中的属性
  10. LOJ#2542 随机游走