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

MySQLÖ®Covering Index hust ei


http://hi.baidu.com/thinkinginlamp/blog/item/a352918fe70d96fd503d925e.html
2009Äê01ÔÂ12ÈÕ ÐÇÆÚÒ» ÏÂÎç 08:35
×÷ÕߣºÀÏÍõ
ÔÚÍøÉÏËæ±ãËÑËÑ£¬¾ÍÄÜÕÒµ½´ó°ÑµÄ¹ØÓÚMySQLÓÅ»¯µÄÎÄÕ£¬²»¹ýÀïÃæºÜ¶à¶¼²»×¼È·£¬Ëµ¸ö³£¼ûµÄ£º
SELECT a from ... WHERE b = ...
Ò»°ãÀ´Ëµ£¬ºÜ¶àÎÄÕÂ»á¸æ½ëÄãÀàËÆÕâÑùµÄ²éѯ£¬²»ÒªÔÚ“a”×Ö¶ÎÉϽ¨Á¢Ë÷Òý£¬¶øÓ¦¸ÃÔÚ“b”ÉϽ¨Á¢Ë÷Òý¡£ÕâÑù×öȷʵ²»´í£¬µ«ÊǺܶàʱºòÕâ²¢²»ÊÇ×î¼Ñ½á¹û¡£ÎªÊ²Ã´ÕâÑù˵£¿ÈÃÎÒÃÇÏÈÀ´·ÖÎöһϲéѯµÄ´¦Àí¹ý³Ì£ºÔÚÖ´Ðвéѯʱ£¬ÏµÍ³»á²éѯ“b”Ë÷Òý½øÐж¨Î»£¬È»ºóÔÙÀûÓô˶¨Î»È¥±íÀï²éѯÐèÒªµÄÊý¾Ý“a”¡£Ò²¾ÍÊÇ˵£¬ÔÚÕâ¸ö¹ý³ÌÖдæÔÚÁ½´Î²éѯ£¬Ò»´ÎÊDzéѯË÷Òý£¬ÁíÒ»´ÎÊDzéѯ±í¡£ÄÇÓÐûÓа취ÓÃÒ»´Î²éѯ¸ã¶¨ÎÊÌâÄØ£¿ÓУ¬¾ÍÊÇCovering Index£¡ËùνCovering Index£¬¾ÍÊÇ˵²»±Ø²éѯ±íÎļþ£¬µ¥¿¿²éѯË÷ÒýÎļþ¼´¿ÉÍê³É¡£¾ßÌåµ½´ËÀýÖоÍÊǽ¨Á¢Ò»¸ö¸´ºÏË÷Òý“b, a”£¬µ±²éѯ½øÐÐʱ£¬Í¨¹ý¸´ºÏË÷ÒýµÄ“b”²¿·ÖÈ¥¶¨Î»£¬ÖÁÓÚÐèÒªµÄÊý¾Ý“a”£¬Á¢¿Ì¾Í¿ÉÒÔÔÚË÷ÒýÀïµÃµ½£¬´Ó¶øÊ¡ÂÔÁ˱í²éѯµÄ¹ý³Ì¡£
Èç¹ûÄãÏëÀûÓÃCovering Index£¬ÄÇô¾ÍҪעÒâSELECT·½Ê½£¬Ö»SElECT±ØÒªµÄ×ֶΣ¬Ç§Íò±ðSELECT *£¬ÒòΪÎÒÃDz»Ì«¿ÉÄܰÑËùÓеÄ×Ö¶ÎÒ»Æð×öË÷Òý£¬ËäÈ»¿ÉÒÔÄÇÑù×ö£¬µ«ÄÇÑù»áÈÃË÷ÒýÎļþ¹ý´ó£¬½á¹û·´µ¹»áŪÇɳÉ×¾¡£
ÈçºÎ²ÅÄÜÈ·ÈϲéѯʹÓÃÁËCovering IndexÄØ£¿ºÜ¼òµ¥£¬Ê¹ÓÃexplain¼´¿É£¡Ö»ÒªÔÚExtraÀï³öÏÖUsing index¾Í˵Ã÷ʹÓõÄÊÇCovering Index¡£
ÖªµÀÁËÒÔÉÏÕâЩ֪ʶ£¬¹À¼Æ¶ÔCoverging IndexµÄÁ˽âÒ²²î²»¶àÁË¡£ÔÙ¾ÙÁ½¸öÀý×Ó£¬Èôó¼ÒÓ¡ÏóÉîµã£º
£¨Ò»£©±ÈÈç˵ÔÚÎÄÕÂϵͳÀïͳ¼Æ×ÜÊýµÄʱºò£¬Ò»°ãµÄ²éѯÊÇÕâÑùµÄ£º
SELECT COUNT(*) from articles WHERE category_id = ...
µ±ÎÒÃÇÔÚcategory_id½¨Á¢Ë÷Òýºó£¬Õâ¸ö²éѯʹÓõľÍÊÇCovering Index¡£
²Î¿¼Îĵµ£ºCOUNT(*) vs COUNT(col)
£¨¶þ£©±ÈÈç˵ÔÚÎÄÕÂϵͳÀï·ÖÒ³ÏÔʾµÄʱºò£¬Ò»°ãµÄ²éѯÊÇÕâÑùµÄ£º
SELECT id, title, content from article ORDER BY created DESC LIMIT 10000, 10;
ͨ³£ÕâÑùµÄ²éѯ»á°ÑË÷Òý½¨ÔÚcreated×ֶΣ¨ÆäÖÐidÊÇÖ÷¼ü£©£¬²»¹ýµ±LIMITÆ«ÒÆºÜ´óʱ£¬²éѯЧÂÊÈÔÈ»ºÜµÍ£¬¸Ä±äһϲéѯ£º
SELECT id, title, content from article
INNER JOIN (
    SELECT id from article ORDER BY created DESC LIMIT 10000, 10
) AS page USING(id)
´Ëʱ£¬½¨Á¢¸´ºÏË÷Òý"created,


Ïà¹ØÎĵµ£º

Ò»¶Î×Ô¶¯±¸·ÝµÄMYSQL±¸·ÝµÄ½Å±¾

     ×î½ü¹«Ë¾×¼±¸Ê¹ÓÃÏîÄ¿¹ÜÀíµÄÍøÕ¾DotProject£¬¹«Ë¾ËäÈ»²»´ó£¬µ«ÊÇÇ£Éæµ½µÄÒµÎñÒ²ÊǺܸ´Ôӵģ¬ËùÒÔÐèÒª¶¨Ê±È¥±£´æÊý¾Ý¿âµÄÐÅÏ¢ÒÔ·ÀÖ¹Êý¾Ý¿â±ÀÀ£»òÕ߯äËûµÄÔ­ÒòÔì³ÉµÄÊý¾ÝËðʧ£¬ÕâÑù¾ÍÐèÒª½øÐÐÊý¾Ý¿âµÄ±¸·Ý¡£
     DotProjectʹÓõÄÊÇMysqlÊý¾Ý¿â£¬±¸·ÝMysqlÊý¾Ý¿âµÄÒ»¸ö±È½ÏºÃµÄ·½·¨¾ÍÊÇ ......

MySQLÓÅ»¯

MySQLÓÅ»¯
ͬʱÔÚÏß·ÃÎÊÁ¿¼ÌÐøÔö´ó£¬¶ÔÓÚ1GÄÚ´æµÄ·þÎñÆ÷Ã÷ÏԸоõµ½³ÔÁ¦ÑÏÖØÊ±ÉõÖÁÿÌì¶¼»áËÀ»ú£¬»òÕßʱ²»Ê±µÄ·þÎñÆ÷¿¨Ò»Ï£¬Õâ¸öÎÊÌâÔø¾­À§ÈÅÁËÎÒ°ë¸ö¶àÔ¡£MySQLʹÓÃÊǺܾßÉìËõÐÔµÄËã·¨£¬Òò´ËÄãͨ³£ÄÜÓúÜÉÙµÄÄÚ´æÔËÐлò¸øMySQL¸ü¶àµÄ±»´æÒԵõ½¸üºÃµÄÐÔÄÜ¡£
°²×°ºÃmysqlºó£¬ÅäÖÆÎļþÓ¦¸ÃÔÚ/usr/local/mysql/share/mysql ......

Mysql´æ´¢¹ý³Ì£¨Î壩——SEQUENCEµÄʵÏÖ

ÔÚ
oracle
ÖУ¬
sequence
Ìṩ¶à±í¶à×ֶοɹ²ÓÃÒ»¸ö²»Öظ´Öµ¡£
Mysql
ÖдæÔÚ×ÔÔöÁУ¬»ù±¾¿ÉÒÔÂú×ã
PK
µÄÒªÇó¡£µ«×ÔÔöÁдæÔÚÏÞÖÆ£º
a.
Ö»ÄÜÓÃÓÚ±íÖеÄÒ»¸ö×ֶΣ¬Ò»ÕŲ»ÄÜͬʱ´æÔÚÁ½¸öÒÔÉϵÄ×ÔÔöÁÐ
;
b.
×ÔÔöÁбØÐë±»¶¨ÒåΪ
key
£¨
PK
»ò
FK
£©
;
c.
×ÔÔöÁв»Äܱ»¶à¸ö±í¹²ÓÃ
;
d.
µ±
insert
Óï¾ä² ......

MySql °²×°½Ì³Ì ʵ¼

×÷ÕߣºÐûÕ×Åô
--------------------------------------------------------------------------------------------------------------------------------------------
½ñÌìÔÚ±¾±¾Éϰ²×°MYSQL£¬ÔÚ°²×°¹ý³Ì³öÏÖÁËÒ»Ð©Ææ¹ÖµÄÎÊÌ⣬Òò´ËÔÚÕâÀï·ÖÏíÕû¸ö°²×°Á÷³ÌÓë´íÎó½â¾ö·½·¨¡£
MySQL°æ±¾£º5.1.40-community
1¡¢ÏÂÔØ°²×°°ü²¢° ......

mysqlÐÔÄÜÖ¸±ê

mysqladmin extended (¾ø¶ÔÖµ)
ÖØµãÈ¥¼àÊÓµÄÖµÓУº
* Slave_running:Èç¹ûϵͳÓÐÒ»¸ö´Ó¸´ÖÆ·þÎñÆ÷£¬Õâ¸öÖµÖ¸Ã÷ÁË´Ó·þÎñÆ÷µÄ½¡¿µ¶È
* Threads_connected:µ±Ç°¿Í»§¶ËÒÑÁ¬½ÓµÄÊýÁ¿¡£Õâ¸öÖµ»áÉÙÓÚÔ¤ÉèµÄÖµ£¬µ«ÄãÒ²ÄܼàÊÓµ½Õâ¸öÖµ½Ï´ó£¬Õâ¿É±£Ö¤¿Í»§¶ËÊÇ´¦ÔÚ»îԾ״̬¡£
* Threads_running:Èç¹ûÊý¾Ý¿â³¬¸ººÉÁË£¬Ä㽫»áµÃµ½Ò»¸ö ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ