前言:前面学习了表锁的相关知识,本篇主要介绍行锁的相关知识。行锁偏向InnoDB存储引擎,开销大,加锁慢,会出现死锁,锁定粒度小,发生锁冲突的概率低,但并发度高。


0.准备

#1.创建相关测试表tb_innodb_lock,注意数据库引擎为InnoDB。

drop table if exists test_innodb_lock;

CREATE TABLE test_innodb_lock (

a INT (11),

b VARCHAR (20)

) ENGINE INNODB DEFAULT charset = utf8;

insert into test_innodb_lock values (1,'a');

insert into test_innodb_lock values (2,'b');

insert into test_innodb_lock values (3,'c');

insert into test_innodb_lock values (4,'d');

insert into test_innodb_lock values (5,'e');

#2.创建索引。

create index idx_lock_a on test_innodb_lock(a);

create index idx_lock_b on test_innodb_lock(b);

1.行锁定基本演示

#1.打开A、B另个会话,并关闭数据库的自动提交。

set autocommit=0;

#2.在A会话中做更新操作。

MySQL高级知识(十四)——行锁相关推荐

  1. MySQL高级知识(四)——Explain

    前言:explain(执行计划),使用explain关键字可以模拟优化器执行sql查询语句,从而知道MySQL是如何处理sql语句.explain主要用于分析查询语句或表结构的性能瓶颈. 注:本系列随 ...

  2. MySQL高级知识(十六)——小表驱动大表

    前言:本来小表驱动大表的知识应该在前面就讲解的,但是由于之前并没有学习数据批量插入,因此将其放在这里.在查询的优化中永远小表驱动大表. 1.为什么要小表驱动大表呢 类似循环嵌套 for(int i=5 ...

  3. MySQL高级知识(十五)——主从复制

    前言:本章主要讲解MySQL主从复制的操作步骤.由于环境限制,主机使用Windows环境,从机使用用Linux环境.另外MySQL的版本最好一致,笔者采用的MySQL5.7.22版本,具体安装过程请查 ...

  4. Mysql高级知识概括

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

  5. MySQL高级知识(十一)——Show Profile

    前言:Show Profile是mysql提供的可以用来分析当前会话中sql语句执行的资源消耗情况的工具,可用于sql调优的测量.默认情况下处于关闭状态,并保存最近15次的运行结果. 1.分析步骤 # ...

  6. 布尔教育 mysql高级_布尔教育 Mysql高级 燕十八

    布尔教育 Mysql高级 燕十八--更多资源,课程更新在 多智时代 duozhishidai.com 多智时代资源,简介: 这是燕十八出的mysql教程,需要的可以看看 目录: 布尔教育 Mysql高 ...

  7. MySQL高级学习笔记(四)

    文章目录 MySQL高级学习笔记(四) 1. MySql中常用工具 1.1 mysql 1.1.1 连接选项 1.1.2 执行选项 1.2 mysqladmin 1.3 mysqlbinlog 1.4 ...

  8. MySQL高级知识(一)——基础

    MySQL高级知识(一)--基础 前言:MySQL高级知识 1.关于MySQL的一些文件 MySQL如何安装.如何配置自启动,这里不进行讲述,可自行搜索相关安装教程进行处理.这里主要介绍MySQL的主 ...

  9. MySQL高级知识(十三)——表锁

    前言:锁是计算机协调多个进程或线程并发访问某一资源的机制.在数据库中,除传统的计算机资源(如CPU.RAM.I/O等)的争用外,数据也是一种供许多用户共享的资源.如何保证数据并发访问的一致性.有效性是 ...

最新文章

  1. 嘿嘿,我就知道面试官接下来要问我 ConcurrentHashMap 底层原理了,看我怎么秀他...
  2. JAVA_OA(六):SpringMVC登陆实例
  3. 一次基于Vue.Js的用户体验优化 (vue drag)
  4. 手动编译php,手动编译安装php7的方式
  5. html5标签的兼容性处理
  6. [转]当你老了,一生最后悔什么?全球统计前五名!
  7. 20200710每日一句
  8. [demo] 微信小程序Demo:树芽读书(一个不错的书籍朗读小程序)
  9. mysql进阶教程pdf_SQL进阶教程 (MICK著) 高清pdf完整版
  10. java 是否数字 正则_java使用正则判断是否是数字
  11. 098-rsshub-radar-2021-03-02
  12. php 表格内边距,CSS 内边距
  13. vue 填空题组件封装
  14. 如何通过简历推销自己
  15. civil3D地形导入AIW(设置投影坐标系)
  16. 一些AUTOSAR会议论坛的介绍(附资料下载)
  17. linux实训分析与体会,linux实训总结与体会
  18. IntelliJ IDEA 必知技巧(持续更新)
  19. 汉堡造型的动态导航菜单,非常有意思
  20. 黑客代码雨源代码_工业城黑客空间教授的东西比代码更有价值

热门文章

  1. teablue数据分析_基于大数据分析的茶叶质量评估
  2. echarts中x轴文件消失_百度Echarts图表在Vue项目的完整引入以及按需加载
  3. java素数判断连续素数_java 判断一个数是素数(优化)
  4. mac上的mongodb安装与使用的踩坑记
  5. 【备战春招/秋招系列】美团Java面经总结进阶篇 (附详解答案)
  6. Swift教程_零基础学习Swift完整实例(八)_swift完整实例(添加View的动画效果、添加View的阴影)...
  7. Eclipse 导入项目到git@osc中
  8. Oracle忘记密码如何重置
  9. Centos中关闭tty以及禁止ipv6
  10. 关于tomcat不能启动的问题(NB:JAVA_HOME should point to a JDK not a JRE)