面试官问: 谈谈你对数据库优化的见解(方案)
2021-08-17 22:59 作者:teacher4390 | 我要投稿

三大方向:
1、内核优化。
2、my.cof配置。
3、sql语句优化
语句优化:
1、最有效的是缓存,如select name from T_student where create =sysdate()与
select name from T_student where create ='2021-02-12' --第一个是不会走缓存的。
2、使用explane分析sql语句
3、where条件使用索引 ,大数据查询不适合建立索引。
4、Limit
5、永久连接后,apache在某些极端环境下会继续简历新的连接
6、正确使用数据库引擎
7、大量新增 删除,表会锁起来,就会有大量的其他请求会排队,当达到一定程度会搞垮数据库 如何解决
8、字段类型能使用小,尽量使用小,越紧凑读取也是会更快。固定
9、最好固定好长度,数据库有偏移量,固定就好些
10、尽量不要赋null,
11、固定的字段使用枚举类型(国家、城市、性别)
12、建立主键 最好不要用vchar来做主键
13、避免使用* ,要使用具体字段, 减少内存消耗,网络传输
14、rand() 计算是在cpu的,比如order by random(),就会消耗很大,尽量避免使用这个。
15、join 的尽量两个建立的数据类型要一致
16、使用表垂直分割,查询效率会加快。