Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

MysqlÖ®EXPLAINÏÔʾusing filesort

EXPLAIN ÊÇmysql½âÊÍselect²éѯµÄÒ»¸ö¹Ø¼ü×Ö,¿ÉÒԺܷ½±ãµÄÓÃÓÚµ÷ÊÔ
Óï·¨¸ñʽÈçÏÂ
EXPLAIN tbl_name
»òÕß:
EXPLAIN SELECT select_options
EXPLAIN Óï¾ä¿ÉÒÔ±»µ±×÷ DESCRIBE µÄͬÒå´ÊÀ´Óã¬Ò²¿ÉÒÔÓÃÀ´»ñȡһ¸öMySQLÒªÖ´ÐÐµÄ SELECT Óï¾äµÄÏà¹ØÐÅÏ¢¡£
EXPLAIN tbl_name Óï·¨ºÍ DESCRIBE tbl_name »ò SHOW COLUMNS from tbl_name Ò»Ñù¡£
µ±ÔÚÒ»¸ö SELECT Óï¾äǰʹÓùؼü×Ö EXPLAIN ʱ£¬MYSQL»á½âÊÍÁ˼´½«ÈçºÎÔËÐиà SELECT Óï¾ä£¬ËüÏÔʾÁ˱íÈçºÎÁ¬½Ó¡¢Á¬½ÓµÄ˳ÐòµÈÐÅÏ¢¡£
ÒÔÏÂÐÅϢΪÒýÓÃ:
ÔÚexplainÎÒÃÇËùʹÓõÄsqlµÄʱºò£¬¾­³£»áÓöµ½using filesortÕâÖÖÇé¿ö£¬Ô­ÒÔΪÊÇÓÉÓÚÓÐÏàͬÁÐÖµµÄÔ­ÒòÒýÆð£¬½á¹û×òÌì¿´µ½¹«Ë¾µÄÒ»¸ösql£¬¸úͬÊÂÌÖÂÛÁËϼÓÉÏ×Ô¼ºÓÖ×öÁËһЩ²âÊÔ£¬Í»È»·¢ÏÖ×Ô¼ºÔ­À´µÄÏë·¨ÊÇ´íÎóµÄ¡£
Ê×ÏÈ£¬Ö»ÓÐÔÚorder by Êý¾ÝÁеÄʱºò²Å¿ÉÄÜ»á³öÏÖusing filesort£¬¶øÇÒÈç¹ûÄã²»¶Ô½øÐÐorder byµÄÕâÒ»ÁÐÉèÖÃË÷ÒýµÄ»°£¬ÎÞÂÛÁÐÖµÊÇ·ñÓÐÏàͬµÄ¶¼»á³öÏÖusing filesort¡£Òò´Ë£¬Ö»ÒªÓõ½order by µÄÕâÒ»Áж¼Ó¦¸ÃΪÆä½¨Á¢Ò»¸öË÷Òý¡£
Æä´Î£¬ÔÚÕâ´Î²âÊÔÖУ¬Ê¹ÓÃÁËÒ»¸öÉÔ΢Óе㸴ÔÓµÄÀý×ÓÀ´ËµÃ÷Õâ¸öÎÊÌ⣬ÏÂÃæÏêϸÓÃÕâ¸öÀý×Ó˵һÏ£º
SELECT * from DB.TB WHERE ID=2222 AND FID IN (9,8,3,13,38,40) ORDER BY INVERSE_DATE LIMIT 0, 5
ÀïÃæ½¨Á¢µÄË÷ÒýΪһ¸öÈýÁеĶàÁÐË÷Òý£ºIDX£¨ID,FID ,INVERSE_DATE£© ¡£INVERSE_DATEÕâ¸öÊÇʱ¼äµÄ·´ÏòË÷Òý¡£
¶ÔÓÚÕâ¸ösqlÎÒµ±Ê±×ʼÈÏΪӦ¸ÃÊǸöÓÅ»¯ºÃµÄ״̬£¬Ó¦¸ÃûÓÐʲôç¢Â©ÁË£¬½á¹ûÒ»explain²Å·¢ÏÖ¾¹È»³öÏÖÁË£ºUsing where; Using filesort¡£
ÎªÊ²Ã´ÄØ£¬ºóÀ´¾­¹ý·ÖÎö²ÅµÃÖª£¬Ô­À´ÔÚ¶àÁÐË÷ÒýÔÚ½¨Á¢µÄʱºòÊÇÒÔB-Ê÷½á¹¹½¨Á¢µÄ£¬Òò´Ë½¨Á¢Ë÷ÒýµÄʱºòÊÇÏȽ¨Á¢IDµÄ°´Ë³ÐòÅŵÄË÷Òý£¬ÔÚÏàͬIDµÄÇé¿öϽ¨Á¢FID°´ ˳ÐòÅŵÄË÷Òý£¬×îºóÔÚFID ÏàͬµÄÇé¿öϽ¨Á¢°´INVERSE_DATE˳ÐòÅŵÄË÷Òý£¬Èç¹ûÁÐÊý¸ü¶àÒÔ´ËÀàÍÆ¡£ÓÐÁËÕâ¸öÀíÂÛÒÀ¾ÝÎÒÃÇ¿ÉÒÔ¿´³öÔÚÕâ¸ösqlʹÓÃÕâ¸öIDXË÷ÒýµÄʱºòÖ»ÊÇÓÃÔÚÁËorder by֮ǰ£¬order by INVERSE_DATE ʵ¼ÊÉÏÊÇusing filesort³öÀ´µÄ¡£¡£º¹ËÀÁË¡£¡£Òò´ËÈç¹ûÎÒÃÇÒªÔÚÓÅ»¯Ò»ÏÂÕâ¸ösql¾ÍÓ¦¸ÃΪËü½¨Á¢ÁíÒ»¸öË÷ÒýIDX£¨ID,INVERSE_DATE£©£¬ÕâÑù¾ÍÏû³ýÁËusing filesortËÙ¶ÈÒ²»á¿ìºÜ¶à¡£ÎÊÌâÖÕÓÚ½â¾öÁË¡£


Ïà¹ØÎĵµ£º

MySQL ÃüÁîÐÐ ÖÐÎÄÂÒÂë

Óöµ½Ò»¸öÎÊÌâÊÇÔÚMySQLÃüÁîÐвåÈëÖÐÎÄÊý¾Ý»òÕß²éѯÖÐÎÄÊý¾Ýʱ³öÏÖÂÒÂ룬»òÕßÏÔʾ²»¶Ô¡£
 
ÔÚÃüÁîÐÐÊäÈë:show variables like ‘character_set_%’;
 
²é¿´µ±Ç°ÅäÖõıàÂ룻
 
 
ÔÚÃüÁîÐÐÊäÈë :set names utf8;
ÔòµÈͬÓÚ
set character_set_client=utf8;
set character_set_results ......

¹ØÓÚMySQLµÄÂýÈÕÖ¾·ÖÎö¹¤¾ß

½ñÌìÎÒÃÇ¿´¿´¹ØÓÚMySQLÂýÈÕÖ¾µÄÔĶÁ¡£
ÎÒÃÇÖªµÀ£¬Èç¹ûÎÒÃǵÄÓï¾ä²»¹»ÓÅ»¯£¬ÄÇôÊ×ÏÈMySQLµÄÂýÈÕÖ¾ÊǽøÒ»²½ÓÅ»¯µÄÀëÏßÖ¤¾Ý£¬ËäÈ»ÀïÃæÓкÃ
¶à“αÂýÓï¾ä”£¡
ÏȲ»ËµÔõôÓÅ»¯£¬Èç¹ûÄãµÄÈÕÖ¾ÓÐÒ»ÌõÓï¾ä¶ÄסÁË£¬ÄÇô»áÓв»¼ÆÆäÊýµÄÂýÓï¾äÌî³äµ½MySQLµÄÂúÈÕÖ¾ÀïÃæ¡£ÄÇôÊ×ÏÈÌáÁ¶³öÕâЩÓï
¾ä¾Í·Ç³£Í·ÌÛ¡£
½ñÌìÖ÷Òª½ ......

ÐÞ¸ÄMYSQLµÄinnodb_log_file_sizeµ¼ÖµÄMYSQL±ÀÀ£


ÕâÁ½ÌìÕýÔÚ²âMYSQLµÄÐÔÄÜ£¬°´ÕÕMYSQLÎĵµÖÐÍÆ¼öµÄÉèÖã¬ÐÞ¸ÄÁ˼¸¸öϵͳ±äÁ¿
innodb_buffer_pool_size=1G
innodb_log_file_size=250M
innodb_log_buffer_size=8M
½á¹ûMYSQL±ÀÁË¡£mysql¿Í»§¶ËÄܵǼ£¬µ«Ö»ÒªÖ´ÐÐÈκÎÃüÁmysqldÁ¢¿Ì±Àµô¡£
¿ªÊ¼»¹ÒÔΪÊÇinnodb_buffer_pool_sizeµÈ¼¸¸ö²ÎÊýÉèµÃÌ«´óÁË£¬¿ÉÊǵ÷ÕûÁ˼¸´Î¶ ......

MYSQLÓÅ»¯ÐĵÃ

²éѯÊÇÊý¾Ý¿â¼¼ÊõÖÐ×î³£ÓõIJÙ×÷¡£²éѯ²Ù×÷µÄ¹ý³Ì±È½Ï¼òµ¥£¬Ê×ÏÈ´Ó¿Í»§¶Ë·¢³ö²éѯµÄSQLÓï¾ä£¬Êý¾Ý¿â·þÎñ¶ËÔÚ½ÓÊÕµ½Óɿͻ§¶Ë·¢À´µÄSQLÓï¾äºó£¬ Ö´ÐÐÕâÌõSQLÓï¾ä£¬È»ºó½«²éѯµ½µÄ½á¹û·µ»Ø¸ø¿Í»§¶Ë¡£ËäÈ»¹ý³ÌºÜ¼òµ¥£¬µ«²»Í¬µÄ²éѯ·½Ê½ºÍÊý¾Ý¿âÉèÖ㬶ԲéѯµÄÐÔÄܽ«»áÓкÜÔÚµÄÓ°Ïì¡£
Òò´Ë£¬±¾ÎľÍÔÚMySQLÖг£ÓõIJéѯÓÅ»¯¼¼Êõ½ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ