MySQL的性能优化方法

  介绍

本篇内容介绍了“MySQL的性能优化方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

<节> <节> <节> <节> <节> <强>解释有什么用?   ,,,

MySQL提供了一个解释命令,它可以对选择语句进行分析,并输出选择执行的详细信息,以供开发人员针对性优化。

<节> <节> <节> <节> <节> <强>解释如何用?   ,,,

解释命令用法十分简单,在选择语句前加上解释就可以了,例如:

 MySQL的性能优化方法

为了演示解释,我们先创建一张表xttblog。 MySQL的性能优化方法”>为了演示解释,我们先创建一张表xttblog。</p> <节> <节> <节> <节> <节> <强>解释命令的输出内容</强>
  ,,,</节> </节> </节> </节> </节> <p>解释命令输出的格式大致如下:<br/> </p> <p> <img src=

id:选择查询的标识符。每个选择都会自动分配一个唯一的标识符。对于每个字段的解释如下:

<李>

select_type:选择查询的类型。李李

<>

表:查询的是哪个表

<李>

分区:匹配的分区

<李>

类型:加入类型

<李>

possible_keys:此次查询中可能选用的索引

<李>

键:此次查询中确切使用到的索引。李李

<>

裁判:哪个字段或常数与关键一起被使用

<李>

行:显示此查询一共扫描了多少行。这个是一个估计值。李李

<>

过滤:表示此查询条件所过滤的数据的百分比

<李>

额外:额外的信息

每个字段的含义我们可能都了解了,但是每个字段都对应好几个值。那么每个值又代表什么意思呢?下面我们针对每个关键字代表什么意思,再来单独解释一下!

<节> <节> <节> <节> <节> <强> select_type   ,,,

select_type表示了查询的类型,它的常用取值有:

<李>

简单:表示此查询不包含工会查询或子查询

<李>

主:表示此查询是最外层的查询

<李>

联盟:表示此查询是联盟的第二或随后的查询

<李>

依赖工会:工会中的第二个或后面的查询语句,取决于外面的查询

<李>

联盟结果:联盟的结果

<李>

子查询:子查询中的第一个选择

<李>

相关子查询:子查询中的第一个选择、取决于外面的查询。即子查询依赖于外层查询的结果

最常见的查询类别应该是简单的了,比如当我们的查询没有子查询,也没有工会查询时,那么通常就是简单的类型。

<节> <节> <节> <节> <节> <强>表   ,,,

表,表示查询涉及的表或衍生表.xttblog代表的就是xttblog表。你们;union1, 2比;代表的就是,第一条和第二条查询出来的结果的合集。

<节> <节> <节> <节> <节> <强>分区   ,,,

分区:NULL。代表的是是否使用了分区,空表明没有分区。

<节> <节> <节> <节> <节> <强> 强类型   ,,,

类型字段比较重要,它提供了判断查询是否高效的重要依据依据。通过类型字段,我们判断此次查询是全表扫描还是索引扫描等。

类型常用的取值有:

<李>

系统:表中只有一条数据。这个类型是特殊的常量类型

<李>

const:针对主键或唯一索引的等值查询扫描,最多只返回一行数据.const查询速度非常快,因为它仅仅读取一次即可

<李>

eq_ref:此类型通常出现在多表的加入查询,表示对于前表的每一个结果,都只能匹配到后表的一行结果。并且查询的比较操作通常是=⒉檠式细?/p> <李>

裁判:此类型通常出现在多表的加入查询,针对于非唯一或非主键索引,或者是使用了最左前缀规则索引的查询

<李>

范围:表示使用索引范围查询,通过索引字段范围获取表中部分数据记录。这个类型通常出现在=& lt;,祝辞,=& lt;, & lt;=零,& lt;=祝辞,之间,在()操作中。当类型是范围时,那么解释输出的ref字段为空,并且key_len字段是此次查询中使用到的索引的最长的那个

MySQL的性能优化方法