码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • MVCC 脏读理解


    MVCC是为了方便并发修改数据库的时候。防止互相影响的一个重大发明

    MVCC主要用于 读已提交、可重复读这两个事务隔离级别
    MVCC搭配使用的还有READ VIEW

    • readview 在读已提交的时候,会每条sql更新 READ VIEW
    • readview 在可重复读的时候,只在第一次快照读的时候配置 READ VIEW

    RR级别有幻读的风险,主要是出现在快照读和当前读混合使用的情况

    RR级别InnoDB通过临键锁解决幻读问题主要是体现在 for update
    RR级别如果默认使用快照读,是不会存在脏读问题的

    当前读 for update 带来的问题
    锁表
    插入 锁全表
    更新

    范围判断

    idcd
    000
    555
    101010
    151515

    命中索引,范围方向至最近一个记录记录,且包含
    例子:
    select * from t where id < 4 就会把(-∞,5]的记录锁住 注意涉及锁住记录的要从索引所在的列维度来判断
    小于最小记录(-∞ ,最小记录]
    如果大于最后一条记录,则[指定值主键,+∞ )

    等值判断

    涉及索引 当没命中。相邻的两个记录之间形成间隙锁,端点两条记录均不受锁影响,
    如果大于最后一条记录,则[指定值主键,+∞ )小于最小记录(-∞ ,最小记录] 命中只会加行锁,锁住命中那一行数据
    不涉及主键,直接锁表

    所以用forUpdate有风险

  • 相关阅读:
    java分布式项目需要进行注意的事项(代码层面)
    Leetcode406. 根据身高重建队列
    【C++】vector的使用和模拟实现(超级详解!!!!)
    如何快速让苹果TF上架
    一夜之间,3.0万 Star,全部清零。。
    快速复现 实现 facenet-pytorch 人脸识别 windows上 使用cpu实现 人脸对比
    每日算法刷题Day14-反转链表、两个链表的第一个公共结点、删除链表中重复的节点
    (121)Verilog HDL:设计一个加法功能之Module addsub
    Leetcode 112. 路径总和 java解决给定一个值判断二叉树根节点到叶子节点总和是否相等 算法
    Java实现手动操作定时任务功能的简单例子(动态创建定时任务)
  • 原文地址:https://blog.csdn.net/mmdsl083/article/details/128059788
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号