众所周知,简历上“了解=听过名字;熟悉=知道是啥;熟练=用过;精通=做过东西”。

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

本人自认为对MySQL的索引知识相当了解,同事们工作中也都热情的称呼我为大佬。为了进阿里,我特地花了1个月左右时间复习相关知识,自信满满的在简历上写了“精通MySQL”,想不到被阿里面试官狠狠虐了一把…

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

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

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

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

我:我们用了索引。

阿里面试题

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

  • 你能说说为什么B+树相对于B树在查询上会更加优胜吗?
  • 除了上面这个范围查询之外,你还能说出其他的一些区别吗?
  • 刚刚我们聊到B+ Tree,那你知道B+Tree的叶子节点都可以存哪些东西吗?
  • 聚簇索引和非聚簇索引,在查询数据的时候有区别吗?
  • 刚刚你提到主键索引查询只会查一次,而非主键索引需要回表查询多次。所有情况都是这样的吗?关键索引一定会查询多次吗?

联合索引、最左前缀匹配

  • 你们在创建索引的时候都会考虑哪些因素呢?你们有用过联合索引吗?
  • 那你们在创建联合索引的时候,需要做联合索引多个字段之间的顺序你们是如何选择的呢?

索引下推、查询优化

  • 你知道在MySQL 5.6中,对索引做了哪些优化吗?
  • 你们创建的那么多索引,到底有没有生效,或者说你们的SQL语句有没有使用索引查询你们有统计过吗?
  • 那排查的时候,有什么手段可以知道有没有走索引查询呢?
  • 那什么情况下会发生明明创建了索引,但是执行的时候并没有通过索引呢?
  • 哦,索引有关的知识我们暂时就问这么多吧。你们线上数据的事务隔离级别是什么呀?

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

目前大厂春招已经开始了,如果想要最后再冲刺一下,或者是提前为今年的秋招做准备的,我强烈建议你看一下这份现在圈内疯狂转发的《Java面经》。朴实无华全是干货,毕竟这几个月面试竞争压力大,多看多学,知道面试官要问什么很关键,这样有很大概率在千千万万的面试者中脱颖而出。【Java面经】

部分目录:

内容截图:

Java基础部分

Java多线程部分

数据结构与算法部分

Linux命令部分

Java 内存模型 和 垃圾回收部分

我以为自己MySQL够牛逼了,直到被腾讯面试官狠狠抽了两巴掌相关推荐

  1. 我以为自己MySQL够牛逼了,直到看到了Alibaba的面试题

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

  2. 我以为自己MySQL够牛逼了,直到看到了京东的面试题。

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

  3. 我以为自己 MySQL 够牛逼了,直到看到了Alibaba的面试题,是我不配

    前言 众所周知,简历上"了解=听过名字:熟悉=知道是啥:熟练=用过:精通=做过东西". 相信大家对于 MySQL 的索引都不陌生,索引(Index)是帮助 MySQL 高效获取数据 ...

  4. 我以为自己MySQL够牛逼了,直到看到了Alibaba的面试题,是我不配了。。

    前言 众所周知,简历上"了解=听过名字:熟悉=知道是啥:熟练=用过:精通=做过东西". 相信大家对于MySQL的索引都不陌生,索引(Index)是帮助MySQL高效获取数据的数据结 ...

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

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

  6. 我说MySQL里每张表不要超过100w数据,面试官让我回去等通知?

    V-xin:ruyuanhadeng获得600+页原创精品文章汇总PDF 目录 1.面试题 2.面试官心理分析 3.面试题剖析 1.面试题 事务的几个特点是什么? 数据库事务有哪些隔离级别? MySQ ...

  7. 企鹅够牛,大事不断:腾讯音乐遭“投资者律师代表团”调查、大数据组件TubeMQ宣布开源、1千万美元领投英国AI企业SenSat...

    整理: 数据猿 Toby 数据猿官网 | www.datayuan.cn 今日头条丨一点资讯丨腾讯丨搜狐丨网易丨凤凰丨阿里UC大鱼丨新浪微博丨新浪看点丨百度百家丨博客中国丨趣头条丨腾讯云·云+社区 据 ...

  8. 线上 MySQL 的自增 id 用尽怎么办?被面试官干趴下了!

    点击下方"Java编程鸭"关注并标星 更多精彩 第一时间直达 MySQL的自增id都定义了初始值,然后不断加步长.虽然自然数没有上限,但定义了表示这个数的字节长度,计算机存储就有上 ...

  9. 两年经验斩获蚂蚁/头条 Offer,牛逼了

    分享一篇面经,作者拿到了 PingCAP,今日头条的 offer 以及蚂蚁金服的口头 offer.下面是该作者的经验分享: 准备过程 我自己是本科毕业后在老东家干了两年多,老东家算是一家"小 ...

最新文章

  1. Android Studio的使用(三)--包不分级、修改包名
  2. 每秒10W次高并发订单业务,你怎么实现?
  3. 配置Chrome支持本地(file协议)的AJAX请求
  4. java.net.sockettimeoutexception read timed out
  5. 备份Mysql数据库时,报 Couldn't execute 'show fields from的一种问题解决方案
  6. 网络编程—代码—TCP网络传输
  7. go 的时间与时间戳计算
  8. 用Python计算最长公共子序列和最长公共子串
  9. 使用SecureCRT下载服务器日志到本地windows
  10. python datetime库的基本使用
  11. MaxCompute 助力衣二三构建智能化运营工具
  12. buu-[WUSTCTF2020]level3
  13. 梦幻西游python验证成语_python正则表达式抓取成语网站
  14. 电影人生 - 一个人的电影
  15. Flutter ExpansionTile 折叠组件的使用
  16. excel python插件_再见 VBA!神器工具统一 Excel 和 Python
  17. 麒麟系统开机自启动服务、执行脚本、命令
  18. 手机数据网络慢怎么修改服务器,手机4G网速慢怎么办 简单3招轻松提升网速
  19. C语言_数组的5种复制方法
  20. 你知道怎样做好一个老板吗?先来看看不适合做老板的三种人

热门文章

  1. 红岭创投黑名单批量导入
  2. 46. 全排列:给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。
  3. Docker安装和基本操作
  4. IDDPM官方gituhb项目--模型构建
  5. Android判断是模拟器还是真机
  6. Python爬取梨视频并下载【ajax抓包】
  7. 中首清算质疑偶像演员不适合演抗战剧?《雷霆战将》三大还原引争议
  8. [附源码]计算机毕业设计JAVA旅游管理系统
  9. 靠谱的HEVC方案-软编解码器
  10. 2018省赛第九届蓝桥杯真题C语言B第四题题解 测试次数