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

申请收费网站空间全国中高风险地区一览

申请收费网站空间,全国中高风险地区一览,男女性做那个视频网站,网页设计与制作实训总结2000字行级锁,每次操作锁住对应的行数据。锁定粒度最小,发生锁冲突的概率最低,并发度最高。 应用在InnoDB存储引擎中。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。 对于行…

行级锁,每次操作锁住对应的行数据。锁定粒度最小,发生锁冲突的概率最低,并发度最高。

应用在InnoDB存储引擎中。InnoDB的数据是基于索引组织的,行锁是通过对索引上的索引项加锁来实现的,而不是对记录加的锁。

对于行级锁,主要分为以下三类:

1.行锁(Record Lock):锁定单个行记录的锁,防止其他事务对此行进行update和delete。在RC、RR隔离级别下都支持。

2. 间隙锁(Gap Lock):锁定索引记录间隙(不含该记录),确保索引记录间隙不变,防止其他事务在这个间隙进行insert,产生幻读。在RR隔离级别下都支持。

3.临键锁(Next-Key Lock):行锁和间隙锁组合,同时锁住数据,并锁住数据前面的间隙Gap。在RR隔离级别下支持。

一、表级锁、行级锁、页级锁

数据库锁定机制简单来说,就是数据库为了保证数据的一致性,而使各种共享资源在被并发访问变得有序所设计的一种规则

MySQL数据库由于其自身架构的特点,存在多种数据存储引擎,每种存储引擎的锁定机制都是为各自所面对的特定场景而优化设计,所以各存储引擎的锁定机制也有较大区别。

MySQL各存储引擎使用了三种类型(级别)的锁定机制:表级锁定行级锁定页级锁定

1、表级锁

表级别的锁定是MySQL各存储引擎中最大颗粒度的锁定机制。该锁定机制最大的特点是实现逻辑非常简单,带来的系统负面影响最小。所以获取锁和释放锁的速度很快。

当然,锁定颗粒度大所带来最大的负面影响就是出现锁定资源争用的概率也会最高,致使并发度大打折扣

使用表级锁定的主要是MyISAM,MEMORY,CSV等一些非事务性存储引擎。

2、行级锁

行级锁定最大的特点就是锁定对象的颗粒度很小,由于锁定颗粒度很小,所以发生锁定资源争用的概率也最小,能够给予应用程序尽可能大的并发处理能力而提高一些需要高并发应用系统的整体性能。

虽然能够在并发处理能力上面有较大的优势,但是行级锁定也因此带来了不少弊端。

由于锁定资源的颗粒度很小,所以每次获取锁和释放锁需要做的事情也更多,带来的消耗自然也就更大了。此外,行级锁定也最容易发生死锁

使用行级锁定的主要是InnoDB存储引擎

3、页级锁

页级锁定是MySQL中比较独特的一种锁定级别。页级锁定的特点是锁定颗粒度介于行级锁定与表级锁之间,所以获取锁定所需要的资源开销,以及所能提供的并发处理能力也同样是介于上面二者之间。

使用页级锁定的主要是BerkeleyDB存储引擎。

4、总结

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

表级锁:开销小,加锁快;不会出现死锁;锁定粒度大,发生锁冲突的概率最高,并发度最低;
行级锁:开销大,加锁慢;会出现死锁;锁定粒度最小,发生锁冲突的概率最低,并发度也最高;
页面锁:开销和加锁时间界于表锁和行锁之间;会出现死锁;锁定粒度界于表锁和行锁之间,并发度一般。

二、临键锁

1、临键锁(Next-Key Locks)

Next-key锁是记录锁和间隙锁的组合,它指的是加在某条记录以及这条记录前面间隙上的锁

也可以理解为一种特殊的间隙锁。通过临建锁可以解决幻读的问题。 每个数据行上的非唯一索引列上都会存在一把临键锁,当某个事务持有该数据行的临键锁时,会锁住一段左开右闭区间的数据。需要强调的一点是,InnoDB 中行级锁是基于索引实现的,临键锁只与非唯一索引列有关,在唯一索引列(包括主键列)上不存在临键锁。

查询规则:

  • 唯一索引等值查询:

    • 当查询的记录存在, 临键锁 会退化成行锁

    • 当查询的记录不存在,临键锁会退化成间隙锁

  • 非唯一索引等值查询:

    • 当查询的记录存在,会加 临键锁和 间隙锁两把锁

    • 当查询的记录不存在,只会加 临键锁,然后退化为间隙锁

  • 非唯一索引和主键索引的范围查询的区别:

    • 唯一索引在满足条件时, 临键锁 退化为间隙锁和记录锁

    • 非唯一索引范围查询, 临键锁不会退化 为间隙锁和记录锁

在使用时要注意:
在执行 update /  delete /  select for update 语句时,一定要检查语句是否走了索引,避免全表扫描
Delete 时尽量使用主键 ID(唯一索引) 删除
查询时尽量使用唯一索引进行查询,锁定范围较小

http://www.yayakq.cn/news/252171/

相关文章:

  • 网站建设成立领导小组页面设计公司排名前十
  • flashfxp怎么上传网站镇江久一信息技术有限公司
  • 济南谷歌推广成都自然排名优化
  • 为企业设计网站企业网站开发怎么样
  • 泰安网站建设哪家好如何自己搭建网站
  • 十堰建设网站首页做网站排名的公司有哪些
  • 高效网站建设揭阳网站制作计划
  • 国内网站免备案医疗网站设计图
  • 厦门 外贸网站非常成功的网站
  • 网站文站加入别人网站的链接是否对自己网站不好wordpress积分
  • 网站首页下拉广告凯里做网站的公司
  • 做网站哪家好公司灵山招聘网灵山英才网做灵山专业的招聘网站
  • 杭州制作网站的公司简介网站可以做参考文献吗
  • 网站开发后期维护更新织梦网站wap
  • 自己名下备案的网站四川建设厅网站招聘
  • 开源镜像网站怎么做去除关于wordpress
  • 做图的模板下载网站有哪些内容如何做网站的映射
  • 简洁风格的网站模板免费下载vs做的网站源代码
  • 网站建设平台赚钱跨平台app开发工具
  • 织梦 网站搬家建设公司logo
  • dedecms调取友情链接 网站类型建设农业网站
  • 深圳建设网站排名做行政关注什么类型的网站
  • 如何把网站推广出题库制作助手app
  • 重庆网站模板建站网站个性化制作
  • 太原提高网站排名php网站开发试卷
  • 台州企业建站系统郝友做的网站
  • 上海柘中建设股份有限公司网站做网站能创业吗
  • 莱芜高端网站设计建设宁波网站优化体验
  • 怎样让百度搜索到自己的网站信息推广服务
  • 个人做二次元网站怎么赚钱建行互联网站