第一部分:基础知识第二部分:MYISAM和INNODB索引结构1, 简单介绍B-tree B+ tree树
2, MyisAM索引结构
3, Annode索引结构
4, MyisAM索引与InnoDB索引相比较
第三部分:MYSQL优化
1,表数据类型选择
2,sql语句优化
(1) 最左前缀原则
(1.1) 能正确的利用索引
(1.2) 不能正确的利用索引
(1.3) 如果一个查询where子句中确实不需要password列,那就用"补洞".
(1.4) like
(2) Order by 优化
(2.1) filesort优化算法.
(2.2) 单独order by 用不了索引,索引考虑加where 或加limit
(2.3) where + orerby 类型,where满足最左前缀原则,且orderby的列和where子句用到的索引的列的子集.即是(a,b,c)索引,where满足最左前缀原则且order by中列a,b,c的任意组合
(2.4) where + orerby+limit
(2.5) 如何考虑order by来建索引
(3) 隔离列
(4) OR,IN,UNION ALL,可以尝试用UNION ALL
(4.1) or会遍历表就算有索引
(4.2)关于in
(4.2) UNION All
(5) 范索引选择性
(6) 重复或多余索引
3,系统配置与维护优化
(1) 重要的一些变量
(2) Fds optimize,Analyze,check,repair维护操作
(3) 表结构的更新与维护
第四部分:图说mysql查询执行流程
来源: http://blog.csdn.net/nightelve/article/details/17590173