MySQL 作为主流的数据库,是各大厂面试官百问不厌的知识点,但是需要了解到什么程度呢?仅仅停留在 建库、创表、增删查改等基本操作的水平可不够。在面试后端开发的时候,一连几个问题,简直会被问到一脸懵逼。
MySQL 语句怎么优化?分库,分表都适合哪些场景?讲讲 InnoDB 如何使用 B+ 树存储的?
一般来说,准备 MySQL 面试 ,无非要从这几块进行准备:查询、存储、事务、锁和性能调优。不少朋友苦于搜集资料耗时耗力,很难 cover 住面试官的考核角度。为了能让大家在准备面试时少走弯路,这里特别熬夜快一周了,精心整理各大厂 MySQL 面试题的主流考点,经过多次迭代,最终形成了这份MySQL面试文档及学习笔记,从中你可以学到:
收获完整的 MySQL 学习路径
针对实际场景分析数据库问题,进行性能调优
吸收业界专家的经验分享,加速 MySQL 技能进阶
加深 MySQL 底层和核心技术的理解
轻松应对面试中 MySQL 问题
MySQL基础到高级到调优笔记
学习笔记主要分为12个模块,具体有:
由于篇幅字数原因,在这只展示详细目录及内容的截图了,有需要的朋友可以再文末免费获取!
MySQL重要性质
MySQL安装及Mysq|权限
MySQL数据类型
MySQL架构
存储引擎
锁
事务
业务设计
慢查询
索引与执行计划
SQL优化
由于篇幅字数原因,以上的MySQL学习笔记和MySQL面试解析108题文档已经整理成离线文档了,有需要的朋友麻烦添加Q群:328993819,点击直达~
MySQL面试解析108题文档
这份面试文档共5个模块,108道题解析分别有以下模块
MySQL基础模块
说一下 MySQL 执行一条查询语句的内部执行过程?
MySQL 提示“不存在此列”是执行到哪个节点报出的?
MySQL 查询缓存的功能有何优缺点?
如何关闭 MySQL 的查询缓存功能?
MySQL 的常用引擎都有哪些?
MySQL 可以针对表级别设置数据库引擎吗?怎么设置?
常用的存储引擎 InnoDB 和 MyISAM 有什么区别?
InnoDB 有哪些特性?
一张自增表中有三条数据,删除了两条数据之后重启数据库,再新增一条数据,此时这条数据的 ID 是几?
MySQL 中什么情况会导致自增主键不能连续?
InnoDB 中自增主键能不能被持久化?
…
MySQL索引模块
什么是索引?
索引分别有哪些优点和缺点?
以下 SQL 有什么问题?该如何优化?
为什么 MySQL 官方建议使用自增主键作为表的主键?
自增主键有哪些优缺点?
索引有几种类型?分别如何创建?
主索引和唯一索引有什么区别?
在 InnDB 中主键索引为什么比普通索引的查询性能高?
什么叫回表查询?
如何查询一张表的所有索引?
MySQL 最多可以创建多少个索引列?
以下 like 查询会使用索引的是哪一个选项?为什么?
如何让 like %abc 走索引查询?
…
MySQL事务模块
事务是什么?
事务有哪些特性?
MySQL 中有几种事务隔离级别?分别是什么?
幻读和不可重复读的区别?
并发事务一般有哪些问题?
并发事务有什么什么问题?应该如何解决?
什么是 MVCC?
MVCC 是怎么工作的?
REPEATABLE READ(可重读)隔离级别下 MVCC 如何工作?
MySQL 事务实现原理是什么?
如何设置 MySQL 的事务隔离级别?
…
MySQL日志模块
什么是锁?MySQL 中提供了几类锁?
什么是死锁?
常见的死锁案例有哪些?
如何处理死锁?
如何查看死锁?
如何避免死锁?
InnoDB 默认是如何对待死锁的?
如何开启死锁检测?
什么是全局锁?它的应用场景有哪些?
什么是共享锁?
什么是排它锁?
使用全局锁会导致什么问题?
如何处理逻辑备份时,整个数据库不能插入的情况?
…
MySQL日志篇
MySQL性能优化模块
什么是慢查询?
如何开启慢查询日志?
如何定位慢查询?
MySQL 的优化手段都有哪些?
MySQL 常见读写分离方案有哪些?
介绍一下 Sharding-JDBC 的功能和执行流程?
…
**由于篇幅字数原因,以上的MySQL学习笔记和MySQL面试解析108题文档已经整理成离线文档了,有需要的朋友麻烦添加Q群:328993819,点击直达~
MySQL学习笔记
MySQL面试解析108题文档