二十八、优化数据库访问

101 阅读1分钟

一、是否查询了不必要的数据

查询性能低下最基本的原因是访问的数据太多,大部分抵消的查询都可以通过减少访问数据量的方式进行优化。下面是针对常见四种问题的优化方案:

问题优化方案
查询不需要的记录绝大多数查询都需要使用 limit 来限制返回的记录数
多表关联时返回全部列在多表连接查询中更加不能使用 SELECT *
总是取出全部列SELECT * 会返回不需要的列从而增加网络开销,而且失去了覆盖索引的可能性
重复查询相同数据不断重复执行相同的查询,可以考虑使用缓存

二、是否存在扫描额外的记录

在确定查询只返回需要的数据后,再来看查询是否扫描了过多的数据。在 MySQL 中,衡量查询开销有三个重要的指标:响应时间、返回行数和扫描行数