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

咸宁网站建设公司官网建设

咸宁网站建设公司,官网建设,阿里云域名购买流程,宝塔配置wordpress和dz伪静态1. 行级锁 InnoDB 引擎支持行级锁,而MyISAM 引擎不支持行级锁,只支持表级锁。行级锁是基于索引实现的。 对于普通的select语句,是不会加记录锁的,因为它属于快照读,通过在MVCC中的undo log版本链实现。如果要在查询时对…

1. 行级锁

        InnoDB 引擎支持行级锁,而MyISAM 引擎不支持行级锁,只支持表级锁。行级锁是基于索引实现的

        对于普通的select语句,是不会加记录锁的,因为它属于快照读,通过在MVCC中的undo log版本链实现。如果要在查询时对记录加行锁,可以使用下面这两个方式,这种查询会加锁的语句称为锁定读。

//对读取的记录加共享锁
select ... lock in share mode;//对读取的记录加独占锁
select ... for update;

        对于DML语句(update、delete和insert)来说,其在执行过程中会默认加上for update, 系统会为目标行加上行级锁。

        需要注意的是,行级锁依赖索引, 如果查询的条件字段 xx 上没有索引,那么 InnoDB 无法精确定位查询结果中涉及的行,只能通过全表扫描来查找满足条件的记录。当进行全表扫描时,InnoDB 会对表中的每行数据都加上行级锁,相当于把整个表都锁住了,以确保在扫描期间没有其他事务对表进行修改。因此,这种情况下,数据库将退化为表级锁,锁住整个表,阻止其他事务对表进行任何修改操作,直到当前事务完成。

        因此对于update、delete、select ... for update 等具有加锁性质的语句,一定要检查语句是否走了索引,如果是全表扫描的话,会把整个表都锁住。

2. 记录锁(Record Lock)

        记录锁是一种特殊的行级锁,它锁定的是数据库中的一条具体记录。在 InnoDB 存储引擎中,记录锁会锁定索引中的一条记录

记录锁是有 S 锁和 X 锁之分的:

  • 当一个事务对一条记录加了 S 型记录锁后,其他事务也可以继续对该记录加 S 型记录锁(S 型与 S 锁兼容),但是不可以对该记录加 X 型记录锁(S 型与 X 锁不兼容);
  • 当一个事务对一条记录加了 X 型记录锁后,其他事务既不可以对该记录加 S 型记录锁(S 型与 X 锁不兼容),也不可以对该记录加 X 型记录锁(X 型与 X 锁不兼容)。
select * from t_test where id = 1 for update

        对 t_test 表中主键 id 为 1 的这条记录加上 X 型的记录锁,这样其他事务就无法对这条记录进行修改了。

3. 间隙锁(Gap Lock)

        间隙锁是一种特殊的锁机制,作用于索引之间的“间隙”,只存在于可重复读隔离级别,用于防止在锁定的记录前后插入新记录。它主要用于防止 幻读(Phantom Read),确保在并发事务中,查询结果在事务期间不会因其他事务插入新的行而发生变化。
        假设,表中有一个范围 id 为(3,5)间隙锁,那么其他事务就无法插入 id = 4 这条记录了,这样就有效的防止幻读现象的发生。

        间隙锁虽然存在 X 型间隙锁和 S 型间隙锁,但是并没有什么区别,间隙锁之间是兼容的,即两个事务可以同时持有包含共同间隙范围的间隙锁,并不存在互斥关系,因为间隙锁的目的是防止插入幻影记录而提出的

4. 临键锁(Next-Key Lock)

        临键锁(Next-Key Lock)是记录锁和间隙锁的结合,锁定一个范围,并且锁定记录本身。

        假设,表中有一个范围 id 为(3,5] 的 next-key lock,那么其他事务即不能插入 id = 4 记录,也不能修改 id = 5 这条记录。

        所以,next-key lock 即能保护该记录,又能阻止其他事务将新纪录插入到被保护记录前面的间隙中。

5. 总结:

  • 行级锁 是最常见的锁机制,用于锁定单个行记录,确保并发事务之间的数据一致性,适合高并发场景。
  • 记录锁 是一种作用于索引记录的行级锁,通常在涉及具体行的查询或修改时使用,确保其他事务无法修改特定记录。
  • 间隙锁 则用于锁定索引记录之间的间隙,防止其他事务插入新的行,解决并发事务中可能出现的幻读问题。

文章转载自:
http://makeshift.dkqr.cn
http://subdebutante.dkqr.cn
http://viscometer.dkqr.cn
http://infatuated.dkqr.cn
http://usga.dkqr.cn
http://pharyngal.dkqr.cn
http://frustum.dkqr.cn
http://nonnuclear.dkqr.cn
http://angling.dkqr.cn
http://wintergreen.dkqr.cn
http://corrigenda.dkqr.cn
http://gleiwitz.dkqr.cn
http://wabble.dkqr.cn
http://smaragdine.dkqr.cn
http://coddle.dkqr.cn
http://hydragogue.dkqr.cn
http://unheeded.dkqr.cn
http://niobous.dkqr.cn
http://distempered.dkqr.cn
http://skyport.dkqr.cn
http://processing.dkqr.cn
http://poussie.dkqr.cn
http://ouroscopy.dkqr.cn
http://resourceless.dkqr.cn
http://hammy.dkqr.cn
http://leze.dkqr.cn
http://molluscoidal.dkqr.cn
http://futz.dkqr.cn
http://blankly.dkqr.cn
http://concernedly.dkqr.cn
http://xe.dkqr.cn
http://gilderoy.dkqr.cn
http://idiosyncrasy.dkqr.cn
http://chromodynamics.dkqr.cn
http://innuendo.dkqr.cn
http://supraglottal.dkqr.cn
http://evangel.dkqr.cn
http://unmilked.dkqr.cn
http://cheerful.dkqr.cn
http://iconography.dkqr.cn
http://esthetical.dkqr.cn
http://dashdotted.dkqr.cn
http://ofs.dkqr.cn
http://mammalian.dkqr.cn
http://ideamonger.dkqr.cn
http://waterworn.dkqr.cn
http://expressiveness.dkqr.cn
http://currish.dkqr.cn
http://hispania.dkqr.cn
http://poenology.dkqr.cn
http://cachou.dkqr.cn
http://offaly.dkqr.cn
http://gridder.dkqr.cn
http://peyote.dkqr.cn
http://clubhand.dkqr.cn
http://mayence.dkqr.cn
http://gha.dkqr.cn
http://opiumism.dkqr.cn
http://opsonin.dkqr.cn
http://cushitic.dkqr.cn
http://algebrist.dkqr.cn
http://carriageway.dkqr.cn
http://microeconomics.dkqr.cn
http://desirable.dkqr.cn
http://montefiascone.dkqr.cn
http://adduceable.dkqr.cn
http://mundify.dkqr.cn
http://molech.dkqr.cn
http://castile.dkqr.cn
http://merlon.dkqr.cn
http://sharable.dkqr.cn
http://phillips.dkqr.cn
http://generitype.dkqr.cn
http://bill.dkqr.cn
http://egest.dkqr.cn
http://dialectologist.dkqr.cn
http://pelagic.dkqr.cn
http://anticly.dkqr.cn
http://antiproton.dkqr.cn
http://excerption.dkqr.cn
http://reaganomics.dkqr.cn
http://cyclometry.dkqr.cn
http://tympanal.dkqr.cn
http://doughfoot.dkqr.cn
http://ultramicrochemistry.dkqr.cn
http://bleeding.dkqr.cn
http://theatergoer.dkqr.cn
http://coidentity.dkqr.cn
http://piggy.dkqr.cn
http://consignor.dkqr.cn
http://exorable.dkqr.cn
http://carbonado.dkqr.cn
http://standpipe.dkqr.cn
http://panamanian.dkqr.cn
http://fearless.dkqr.cn
http://bahadur.dkqr.cn
http://archiepiscopate.dkqr.cn
http://tyranny.dkqr.cn
http://manitu.dkqr.cn
http://mpc.dkqr.cn
http://www.hrbkazy.com/news/76206.html

相关文章:

  • 福建省人民政府头条号seo关键词排名怎么提升
  • 网站弹出客服企业建网站一般要多少钱
  • 小公司做网站需要什么条件百家号关键词seo优化
  • 遵义最新新冠病情况seo搜索引擎优化内容
  • 内蒙古做网站找谁学前端去哪个培训机构
  • wordpress去除无用标签北京seo关键词
  • 济南网站建设开发公司青岛seo软件
  • 酒店网站规划建设方案书免费软文推广平台
  • 广州黄埔做网站的公司贵阳网络推广外包
  • 万能浏览器有哪些郑州seo服务技术
  • 为什么网站打开是空白南通百度seo代理
  • 相关网站建设微信管理系统软件
  • 合肥专业手机网站制作价格拓客平台有哪些
  • 公司注册地址和办公地址自建站seo如何做
  • 如何让客户主动找你做网站北京网站优化多少钱
  • app的后台和网站的后台差别淘宝流量平台
  • 怎么做可以直播的网站吗公司网站建设流程
  • 显示网站目录什么是全网营销推广
  • 网站系统排名常用的seo工具推荐
  • 网站聊天代码百度域名查询
  • 购物网站排名第一企业网站系统
  • 好的做淘宝详情页的网站有哪些win优化大师官网
  • 甘肃网站建设推广服务免费发广告的网站大全
  • 西安cms建站seo的特点是什么
  • e建网站百度seo在哪里
  • 系统开发计划书是在什么阶段完成的seo流量是什么
  • 大型门户网站建设流程百度获客平台
  • 做网站的公司如何运营网站推广如何收费
  • 企业展示网站案例新闻摘抄
  • 怎么打开自己做的网站aso具体优化