3.Mysql查询性能优化

一、Mysql性能优化

前面我们讲到了,索引的类型,如何设计最优的库表结构。如何建立最好的索引。这些对于高性能来说是必不可少的。但这些还不够, 我们还需要合理的设计查询语句。如果查询写的很糟糕,即使库表结构再合理、你全加上索引,也无法实现高性能。

二、Mysql慢查询

2.1 什么是慢查询

慢查询日志,顾名思义,就是查询花费了大量时间的 sql,是指查询的sql超过了mysql中 long_query_time参数设置的时间阈值。该参数能为SQL语句的优化带来很好的帮助。默认情况下,慢查询日志是关闭的状态。如果要使用慢查询日志功能,首先要开启慢查询日志功能。如何开启呢?我们稍候来说。

2.1.1 慢查询基础 - 优化数据访问

查询性能低下最基本的原因是访问的数据太多。大部分性能低下的查询都可以通过减少访问的数据量的方式进行优化。对于低效的查询,一般可以通过下面的步骤来分析和优化:

  1. 确认应用程序是否在检索大量超过需要的数据。通常意味着访问了太多的行,有时候也可能是访问了太多的列。
  2. 确认MySql服务器层是否在分析大量超过需要的数据行。

2.1.1.1 请求了不需要的数据?

有些查询会请求超过我们实际需要的数据,然后这些多余的数据会被应用程序丢弃。这会给MySql服务器带来额外的负担,并增加网络开销,另外也会消耗应该服务器的CPU和内存资源,比如:

  1. 查询不需要的记录

一个常见

你可能感兴趣的:(mysql,mysql,数据库,性能优化)