sql优化

sql性能优化的手段

一、首先是看执行计划

1、关注type字段

all < index < index range < ref < eq_ref< system/const 分别对应全表扫描、索引扫描、索引范围、非唯一索引、唯一索引、主键常量

索引优化,建立索引,将全表扫描变为索引

2、关注key字段

有哪些可能的索引,关注执行计划选择了哪个索引,看索引是否可以继续优化

3、关注extra字段

出现了filesort、临时表 一般是出现了子查询,group by,order by

sql 中避免出现子查询、group by,order by 这些操作都会导致数据库进行计算,在大数据量时出现性能问题。

二、在表字段上进行优化

如果有大字段,考虑将表字段拆分,单行数据大,会导致 b+树层级变高。还有扫描的页变多

三、分表限制数据量

如果数据条数多,很容易出现性能问题,因为不能保证所有的sql都完全走索引。考虑分库分表。

四、提前计算,存储

将需要临时计算的值,提前计算好存储下来,建立索引。


已发布

分类

来自

标签:

评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注