提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录
前言
mysql调优的笔记
一、Intersection合并
多个二级索引合并与不合并的区别就在于,先回表还是先合并其他条件。
1.二级索引查询条件必须等值
2.如果是主键,可以是范围
二、Sort-Union合并
查询一个二级索引后排序,再查询一个二级索引排序,两个取并集。(可以是范围,两个都可以是范围)
三、联合索引替代Intersection索引合并(优化方法)
删除掉单独的两个二级索引,增加一个按顺序的两个联合索引。
四、驱动表与被驱动表
驱动表:第一个被执行的表,只会被查询一次
被驱动表:后查询的表,可能会查询多次
如果有一个大表和一个小表,可以让大表充当驱动表,多次查询小表
五、计算成本
IO成本大概是1,cpu成本大概是 0.2
IO成本为1 + n * 1,CPU成本为n*0.2 + 0.01 + n * 0.2。二级索引一次+回表一次查询
查询语句:EXPLAIN format = json SELECT * FROM t_user WHERE address in ('shanghaishi', 'beijingshi');
总结
暂时就这些