面试被问MySQL总回答不好:100道MySQL面试题和21题MySQL性能优化

这篇博客整理了100道MySQL面试题,涵盖索引、事务、表结构设计和存储引擎等方面,旨在通过回答问题加深对MySQL的理解。还分享了21条MySQL性能调优经验,包括查询缓存、索引优化和避免全表扫描等技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前一阵系统的学习了一下MySQL,也有一些实际操作经验,偶然看到一篇和MySQL相关的面试文章,发现其中的一些问题自己也回答不好,虽然知识点大部分都知道,但是无法将知识串联起来

因此决定搞一个MySQL灵魂100问,试着用回答问题的方式,让自己对知识点的理解更加深入一点

主要针对的是开发人员需要知道的一些MySQL的知识点,主要包括索引,事务,优化等方面,以在面试中高频的问句形式给出答案

索引相关

  • 什么是索引?
  • 索引是个什么样的数据结构呢?
  • Hash索引和B+树所有有什么区别或者说优劣呢?
  • 上面提到了B+树在满足聚簇索引和覆盖索引的时候不需要回表查询数据,什么是聚簇索引?
  • 非聚簇索引一定会回表查询吗?
  • 在建立索引的时候,都有哪些需要考虑的因素呢?
  • 联合索引是什么?为什么需要注意联合索引中的顺序?
  • 创建的索引有没有被使用到?或者说怎么才可以知道这条语句运行很慢的原因?
  • 那么在哪些情况下会发生针对该列创建了索引但是在查询的时候并没有使用呢?

事务相关

  • 什么是事务?
  • ACID是什么?可以详细说一下吗?
  • 同时有多个事务在进行会怎么样呢?
  • 怎么解决这些问题呢?MySQL的事务隔离级别了解吗?
  • Innodb使用的是哪种隔离级别呢?
  • 对MySQL的锁了解吗?
  • MySQL都有哪些锁呢?像上面那样子进行锁定岂不是有点阻碍并发效率了?

表结构设计

  • 为什么要尽量设
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值