前言
本章内容来自B站黑马程序员java大厂面试题和小林coding
博主学习笔记,如果有不对的地方,海涵。
如果这篇文章对你有帮助,可以点点关注,点点赞,谢谢你!
1.MySQL优化
1.1 定位慢查询
定位


一个SQL语句执行很慢, 如何分析(explain)(desc)




1.2 MySQL存储引擎


1.3 索引
数据结构


什么是聚簇索引什么是非聚簇索引 ?



覆盖索引
不会回表查询



索引创建原则

什么情况下索引会失效 ?





项目中遇到5,模糊查询名字,但是模糊查询的%*%就失效了

什么自增ID更快一些,UUID不快吗,它在B+树里面存储是有序的吗?
1.4 SQL优化经验
表的设计优化

SQL语句优化

主从复制、读写分离
2.事务
2.1 事务的特性是什么?可以详细说一下吗?(ACID)


2.2 并发事务带来哪些问题?怎么解决这些问题呢?MySQL的默认隔离级别是?





2.3undo log(持久性)和redo log(一致性、原子性)的区别




2.4 事务中的隔离性是如何保证的呢?


2.5 滥用事务,或者一个事务里有特别多sql的弊端?

3.架构
3.1 MySQL主从同步原理


3.2 分库分表






4.基础
4.1 SQL查询语句的执行顺序是怎么样的?

5.锁
5.1 数据库的表锁和行锁有什么作用?

5.2 两条update语句处理一张表的不同的主键范围的记录,一个<10,一个>15,会不会遇到阻塞?底层是为什么的?
