MySQL中通过EXPLAIN如何分析SQL的执行计划详解_第1页
MySQL中通过EXPLAIN如何分析SQL的执行计划详解_第2页
MySQL中通过EXPLAIN如何分析SQL的执行计划详解_第3页
MySQL中通过EXPLAIN如何分析SQL的执行计划详解_第4页
MySQL中通过EXPLAIN如何分析SQL的执行计划详解_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、般是没有条件或者条件没有使用索引的查询语句K1L索引全一般是查询的字段都有索11十*+|EEU|HULL|39E|1C.0C|Lsirjtsre|吨雹1EX?IATJSELECT*FROMdatallerDEERE阮:i凭=:;+*+1+11+*4+|i-i|sel2c_tsItabls|r-aizitiDns|passibleksys|贮丁|isy12n|ref|cots|ziltsrei|+*+|1|SEELE|zjostzaer|EUI1|id|seisest亚三|table4+|1|SPFLE|2U3taner|NULLSACTEECWffffFROBTCUS1|SPFLE|zusmn

2、s:|NULLrangsFfJXMlf|3GIL&G.Y|2|EUI1|11|IDl.OCILsinjeotbOHi.custanirid.=b.DusszoieridTHERE三血订=1J5KIJ.PHI1LI35csakilauistzoier.arj1;+-+-+1+4+4-4T-+|id|sel2C3typ?|tabls|partiTizns|:釈|pzs3i-letoe半|牲|toe?len11=|ziltirei|Exra1+*-+十-+1十+4-4T-一+|1|SKFLE1|BULL|AU.|PGJHXB.Y|HULL1noi1nil1595|1C.0C|Usirjwtsre|1

3、|SKFLE|BULL:土|iixfkcii肌onerid|idxfcuscansrl-1|2IsaiLla.a.custansrL-l1|1DDJD|KDU1分每列进说明g1十+.一4-4T一一+1表_SH常见的:在MySQL中,我们可以通过EXPLAIN命令获取MySQL如何执行SELE语句的信息,包括在SELE语句执行过程中表如何连接和连接的顺序。下匯类型说明SIMPLEPRIMARUNION简单表,不使用表连接或子查询主查询,即外层的查询NI中的第二个或者后面的查询语句QE子查询中的第一个输出结果集的表(表别名)y表示MySQL在表中找到所需行的方式,或者叫访问类型。常见访问类型如下,

4、从上到下,性能由差到最好:ALL全表扫描index索引全扫描range索引范围扫描非唯一索引扫描唯一索引扫描单表最多有一个匹配行NLL不用扫描表或索引iy,AL表扫描,MySQL遍历全表来找到匹配行EXPLAINSELEEXPLAINSELEEXFLAUSELICI37:-re_idFROMcuztansr;+4卜卜+4+|partial|zype|wsaibls|1电Iie*leuIrtf|f吧|filzzrei|+卜*+4+|idaf:EXFLSiySELICI*FLi更custonsrXKEKEcugtCEi2r_i(l=105HD:jQ3Lim_i吐半鈿id|sel2C3t亚三|tab

5、le|partialztis|;皿|wasibiskeys|Ze*|be?Ice|ief|raws|til金red|ExtiiEXPLAINSELEMEREEXPLAINSELET3Min1vmiiug(O.CC究辟注意这种情况下比较EXPLAINSELEMEREEXPLAINSELEMERE|1|SEFLE|=U3t:tter|MLaLWDU-|KLL|HLLl|ROLL|5H|33.33|Isilfjltei2|H7E71EX?IAESELin*FROMstaii2:-WEEfE-02-13;|id|sel2c_t2|tabls|rititiDns|possiilekzis|煙丁|kzjr

6、Lsn|ief|ro*s|zilterei|I7raEXPLAINSELEMERE使用非唯EXPLAINSELEMERE字段存在普通索引namingJC.OCse;EXPLAINSELEMEREEXPLAIHSILECT*FRCtidu-ldihtWHEKEac.erG_id=10?Ii-d|tnJ&le|partitid口拆|type|口n-Baible_kKys|key1|3IBFLZ1-dx_rk_sc-orid|1t1-!1-F1Nkey_lenIreEIrawIfiltered|Enrtra.I|coast|1|lGQ.QD|PULL|1rowuiaujLWAZ1U.E.IT(DiU

7、Oma)ref类型还经常会出现在join操作中:customer、payment表关联查询,关联字段customercustomer_id住键),paymentcustomer_id(非唯索引)。表关联查询时必定会有一张表进行全表扫描,此表一定是几张表中记录行数最少的表,然后再通过非唯一索引寻找其他关联表中的匹配行,以此达到表关联时扫描行数最少。opzi1SELECT比UEtQfr:ipa皿匸;+因为customer、payment两表中customer表的记录行数最少,所以custom引寻找匹配行。film、filmext表关联查询和上一条所说的基本一致,只不过关联条件由非唯一索引变成了主键

8、。EXPLAINSELECT*FROMfilmfilmINNERJOINfilm_textfilm_textONfilm.filmd=film_text.filmd;6、typeconst/sa(J2dEX?ADSELM*FROM:iknfillI3HERJ3IBfiln_teztfiliates-Ml:iki.f订见辺=:ihijm.filji_idr+4+4+|i-i|selsctypw|tabls|partiTian3|tpe|pa2ibls題ys|k科|helen|戈f+4+d+|1|SKFLE|HULL|ILL|PfllXJRY|HULL|1|SKFLEJzUjTIBULL|=;rs

9、=|PHISRY单最多行起来迅速,所以I|rtfifs|zilterz-i|Esra+IHULL|KUH|IDlC|1C0-CC|TOIL被优化器前理1+4根据主键primarykey进行的查询:EXPLAINSELECT*FROMcustomerWHEREcustomer_id=10;根据唯一索引uniqueinI131EXFUnSELICI*FFLIMcustonsrKfEHcu2tan-r_i-i=10;4+4+d+414+d+|id|sel2C3_tz|tabls|Mitiizns|二印e|pD33itle已餌|ke|telen|rz|raws|filsred|Exra|十+1+4+F

10、RIWL1|PEI55BY|2|c:nst|1|1DE.0C|皿|+1+4+EXPLAINSELECT*FROM|:4i3t3nLe:-|MEL+41rawin3st,1uazning:P.i兀克辟|1|SrtFIE|PEI披|2+4-砖山MIEBl&BHcii53cmeriddOHICOEIOXLk_mil(eiBil|;Qu罔札Cr:ws.10sec)Ee3ids:CDupliess:CamirLgs:0IFieLiDEEcusTcner;+|I护巴|Tull|Ke?|De=3111l+|smalliD3(i|LDsigned|10|EEZ|TO1|;in?in-:3:ilmsisiiei

11、|10|江|EHL17azctai:i|io|raiI卞卄皿汀7切ITHIVW.Im.i.|nss2iier_id|3tar2_id|first_n2ifiI1删-nama7、type=NULL,MyS|autaircrsientEXPIAnSELiaFRtMstansrNHF1E已跑订=HAS.Y.mrakila:jQ3tzaer.orj1;+*+1+|id|tabls|rrtitiziis|pzssiMetoe|key+*+|1|SKFLE|zjostzner|即11Q访问或者直接就能够得到1rzwin1umiiig;C.OC3ez)+144人+|kei_len|rsz|tzhs|f订7s

12、:ed|Extn|+1+414k_aml|血订|1S3|匚步|1|10C.00|ILL1|+14414my灯ql、mynqL、EXCLAIM&ELECI1FALMdljMlEEE1;I!日IMlecfc_ti?e|tableIpacItypeI1|3IHFLI|HULL|HULL|MILL|PULLkery_leji|refIrawIiltend|EfrtEat-t-t-|HUI.L|MTLL|鼻44-WXL|PdEHlilesus31ZDV工L冊1X1口c*(ObDIND|ssie表示匿询可能使用的索引e实际使用的索引e使用索引字段的长度使用哪个列或常数与e起从表中选择行。扫描行的数量i存r

13、引d:返回的数据在se层过滤后,剩下多少满足查询的记录数量的比例百分比x执行情况的说明和描述,包含不适合在其他列中显示但是对执行计划非常重要的额外信息最主要的有一下三种:usingaindex表示索引覆盖,不会回表查询Usingee表示进行了回表查询UsingIndexndi表On进行了I优化Usinges表示需额外排序操作不能通过索引顺序达到排序效果什么是I?引入了IndexndiinshdW的特性,进一步优化了查询。sd表示操作下放,某些情况下的条件过滤操作下放到存储引擎。Ienendeseidseid在版本之前:id优化器首先使用复合索引idxen过滤出符合条件ende的记录,然后根据复合索引idxen回表获取记录,最终根据条件seid过滤出e最后的查询结果(在服务层完成)。在版本之后:使用了I来进一步优化查询,在检索的时候,把条件seid也推到存储引擎层完成过滤,这样能够降低不必要的访问。x为usingindexndi就表示使用了I优化。EXFUESELICI*FFUfflrentaLPHESIr2D3al_Qite=,20L5-C5-25,勿T:3er_id=3DLKKDciLS3(ner_i(i=4LiO;+*+1十+*十+|id|sel2C7_ts|tabls|pirrLtians|bey|toelen|rsf|:tws|

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论