当前位置: 首页 > news >正文

汕尾商城网站建设专业郑州企业网站建设

汕尾商城网站建设,专业郑州企业网站建设,最流行的做网站语言,如何做优化网站的原创性文章首先我们这里有一个表t,其中的数据如下图所示 注意哈 update由于操作的最新的值,所以是当前读! 另外一个事务插入 8的时候发生锁 而我对id为10的数据进行更新,却不会被锁住 分析:在执行当前读时,由于id7不存…

 首先我们这里有一个表t,其中的数据如下图所示

 

 注意哈 update由于操作的最新的值,所以是当前读

 另外一个事务插入 8的时候发生锁

而我对id为10的数据进行更新,却不会被锁住

 分析:在执行当前读时,由于id=7不存在,可以理解为在B+树上找7,因此会经过5和10,因此上了nextKey锁(5,10],由于右边界并不等于7,在等值查询上退化成间隙锁(5,10)。

 

 

 当我把语句改为 id=5,此时给唯一索引进行等值查询,退化为行锁,因此插入8不会被阻塞!

 

 

 在当前读下,给非唯一索引加锁的时候,会扫描到第一个不等于索引的值,因此加锁为(0,5】,(5,10),注意锁是加在索引上,因此id上没被加锁!!! 

 进行范围查询,那么加锁范围是多少呢?

插入 8会成功,但是插入10卡住了

 说明加锁了id=10这一行

 而且id=11能够成功加锁,说明mysql用了比较智能的判断,从而使得语句优化成只锁id=10这一行

 改成查10到12之间的

可以看到只锁了id=10的 

 

 

可以看到只锁了两行!!!

 

这次session A用字段c来判断,:在第一次用c=10定位记录的时候,索引c上加了(5,10]这个next-key lock后,由于索引c是非唯一索引,没有优化规则,也就是说不会蜕变为行锁,因此最终sesion A加的锁是,索引c上的(5,10] 和(10,15] 这两个next-key lock。

所以从结果上来看,sesson B要插入(8,8,8)的这个insert语句时就被堵住了。

这里需要扫描到c=15才停止扫描,是合理的,因为InnoDB要扫到c=15,才知道不需要继续往后找了。

 

 

可以看到15被锁住了,20没有被锁住(MYsql改进的bug 2018之前存在)

加锁是(10,15]

 

 id为10可以正常操作,没有被加锁

http://www.shuangfujiaoyu.com/news/35506.html

相关文章:

  • 做网站 设计师很网推是什么
  • 网络营销推广方法和工具有哪些上海网络seo优化公司
  • 医疗网站建设多少钱百度投诉中心24人工 客服电话
  • 电话销售做网站打官司百度seo教程视频
  • 电商网站的支付接入该怎么做呢手机导航下载2022新版
  • 网站开发常用软件是什么神马seo教程
  • 找人做淘宝网站需要多少钱最新seo课程
  • 网页设计行业市场分析重庆seo黄智
  • 凌风wordpress百度云邢台市seo服务
  • 怎么做优惠券的网站网推app
  • 免费做网站收录的网站软文是什么
  • 大良营销网站建设市场名词解释seo
  • 国家网站icp备案查询快速排名官网
  • 关于营销的网站有哪些最有效的100个营销方法
  • 做宣传海报网站baidu百度网盘
  • 做网站找哪个域名查询网
  • 德州网站制作淘宝关键词搜索排名
  • 医院网站管理制度百度seo还有前景吗
  • 手机端的网站怎么做的百度分析
  • 阿里巴巴网站怎么做关键词提取工具
  • 深圳网站设计公司费用是搜索引擎优化的方法包括
  • 网站建设与管理实践小说百度搜索风云榜
  • 买过域名之前就可以做网站了吗?网站怎样被百度收录
  • 室内设计网站会员哪个值得买网站维护推广的方案
  • 有哪些网站可以免费做推广软文范例300字
  • 企业网站名备案网站查询系统
  • 网站右侧浮动代码石家庄网站优化
  • 如何建设网站效果好关键词挖掘工具有哪些
  • 用邮箱做网站网站访问量查询工具
  • 合肥市网站制作站长统计代码