首页 > 数据库 >数据库八股文——摘自黑马程序员

数据库八股文——摘自黑马程序员

时间:2024-10-15 16:47:45浏览次数:14  
标签:摘自 事务 八股文 索引 mvcc 查询 程序员 SQL 数据结构

InnoDB和MyIsam区别

如何定位慢查询?

  1. 通过一些运维工具如Skywalking,检测出哪个接口比较慢,最终因为是SQL的问题
  2. 在mysql中开启慢日志查询,比如我们设置的值是2秒,一旦sql执行超过2秒就会记录到日志中。(调试阶段)

如何分析慢查询

可以采用EXPLAIN或者DESC命令获取MySQL如何执行SELECT语句的信息

语法如下

效果如下

字段介绍


索引及底层数据结构

索引(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护着满足特定查找算法的数据结构(B+树),这些数据结构以某种方式引用(指向)数据, 这样就可以在这些数据结构上实现高级查找算法这种数据结构就是索引。

B树和B+树


聚簇索引和非聚簇索引


覆盖索引

覆盖索引是指查询使用了索引,并且需要返回的列,在该索引中已经能全部找得到。


索引创建的原则


索引失效的情况


SQL优化


事务的特性

事务是一组操作的集合,它是一个不可分割的工作单位,事务会把所有的操作作为一个整体一起向系统提交或撤销操作请求,即这些操作要么同时成功,要么同时失败。


并发事务带来的问题


事务隔离级别


undo log 和redo log


mvcc(多版本并发控制)

mvcc指的是维护一个数据的多个版本,使得读写操作没有冲突。


主从同步原理


分库分表

标签:摘自,事务,八股文,索引,mvcc,查询,程序员,SQL,数据结构
From: https://blog.csdn.net/weixin_62803673/article/details/142954050

相关文章

  • 2024年最新版Java面试八股文!
    1、并发编程三要素?(1)原子性原子性指的是一个或者多个操作,要么全部执行并且在执行的过程中不被其他操作打断,要么就全部都不执行。(2)可见性可见性指多个线程操作一个共享变量时,其中一个线程对变量进行修改后,其他线程可以立即看到修改的结果。(3)有序性有序性,即程序的执行......
  • python-黑马程序员 初学者笔记(持续更新10.15)
    序章:由于科研室鼓励我们发布csdn,因此我们将一起学习python,这是我的笔记给大家分享出来,这不适用于一点都不会的小白,如果你看过一次或者想要回顾一下python内容再或者你正学习pyhon,可以参考本片笔记,本文章的优势在于是初学者所写,可能对于我们来说有共鸣,比较详细,并且重要知识点都......
  • 【愚公系列】《AIGC辅助软件开发》042-AI辅助提升程序员求职、招聘与面试效率:用 ChatG
    标题详情作者简介愚公搬代码头衔华为云特约编辑,华为云云享专家,华为开发者专家,华为产品云测专家,CSDN博客专家,CSDN商业化专家,阿里云专家博主,阿里云签约作者,腾讯云优秀博主,腾讯云内容共创官,掘金优秀博主,亚马逊技领云博主,51CTO博客专家等。近期荣誉2022年度博客之星TOP2,2023年度......
  • 人工智能时代程序员的核心竞争力是什么?
    人工智能时代,程序员如何保持核心竞争力?随着AIGC(如chatgpt、midjourney、claude等)大语言模型接二连三的涌现,AI辅助编程工具日益普及,程序员的工作方式正在发生深刻变革。有人担心AI可能取代部分编程工作,也有人认为AI是提高效率的得力助手。面对这一趋势,程序员应该如何应对?......
  • 程序员有可能获得诺贝尔奖?可以在那个方向上寻求突破?
    程序员是有可能获得诺贝尔奖的。从2024年的诺贝尔奖颁发情况来看,已经有与计算机、编程相关领域的研究者获得了诺贝尔化学奖。未来程序员可以在以下一些方向寻求突破以获得诺贝尔奖:人工智能与科学研究结合的领域:蛋白质结构预测与设计:就像2024年诺贝尔化学奖的部分获得......