最近一直在关注mysql方面的面试题目,并且从最近的面试情况来看,mysql在java后端的面试中,肯定是必问的题目,所以这里有必要对这块的内容进行总结,大家可以根据下面的导图进行重点复习,
引擎
1、常用的存储引擎及区别;
事务
1、事务的4大特性;
2、事务的隔离级别;
3、mysql默认的隔离级别;
4、什么是脏读、不可重复读、幻读;
5、mysql的可重复读隔离级别是如何解决幻读的;
6、什么是表锁、行锁;
7、什么是间隙锁、next-key;
8、什么是MVCC;
调优
1、如何排查mysql中的慢sql;
2、如何优化sql;
3、怎么做读写分离,使用了什么中间件;
4、如何进行分库分表,使用了什么中间件;
索引
1、mysql索引使用什么数据结构;
2、mysql为什么使用B+树作为索引结构,为什么不使用B树、红黑树、二叉树;
3、什么是聚集索引、非聚集索引;
4、myIsam和innodb两种存储引擎的索引结构有什么不同;
5、什么情形下索引失效;
6、说下一个二级索引的数据查找过程;
7、如何知道一个sql是否走索引;
8、了解索引下推吗;
日志
1、说下对binlog的理解;
2、说下对redo log的理解
3、说下对undo log的理解;
欢迎对mysql这块的内容进行补充,感谢!