码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • mysql经典问题(可用于面试提问)


    mysql经典问题(可用于面试提问)

    1.Where 后面的列顺序是不是要符合最左原则?

    Where a=1 and b=2 等价于 Where b=2 and a=1

    最左原则指的是索引顺序,不是谓词顺序,以上两个条件都匹配(a,b) 复合索引。

    2.Join 的顺序是否指定左边为驱动表?

    Inner Join场景下,在执行计划中按统计信息的预估自动选中驱动表,Left Join ,Right Join 时左右写的顺序才有显式意义。

    3.业务上有随机返回的需求,能否用order by rand()

    一般不建议,如果结果集非常小,勉强可用,但结果集大时由于随机数排序,会产生Sort操作甚至溢出到磁盘,有很大性能损耗,此类需求可以考虑伪随机算法。

    4.Delete数据之后,为什么磁盘空间占用反而大了?

    Delete数据并不能清理数据文件空间,反而会导致Undo,Binlog文件的增长,使用Optimize收缩。

    5.Binlog是否一定要Row格式?

    在主从场景下,Binlog使用Row格式是为了保证主从数据一致性。

    单机场景下,Binlog做为增长数据备份使用,同时也包括一些语句级数据恢复的功能。

    6.死锁、阻塞的区别

    通常说的阻塞,主要是由于锁获取不到,产生的请求被阻塞,一般需要手动解锁(Kill或等待)。

    死锁不等于阻塞,虽然死锁中阻塞是必现的,但是会自动回滚事务解锁,不用手动处理,但需要业务判断语句逻辑。

    以上两种情况都是由于业务侧逻辑出现,并非内核原因。

    7.做DDL时是否会锁表

    所有的DDL都需要锁表,只是操作顺序和操作获取时间的问题。如下图所示,允许并发DDL是No,就证明对业务有一些阻塞。

  • 相关阅读:
    Mysql间隙锁
    python 根据url下载文件使用Python实现
    主数据管理是数字化转型成功的基石——江淮汽车案例分享
    PLC连接库MCProtocolLibrary
    测试用例颗粒度说明
    【CSS预处理语言】less快速入门
    免费的秘密:免费,不是真的免费,是看起来像免费……
    搜索引擎站群霸屏排名源码系统+关键词排名 前后端完整的搭建教程
    【SpringMVC】JSR303与拦截器的使用
    利用sham-link实现路由还原
  • 原文地址:https://blog.csdn.net/LSW1737554365/article/details/134054093
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号