前言

众所周知,简历上“了解=听过名字;熟悉=知道是啥;熟练=用过;精通=做过东西”。(文末有跳槽涨薪福利)

相信大家对于MySQL的索引都不陌生,索引(Index)是帮助MySQL高效获取数据的数据结构。索引作为MySQL中比较重点的知识,在面试中出现的频率特别高。

本人自认为对MySQL的索引知识相当了解,同事们工作中也都热情的称呼我为大佬。为了进阿里,我特地花了1个月左右时间复习相关知识,自信满满的在简历上写了“精通MySQL”,想不到被阿里面试官狠狠虐了一把…(关于这次面试题目和整理的答案,有需要的同学可在文末自行领取哈)

前半段和面试官相谈甚欢,聊着聊着我提到我们业务量比较大,每天大概有几百万的新数据生成,面试官来了兴趣………

面试官:你们每天这么大的数据量,都是保存在关系型数据库中吗?

我:是的,我们线上使用的是MySQL数据库。

面试官:那你们有没有对查询做一些优化呢?

我:我们用了索引。

阿里面试题

(由于篇幅问题,接下来的内容我只列出了阿里面试官的问题,自己能答上来的大概只有一半)

你能说说为什么B+树相对于B树在查询上会更加优胜吗?

除了上面这个范围查询的,你还能说出其他的一些区别吗?

刚刚我们聊到B+ Tree,那你知道B+Tree的叶子节点都可以存哪些东西吗?

聚簇索引和非聚簇索引,在查询数据的时候有区别吗?

刚刚你提到主键索引查询只会查一次,而非主键索引需要回表查询多次。是所有情况都是这样的吗?非主键索引一定会查询多次吗?

联合索引、最左前缀匹配

你们在创建索引的时候都会考虑哪些因素呢?你们有用过联合索引吗?

那你们在创建联合索引的时候,需要做联合索引多个字段之间顺序你们是如何选择的呢?

索引下推、查询优化

你知道在MySQL 5.6中,对索引做了哪些优化吗?

你们创建的那么多索引,到底有没有生效,或者说你们的SQL语句有没有使用索引查询你们有统计过吗?

那排查的时候,有什么手段可以知道有没有走索引查询呢?

那什么情况下会发生明明创建了索引,但是执行的时候并没有通过索引呢?

哦,索引有关的知识我们暂时就问这么多吧。你们线上数据的事务隔离级别是什么呀?

对于程序员来说,去任何一家公司面试,数据库是避不开的。开发人员对MySQL掌握的越深入,你能做的事情就越多。

MySQL查询过程

完成业务功能,要懂基本的Sql语句。

做性能优化,要懂索引,懂引擎。

做分库分表,要懂主从,懂读写分离。

做安全,要懂权限,懂备份,懂日志。

做云数据库,要懂源码,懂瓶颈。

阿里(蚂蚁金服、菜鸟)面试真题.PDF

——以上问题的答案我已经整理好了,戳这里,戳这里,暗号:CSDN

蚂蚁金服,Java高级

mysql 数据库中,什么情况下设置了索引但无法使用?

mysql 优化会不会,mycat 分库,垂直分库,水平分库?

mysql 的存储引擎了解过没有?

菜鸟网络,Java中级(消息队列、Springcloud、jvm、spring、数据结构、数据库、线程池)

金九银十全套面试资料

百度面试篇

腾讯面试篇

京东面试篇

头条面试篇

美团面试篇

阿里蚂蚁金服面试篇

阿里菜鸟网络面试篇

互联网公司高频面试必备综合篇

并发编程面试题汇总

JVM面试题汇总

Netty常被问到的那些面试题汇总

Tomcat面试题整理汇总

Mysql面试题汇总

Spring源码深度解析

Mybatis常见面试题汇总

Nginx那些面试题汇总

Zookeeper面试题汇总

RabbitMQ常见面试题汇总

Kafka面试题汇总

Redis常见面试题汇总

Dubbo面试题

SpringBoot,SpringCloud面试汇总

集合框架面试题

设计模式面试题

数据库面试题

面试必备之乐观锁与悲观锁

多家互联网公司常见面试题库

Java高频核心面试题库

以上就是本文的全部内容,希望对大家有所帮助,祝大家早日升职加薪迎娶白富美走上人生巅峰!

资料领取:戳这里,戳这里,暗号:CSDN

喜欢文章请点个关注,三连~~

本文由 @鲁小强 发布于 职涯宝 ,未经作者许可,禁止转载,欢迎您分享文章

boot spring 叶子暗的_抓住MySQL面试重点知识,让你征服面试官半小时相关推荐

  1. boot spring 叶子暗的_我以为自己MySQL够牛逼了,直到看到了Alibaba的面试题

    前言 众所周知,简历上"了解=听过名字:熟悉=知道是啥:熟练=用过:精通=做过东西".(文末有跳槽涨薪福利) 相信大家对于MySQL的索引都不陌生,索引(Index)是帮助MySQ ...

  2. 自定义注解实现权限校验含义_厉害了!老大利用AOP实现自定义注解,半小时完成我三天工作量...

    前面我们已经介绍了AOP适用的一些业务场景以及简单的代码实现,当时我们的切点是用execution表达式来配置的,这种方式有一些局限性在里面: 灵活性不高,一个表达式只能切到某种同类型的方法 个性化不 ...

  3. boot spring 接口接收数据_在 Spring Boot 中使用 Dataway 配置数据查询接口

    Dataway介绍 Dataway 是基于 DataQL 服务聚合能力,为应用提供的一个接口配置工具.使得使用者无需开发任何代码就配置一个满足需求的接口. 整个接口配置.测试.冒烟.发布.一站式都通过 ...

  4. boot spring 接口接收数据_基于 Spring Boot 实现 Restful 风格接口,实现增删改查功能...

    优质文章,及时送达 Spring Boot介绍 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配 ...

  5. boot spring 没有父子容器_理解 MyBatis 是如何在 Spring 容器中初始化的

    MyBatis 初始化过程就是 生成一些必须的对象放到 Spring 容器中 .问题是这个过程到底生成了哪些对象?当遇到 MyBatis 初始化失败时,如何正确的找到分析问题的切入点?本文将针对这些问 ...

  6. boot spring 跨域注解_每日一问学技术:@SpringBootApplication注解干了个啥?

    @SpringBootApplication注解干了个啥? 通常使用Spring Boot的应用程序的主类是这样的: import org.springframework.boot.SpringApp ...

  7. boot spring 对参数检测_【springboot】@Valid参数校验

    转自: https://blog.csdn.net/cp026la/article/details/86495659 扯淡: 刚开始写代码的时候对参数的校验要么不做.要么写很多类似 if( xx == ...

  8. 收集关于MySQL数据库的相关知识_关于Mysql数据库的知识总结

    2017年6月8日,天气阴.心情晴. 连续做梦两个晚上了,昨晚竟然梦见一个很长时间不联系的初中同学了,早上上班的路上聊了聊.女孩现在出差在贵州,风景秀美的地方.我说"你现在生活很滋润&quo ...

  9. mysql事务重点知识总结(需要完整脑图的可以联系我)

    MYSQL事务 事务是一组操作单元,它将数据从一种状态转变到另外一种转台. 特性(ACID) 原子性(Atomicity) 原子性描述的事务中的操作时一组不可分割的单元,要么全部成功要么全部失败. 保 ...

最新文章

  1. Git 常见问题记录
  2. 深入聊一聊 Spring AOP 实现机制
  3. HTML中的align和valign这两个属性
  4. HTML中的转义字符 (转)
  5. 用python画花瓣-Python竟能画这么漂亮的花,帅呆了(代码分享)
  6. 爬虫综合大作业(震惊!爬取了590位微信好友后竟然发现了)
  7. 【学习笔记】ABAP OOD设计模式 - 单例模式
  8. 分布式与人工智能课程(part3)--第三课
  9. virtualbox cannot access the kernel driver的解决办法
  10. 2018 年最受欢迎的 Python 库,你都用过吗?
  11. 计算机专业需要汇编语言,重点大学计算机专业系列教材·汇编语言程序设计
  12. mysql error log清理_手动删除mysql日志/var/log/mysql/error.log导致的mysql无法启动
  13. FreeModbus TCP传输初始化
  14. 搭建IntelliJ IDEA+maven+jetty+SpringMVC 开发环境(一)
  15. 一个由于springboot自动配置所产生的问题的解决
  16. UVA - 11029
  17. 40. Element getAttribute() 方法
  18. 区域增长 matlab,图像分割 区域增长
  19. 人工智能简史—学习笔记
  20. 多功能科学计算机在线使用,多功能科学计算器

热门文章

  1. 上班摸鱼又有了新姿势
  2. c语言中 null 和NULL的区别 %p和%x的区别 在dvc++运行
  3. css梯形、六角星、五角星、六边形
  4. 批量查询ip地址归属地教程
  5. 【git】Enter passphrase for key 解决本地git 提交需要密钥问题
  6. 真是嘴上硬的人大多心里软,又把事做了还讨不了好
  7. 数据库“写时模式”与“读时模式”对比
  8. c语言中x1=12.8%3,中国石油华东12春《C语言》在线作业(三)答案
  9. 算法工程师和程序员区别多大?一样吗?
  10. JAVA项目:flappy_bird基于JAVASE和SWING组件