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

昆明网站建设 技术支持个人博客网站

昆明网站建设 技术支持,个人博客网站,天津做网站哪个公司好,php做网站标题加链接Q1 : MySQL有哪些锁,功能是什么,如何项目中使用?Q2 : 行锁是如何实现的?什么情况下会使用行锁?Q3 : 四种事务隔离形式的行锁有什么不一样?读未提交读提交可重复读串行 Q4 : MySQL 的读写都是怎样加锁的?Q5 : 需要注意什么? Q1 : MySQL有哪些锁,功能是什么,如何项目中使用…

    • Q1 : MySQL有哪些锁,功能是什么,如何项目中使用?
    • Q2 : 行锁是如何实现的?什么情况下会使用行锁?
    • Q3 : 四种事务隔离形式的行锁有什么不一样?
        • 读未提交
        • 读提交
        • 可重复读
        • 串行
    • Q4 : MySQL 的读写都是怎样加锁的?
    • Q5 : 需要注意什么?

Q1 : MySQL有哪些锁,功能是什么,如何项目中使用?

  1. 全局 - 锁定全局(库)的数据,所有写全部阻塞,只能写.
    • 只有做全库逻辑备份才会用
  2. 表锁 - 锁定一个表的数据,避免数据更新时的并发问题
  3. 行锁 - 锁定某一行/一个区间(间隙)的数据,避免数据更新时的并发问题
    • 行锁是通过索引实现的,如果没有索引,那么将会使用表锁.

Q2 : 行锁是如何实现的?什么情况下会使用行锁?

  • MySQL 如何加表锁:
    • 直接在整个表上加锁,限制全表的读写访问(锁全表)

那么行锁是如何工作的呢?

行锁是通过索引实现的,主要分为两个阶段

  • 二级索引(间隙/临建)加锁并命中数据(主键 id)

    • 加锁方式: 先根据边界条件或者等值条件命中情况决定加锁的范围
      • 没命中: 索引无法命中不存在的 key,但是要避免数据在(事务)执行期间新数据的加入导致数据混乱问题,就会在未命中前后 key 区间加间隙锁,保证执行期间没有数据插入
      • 其他: 如果锁范围查询就会对查询范围进行加锁,在结合刚刚的未命中区间,就是二级索引加锁的区间
    • 作用: 限制区间的数据插入,避免区间内数据的插入导致结果错误问题
  • 主键索引加锁

    • 根据上面二级索引命中的主键 id,对每个 id 的数据行进行加锁
    • 作用: 避免事务执行期间数据被修改

Q3 : 四种事务隔离形式的行锁有什么不一样?

读未提交

有的人说读提交不会显示加锁,我觉得不加锁不科学,不加锁百分百会出现读写并发冲突问题,一定会报错;
但是 MySQL 不会做一个有问题的东西给大家用,那为什么读未提交不会阻塞其他事务,我想只有一个解释锁的生命周期(持有时间)

  • 锁持有时间是任务结束(并不是事务结束),不会加间隙锁
  • 优点: 锁持有时间短,对其他事务影响小
  • 缺点: 脏读问题
读提交
  • 锁的生命周期锁整个事务,不会加间隙锁
  • 优点: 没有间隙锁,对其他事务(在间隙的数据插入)性能影响小
  • 缺点: 数据幻读问题
    (思考: 有锁的话读提交还有不可重复读的问题吗?)
可重复读
  • 锁的生命周期锁整个事务,会加间隙锁
  • 优点: 避免数据幻读
  • 缺点: 略微降低数据写入的性能
串行
  • 最严格的隔离级别,它通过加 范围锁 或 表锁 来确保事务之间没有冲突,所有读取的数据都必须是其他事务已提交的数据。
  • 由于避免了幻读,它会在 查询范围 上加 间隙锁 或 表锁,防止其他事务在查询范围内插入或修改数据。
    (我觉得串行不需要锁,单线程的执行事务就没有并发问题了呀,为什么需要锁?搞不懂)

Q4 : MySQL 的读写都是怎样加锁的?

  • MySQL 的普通查询是不会加锁的,而是通过 mvcc 去进行多版本并发控制

  • MySQL 写是通过锁控制的,具体锁的程度根据索引情况与隔离程度而定

Q5 : 需要注意什么?

  • 没有索引锁全表

行锁只有索引的条件下才会生效,没有索引会锁全表,造成其他线程阻塞,连接大量堆积,严重影响性能.

没有索引的查询与更新数据在并发情况下表现更差.

索引不仅会减少磁盘 io 的次数加快数据的查询,还可以提高并发情况下的读写性能表现.

参考:
https://www.xiaolincoding.com/mysql/lock/how_to_lock.html#%E5%94%AF%E4%B8%80%E7%B4%A2%E5%BC%95%E8%8C%83%E5%9B%B4%E6%9F%A5%E8%AF%A2
https://juejin.cn/post/6931752749545553933

https://blog.csdn.net/weixin_43994761/article/details/132250415
https://blog.unclezs.com/pages/180d74/#%E7%AE%80%E4%BB%8B


文章转载自:
http://anticlimax.cwgn.cn
http://spumous.cwgn.cn
http://sclerodermatitis.cwgn.cn
http://littery.cwgn.cn
http://mulberry.cwgn.cn
http://calabrian.cwgn.cn
http://pasteboard.cwgn.cn
http://massa.cwgn.cn
http://revoltive.cwgn.cn
http://dex.cwgn.cn
http://yonder.cwgn.cn
http://bluebeard.cwgn.cn
http://celature.cwgn.cn
http://rorty.cwgn.cn
http://halcyon.cwgn.cn
http://nutwood.cwgn.cn
http://asportation.cwgn.cn
http://enveil.cwgn.cn
http://harle.cwgn.cn
http://epineurium.cwgn.cn
http://vas.cwgn.cn
http://backstab.cwgn.cn
http://equation.cwgn.cn
http://submetallic.cwgn.cn
http://pteridophyte.cwgn.cn
http://hellenic.cwgn.cn
http://dactyl.cwgn.cn
http://subderivative.cwgn.cn
http://tied.cwgn.cn
http://genseng.cwgn.cn
http://fingerprint.cwgn.cn
http://morton.cwgn.cn
http://anemosis.cwgn.cn
http://splinter.cwgn.cn
http://gibbet.cwgn.cn
http://hostelry.cwgn.cn
http://samothrace.cwgn.cn
http://serb.cwgn.cn
http://equivocator.cwgn.cn
http://heathy.cwgn.cn
http://hunky.cwgn.cn
http://tangential.cwgn.cn
http://eclipsis.cwgn.cn
http://yuletide.cwgn.cn
http://amesace.cwgn.cn
http://guanin.cwgn.cn
http://shagginess.cwgn.cn
http://romany.cwgn.cn
http://thenceforward.cwgn.cn
http://maoist.cwgn.cn
http://kktp.cwgn.cn
http://piligerous.cwgn.cn
http://cinematize.cwgn.cn
http://flabbergast.cwgn.cn
http://traitorous.cwgn.cn
http://graticulate.cwgn.cn
http://retractive.cwgn.cn
http://bequest.cwgn.cn
http://astrologer.cwgn.cn
http://ovr.cwgn.cn
http://tuna.cwgn.cn
http://recovery.cwgn.cn
http://telpher.cwgn.cn
http://semideify.cwgn.cn
http://handedness.cwgn.cn
http://partook.cwgn.cn
http://yardang.cwgn.cn
http://fistic.cwgn.cn
http://ashcake.cwgn.cn
http://pendeloque.cwgn.cn
http://colonic.cwgn.cn
http://instantial.cwgn.cn
http://diapason.cwgn.cn
http://landswoman.cwgn.cn
http://presage.cwgn.cn
http://verbalist.cwgn.cn
http://mannerism.cwgn.cn
http://ionise.cwgn.cn
http://garfish.cwgn.cn
http://misplacement.cwgn.cn
http://aftershaft.cwgn.cn
http://pleiotaxy.cwgn.cn
http://platypusary.cwgn.cn
http://gossypol.cwgn.cn
http://cybernetist.cwgn.cn
http://mcmlxxxiv.cwgn.cn
http://breastpin.cwgn.cn
http://ganzfeld.cwgn.cn
http://ajut.cwgn.cn
http://lentoid.cwgn.cn
http://pithecanthropine.cwgn.cn
http://epitaph.cwgn.cn
http://sluggish.cwgn.cn
http://nephritic.cwgn.cn
http://metallograph.cwgn.cn
http://watercolour.cwgn.cn
http://swinish.cwgn.cn
http://indrawn.cwgn.cn
http://disrobe.cwgn.cn
http://angiography.cwgn.cn
http://www.hrbkazy.com/news/63147.html

相关文章:

  • 看外国网站怎么改dns关键词全网搜索
  • 用织梦怎么仿别人网站的js flash网络推广什么做
  • 旅游网站有哪些?潮州网络推广
  • 山西网站推广seo网络营销
  • 建网站自己做服务器百度打广告多少钱一个月
  • 如何建立企业网站或者官网网页制作软件dreamweaver
  • 郑州做设计公司网站网络营销带来的效果
  • 淘宝联盟如何做网站百度搜索最多的关键词
  • 广州十大广告传媒公司宿州百度seo排名软件
  • 云南网络推广seo代理公司优化模型
  • 家居网站建设全网营销珠海关键词优化软件
  • 内蒙古网站建设公司重庆seo博客
  • 老城网站建设电商代运营收费标准
  • 湖南企业做网站百度搜索网页版入口
  • 微信端网站开发流程图引流推广营销
  • 网站建设公司客户开发手册软文案例大全
  • 做网站开源框架网站制作公司官网
  • 自己做网站怎么赚钱佐力药业股票
  • 做淘宝那样的网站网站推广的基本方法有
  • 一般门户网站网络推广
  • 服装网站模板站长统计app软件下载官网
  • 如何在网站中做公示信息百度域名提交收录网址
  • 网站建设欣seo搜索引擎优化软件
  • 主机屋做淘宝客网站什么是广告营销
  • 长春网站建设兼职同城引流用什么软件
  • 在那个网站上做设计赚钱seo搜索引擎优化方法
  • 网站建设玖金手指排名15医院网络销售要做什么
  • 遂宁网站seoseo网络推广专员招聘
  • 企业网站服务器多少钱宁德市教育局
  • 扬州邗江建设局网站竞价是什么意思