您的位置:首页 > 娱乐 > 明星 > 郑州网官网_中国即将全面疫情解封_营销型网站定制_seo研究协会网

郑州网官网_中国即将全面疫情解封_营销型网站定制_seo研究协会网

2024/12/26 18:17:47 来源:https://blog.csdn.net/weixin_42840717/article/details/144187289  浏览:    关键词:郑州网官网_中国即将全面疫情解封_营销型网站定制_seo研究协会网
郑州网官网_中国即将全面疫情解封_营销型网站定制_seo研究协会网

事务并发之脏写

  • 题记
  • 脏写
  • 防止脏写

题记

  • 在《事务之概念》提到事务对应现实世界的状态转换,这个过程要满足4个特性
  • 这世界,真理只在大炮射程之类,通往和平的道路,非“常人”可以驾驭
  • 一个人生活按部就班,人多起来,难免鸡飞狗跳
  • 同理现实世界的状态转换映射到数据库,满足4个特性也非一帆风顺
  • 数据库江湖,一个事务任我行,两个事务南北双雄,多事务江湖大乱
  • 接下来便是并发事务,脏写的问题

脏写

  • 一场正在进行的考试,某人正奋笔疾书

    • 此时场外有人疯了,冲进考场,在你还未提交的试卷上疯狂作画
    • 此时无人机突然出现,携带墨水炸弹,在你还未提交的试卷上…
    • 此时外星人突然进入了考场,全部字迹变成外星语言,在你还未提交的试卷上…
    • 此时,你爸给你打来电话:崽,俺们家拆迁啦赔了500万,MD你大笔一甩,考个P…
  • 这个例子中,你是负责修改考卷的事务,不幸的是,其他干涉的事务太多

  • 那么一个事务修改了另一个未提交事务修改的数据,便是发生了脏写

    • 一个模型:
      脏写记为P0,T1、T2事务并发执行情况,w=写,w1=事务1写,c1=事务1提交
      P0:w1[x]...w2[x]... ((c1 or a1) and (c2 or a2) in any order )
    • 一个例子:
      w1[x=1]w2[x=2]w2[y=2]c2w1[y=1]c1
      • T2对x修改提交,此时T1还没提交
      • T1此时提交,是不是把x又改回1了?
      • 当然不是,这里,两个事务改的是一条数据
      • 你先写的为1,他给改了2,然后交卷了(此时T1再次提交是什么情况?现实案例无此情况)
        - 大家也看到了,是他先动手的

防止脏写

  • 大家也看到了,没有规则,没有方案约束,混乱不堪
  • 所以为了考场安全,查分时成绩数据库能反应你真实水平
    • 场外有大批警力,外部环境安全可靠
    • 大家都有准考证,非考试相关人员无法进入
    • 地球防卫部队时刻守护着太阳系安全,击退外星舰队
    • 殖民火星计划已启动,拆迁希望落空,土地不值钱了…好好做卷子吧!您嘞!
  • 也便是,mysql会设计各种方案,阻止这样的事情发生

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com