1.行锁

1.1 读锁也叫共享锁/S锁/读锁

    加锁方式:1. insert into student select * from student1 表备份的时候 2. select * from student lock in share mode 手动sql语句加锁

1.2. 排他锁/写锁/X锁/独占锁

    x锁允许持有锁的事务更新或删除行。update/delete/select * from table for update;数据行被事务添加x锁后,其他事务不能再为改行的数据添加任意类型的锁。除了读锁之外,写锁是innoDB引擎级的,实现方式为间隙锁。在修改数据时,会首先加间隙锁,如果修改条件有范围或者不是根据索引(**包括普通索引**)修改,间隙锁会结合next-key锁定多行记录。在插入数据时,会添加插入意向锁在事务未提交的情况下,如果另外的事务来修改数据,则根据修改条件,如果有使用唯一索引则直接修改,否则需要等插入事务提交,意向锁释放才可以修改数据。间隙锁:是对索引间隙之间的间隙的锁定。使用特殊唯一字段查询数据不使用间隙锁。具体的表现形式为next-key.

加读锁则不能添加写锁
间隙锁只存在于特定的隔离级别中,读已提交中间隙锁会自动失效

2.表锁

2.1 MDL元数据锁


数据库服务器层的锁

2.2 innoDB层的表锁

2.3 自增锁

以sql为单位,每执行一条自动生成一个id.

mysql行锁/表锁相关推荐

  1. mysql怎么加全局锁_MySQL锁机制/管理(并发锁,行锁,表锁,预加锁,全局锁等等)

    MySQL实验室 1.?MySQL 中并发和隔离控制机制 Meta-data元数据锁:在table cache缓存里实现的,为DDL(Data Definition Language)提供隔离操作.一 ...

  2. mysql innodb 全表锁,Mysql InnoDB行锁及表锁分享

    一. 背景知识 二. 步入正题:表锁和行锁 1.1. 表锁 vs 行锁 在 MySQL 中锁的种类有很多,但是最基本的还是表锁和行锁:表锁指的是对一整张表加锁,一般是 DDL 处理时使用,也可以自己在 ...

  3. MySQL - 行锁 表锁 乐观锁 悲观锁 读锁 写锁

    MySQL - 行锁 表锁 乐观锁 悲观锁 读锁 写锁 锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足.在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(I ...

  4. MySQL中的表锁行锁共享锁很难吗?看了本文就清楚了哦

      MySQL数据库中的锁还是非常重要的,本文重点给大家详细的来介绍下MySQL数据中的各种锁. 一.表锁和行锁 1.表锁 表锁的优势:开销小:加锁快:无死锁 表锁的劣势:锁粒度大,发生锁冲突的概率高 ...

  5. mysql BDB支持表锁吗_mysql 表锁问题

    本文转自:http://www.cnblogs.com/itdragon/p/8194622.html MySQL 表锁和行锁机制 行锁变表锁,是福还是坑?如果你不清楚MySQL加锁的原理,你会被它整 ...

  6. 大话:行锁 间隙锁 表锁 临键锁

    行锁 临键锁 间隙锁都是mysql里面innoDB引擎下去解决事务隔离性的一系列排他锁. 目录 行锁 ​编辑 间隙锁 表锁 临键锁 行锁 对主键或唯一索引加锁时候,mysql默认会对这一行数据默认加行 ...

  7. [精选]MySQL的各种锁(表锁,行锁,悲观锁,乐观锁,间隙锁,死锁)

    不少人在开发的时候,应该很少会注意到这些锁的问题,也很少会给程序加锁(除了库存这些对数量准确性要求极高的情况下),即使我们不会这些锁知识,我们的程序在一般情况下还是可以跑得好好的.因为数据库隐式帮我们 ...

  8. MySQL行锁 表锁理解

    MySQL InnoDB 锁表与锁行 由于InnoDB预设是Row-Level Lock,所以只有「明确」的指定主键,MySQL才会执行Row lock (只锁住被选取的资料例) ,否则MySQL将会 ...

  9. mysql进阶: mysql中的锁(全局锁/表锁/行锁/间隙锁/临键锁/共享锁/排他锁)

    锁在生活中处处可见,门锁,手机锁等等. 锁存在的意义是保护自己的东西不被别人偷走/修改. 在mysql中锁的意义也是一样,是为了保护自己的数据不被别人进行修改,从而导致出现脏读,幻读等问题.在学习锁的 ...

  10. MySQL的锁(表锁与行锁)

    1.锁 为什么需要锁? 在实际中,比如在淘票票抢电影票,A用户和B用户都想要要2排2座,那么它们必然只有一个人能抢到.在这个过程中,使用锁可以对有效的资源在并发的环境下进行保护,解决隔离和并发的矛盾. ...

最新文章

  1. 【STL源码剖析读书笔记】【第5章】关联式容器之hashtable
  2. Windows sever 2008
  3. 启动mysql服务是报错找不到pid_mysql报错 The server quit without updating PID file
  4. 在世界第二届半机械人奥运会上,瘫痪飞行员在Cybathlon BCI竞赛中争夺金牌
  5. android图文介绍NDK安装及简单jni demon的实现
  6. python脚本调度程序_Windows 任务调度程序定时执行Python脚本
  7. javap(反汇编命令)详解
  8. LeetCode 2114. 句子中的最多单词数
  9. 敏捷测试中发现的一些问题及改进办法
  10. json解析对应的value为null_解决golang json解析出现值为空的问题
  11. 【报告分享】2020-2021年中国职业教育投融资发展报告.pdf(附下载链接)
  12. HTML+CSS实现轮播图效果
  13. 动辄年薪 25 万只是白菜价的人工智能黄了?
  14. linux异构内存,Linux内核添加异构内存管理(HMM)将带来加速GPU的新方式,还有可能带来其他类型的机器学习硬件。...
  15. 【图像提取】基于matlab PCA-CSIFT feature图像特征提取【含Matlab源码 1174期】
  16. 资源分享·病毒样本下载资源分享
  17. Word2Vec模型之实现篇
  18. BMS 中的安规设计
  19. 当 TiDB 遇到图数据库 | TiDB Hackathon 2020 优秀项目分享
  20. Stream篇(五)

热门文章

  1. 室外温度已达34度,本博客提供自助风扇服务
  2. 韩信点兵 中国剩余定理
  3. TypeScript 入门教程
  4. 关于一个int *ptr=(int *)(a+1)问题的探讨
  5. 【Python】利用tkinter开发测手速小游戏
  6. 2020 中国软件 100 强,腾讯第二、阿里第三,第一是谁呢?你们公司上榜了吗?
  7. 配置 DHCP 服务
  8. cocos2d-x中的box2d(2)-Tumbler
  9. (翻译)邀请好友模式(Invite friends)
  10. template 的 用法