MySQL调优-----MySQL执行原理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

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');


总结

暂时就这些

相关推荐
心中有你02142 分钟前
Java实现Dijkstra最短路径算法(邻接表 + 优先队列)
java·数据库·算法
龙亘川17 分钟前
综合素质评价业务建模:从过程性评价到成长档案全链路闭环
数据库·智慧城市·数据可视化
数据库小组23 分钟前
NineData 实战教程:MySQL 5.5 数据迁移同步到 MySQL 8.0(跨版本升级)
数据库·mysql·mysql优化·数据库开发·数据库迁移·版本升级·数据复制
zhangjw341 小时前
1-5 PostgreSQL 数据类型全集:基础类型、字符串、数值、时间类型
数据库·postgresql
王中阳Go1 小时前
5.27 分钟干完后端和全部测试:一场三小时笔试的五个失分点,四个不在代码上
大数据·数据库·人工智能·后端·大语言模型
cnskylee2 小时前
【MySQL】麒麟V10 SP3系统安装MySQL-Commercial-8.0.46
数据库·mysql·adb
梦幻通灵2 小时前
修改MySQL数据库递增序列【持续更新】
数据库·mysql
liminla!2 小时前
SQL 从入门到进阶:语法速查与实战练习(完整优化版)
数据库·sql·算法
tongyiixiaohuang2 小时前
供应商主数据同步实战:从易快报到金蝶云星空的单一策略落地
java·网络·数据库
大侠归来3 小时前
常用 MySQL 分库分表方案详解
数据库·mysql