1.undo log,redo log,bin log是什么?Checkpoint是什么?一条MySQL更新语句的执行过程是什么样的?
https://www.cnblogs.com/wq-blogs/p/11867199.html
https://blog.csdn.net/u010002184/article/details/88526708
checkpoint机制:https://www.cnblogs.com/cuisi/p/6590281.html
2.脏页是什么?
https://blog.csdn.net/weixin_34198881/article/details/93577479
5.MySQL中的事务是什么?
6.MySQL的隔离级别是怎么样的?
7.MVCC的实现原理是怎么样的?
8.MySQL是怎么解决幻读的问题的?
9.MySQL中有哪些锁?
10.B树是什么?
11.B树与B+树的区别是什么?
12.索引是什么?
13.字符串索引和数字类型索引的区别?
- 数字类型索引速度快,字符串涉及字符集编码过程,消耗CPU资源。
- 当MySQL中字段为int类型时,搜索条件where num=‘111‘ 与where num=111都可以使用该字段的索引。当MySQL中字段为varchar类型时,搜索条件where num=‘111‘ 可以使用索引,where num=111 不可以使用索引。
- 字符串索引优化:例如存储网站url,可以新增一个索引列,列值是对url进行CRC32("url")编码【不适合使用SHA1()、MD5(),因为编码后是非常长的字符串】。CRC32容易导致重复,可以使用自定义编码算法或者取MD5部分字符。
14.union和union all的区别是什么?
- Union:对两个结果集进行并集操作,不包括重复行,同时进行默认规则的排序;(去重且排序)
- Union All:对两个结果集进行并集操作,包括重复行,不进行排序;(不去重不排序--快)
15.Join的工作流程是怎么样的,怎么进行优化?
https://blog.csdn.net/huxiaodong1994/article/details/91668304
17.联合索引是什么?
https://blog.csdn.net/Abysscarry/article/details/80792876
18.回表是什么?覆盖索引是什么?
https://www.jb51.net/article/180267.htm
19.哪些情况不要建索引?主键,唯一性索引,普通索引的区别是什么?
https://www.cnblogs.com/l199616j/p/11232392.html
21.InnoDB和MyISAM的区别是什么?
22.什么是分库分表?
23.怎么实现跨库分页查询?
- 二次查询法
https://www.cnblogs.com/zhumengke/articles/12173314.html
https://segmentfault.com/a/1190000013225860?utm_source=channel-hottest
24.MySQL主从复制的工作流程是什么样的?
25.char类型与varchar类型的区别?
- char是固定长度存储字符,浪费空间但速度快。varchar是变长存储字符,节省空间但需要计算长度因此速度慢。
- char适合存储很短的信息、固定长度信息(uuid)、频繁改变的列(varchar需要频繁计算长度)。
- char(M)类型的数据列里,每个值都占用M个字节,如果某个长度小于M,MySQL就会在它的右边用空格字符补足.(在检索操作中那些填补出来的空格字符将被去掉-缺点)在varchar(M)类型的数据列里,每个值只占用刚好够用的字节再加上一个用来记录其长度的字节(即总长度为L+1字节)。
26.查询数量SELECT Count(*)怎么优化?
https://blog.csdn.net/hit1110310422/article/details/97943091
27.如何优化MySQL慢查询?
https://www.cnblogs.com/xk920/p/11132038.html
29.MySQL语句执行顺序?
1 from
2 on
3 join
4 where
5 group by(开始使用select中的别名,后面的语句中都可以使用)
6 avg,sum....
7 having
8 select
9 distinct
10 order by
30.哪些时候索引无效?
https://www.jianshu.com/p/3f310ff60f11