SQL优化面试题30道 + MySQL面试宝典(尚硅谷)
目录一、SQL优化面试题30道二、无意看到的知识点1.如何设置MySQL分布式架构主键ID,为什么不能使用自增ID或者UUID做主键?2.使用自增id的缺点3.隐式事务和显式事务4.binlogSTATEMENT 格式ROW 格式MIXED 格式如何设置binlog格式5.自增锁和行锁、间隙锁、临键锁自增锁自增锁和行锁、间隙锁、临键锁的区别控制自增锁模式的innodb_autoinc_lock_mode参数行锁间隙锁临键锁退化机制三、MySQL面试宝典(尚硅谷)1.MySQL中索引有几种?2.索引是个什么东西?3.索引的优缺点?4.索引的数据结构有哪些?5.介绍下B+树索引?InnoDB索引分为两种:MyISAM只有非聚簇索引:6.什么是聚簇索引、非聚簇索引以及区别?InnoDB、MyISAM中索引的区别?6.1什么是聚簇索引、非聚簇索引以及区别?6.2InnoDB、MyISAM中索引的区别?6.3InnoDB、MyISAM的区别及适用场景?7.介绍下Hash索引?8.B树和B+树的区别?数据库为什么使用B+树而不是B树?8.1B树和B+树的区别?8.2数据库为什么使用B+树而不是B树?9.Hash索引和B+树的区别?什么是多列索引的最左前缀匹配原则?9.1Hash索引和B+树的区别?9.2什么是多列索引的最左前缀匹配原则?10.MySQL中建立、删除索引的方法有哪些?10.1 建立普通索引10.2 建立唯一索引10.3 建立全文索引10.4 建立多列/复合索引10.5 建立主键索引10.6 删除索引11.B+树索引的数据结构详细介绍(以聚簇索引为例)12.一个b+树中大概能存放多少条索引记录?13.平衡二叉树,红黑树,B树和B+树的区别是什么?都有哪些应用场景?14.如果是大段文本内容,如何创建(优化)索引?15.一、SQL优化面试题30道mysql性能调优面试题_Knowledge丶的博客-CSDN博客_mysql调优面试题1.对查询进行优化,应尽量避免全表扫描,首先应考虑在where及order by涉及的列上建立索引。2.应尽量避免在 where 子句中使用!=或操作符,否则引擎将放弃使用索引而进行全表扫描。sql中有两种方式表示不等于,一种是""(不含引号),另一种是"!="(不含引号),用法是一样的。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null,可以在num上设置默认值0以确保表中num列没有null值,然后这样查询:select id from t where num=0。4.在 where 子句中使用 or 作为连接条件时,如果or前的列和后面的列