MySql
2020-11-10 18:37:27 0 举报
AI智能生成
mysql
作者其他创作
大纲/内容
索引最佳实践
全值匹配
最左前缀法则
不在索引列上做任何操作(计算、函数、(自动or手动)类型转换),会导致索引失效而转 向全表扫描
存储引擎不能使用索引中范围条件右边的列
尽量使用覆盖索引(只访问索引的查询(索引列包含查询列)),减少select *语句
.mysql在使用不等于(!=或者<>)的时候无法使用索引会导致全表扫描
is null,is not null 也无法使用索引
.like以通配符开头('$abc...')mysql索引失效会变成全表扫描操作
字符串不加单引号索引失效
.少用or或in,用它查询时,mysql不一定使用索引
范围查询优化
常见sql深入优化
根据自增且连续的主键排序的分页查询
根据非主键字段排序的分页查询
关联字段加索引
小标驱动大表
in小和exsits大优化
存储引擎
MyISAM
非聚集
InnoDB
B+Tree
聚集索引-叶子节点包含了完整的数据记录
非主键索引叶子节点存储的是主键的值(一致性和节省存储空间)
索引最左前缀原理
支持事务
ACID
原子性(Atomicity)
一致性(Consistent)
隔离性(Isolation)
持久性(Durable)
并发事务处理带来的问题
更新丢失
脏读
不可重读
幻读
事务隔离级别
读未提交
读已提交
可重复读
串行化
支持行级锁
system > const > eq_ref > ref > range > index > ALL
优化总结
子主题
0 条评论
下一页