mysql explainÖеÄusing filesort
Using filesort±íʾÔÚË÷ÒýÖ®Í⣬ÐèÒª¶îÍâ½øÐÐÍⲿµÄÅÅÐò¶¯×÷¡£µ¼Ö¸ÃÎÊÌâµÄÔÒòÒ»°ãºÍorder byÓÐÕßÖ±½Ó¹ØÏµ£¬Ò»°ã¿ÉÒÔͨ¹ýºÏÊʵÄË÷ÒýÀ´¼õÉÙ»òÕß±ÜÃâ¡£
explain SELECT * from table_item WHERE user_id = 2 ORDER BY item_id LIMIT 0, 5
user_id ºÍ item_id ·Ö±ð½¨Á¢Ò»¸öË÷Òý£¬¶Ô´ËÓï¾äMySQLÑ¡ÔñÁË user_idË÷Òý£¬ÄÇô item_id µÄË÷ÒýûÓÐÆðµ½ÈκÎÓô¦¡£µ±ÅÅÐòʱ¼Ç¼Êý½Ï¶à£¬ÄÚ´æÖеÄÅÅÐò bufferÂúÁË£¬Ö»ÄÜ Using filesort ½øÐÐÍⲿÅÅÐò¡£
½â¾ö·½Ê½Îª¶ÔÕâÁ½Áн¨Á¢×éºÏË÷Òý¡£
explain SELECT * from table_item WHERE user_id = 2 and user_age > 20 ORDER BY item_id LIMIT 0, 5
½¨Á¢×éºÏË÷Òý£¨user_id, user_age, item_id£©£¬¿´ËƷdz£ÍêÃÀ¡£µ«ÓÉÓÚuser_age¹æÔò²»ÊÇÈ·¶¨Öµ£¬Ê¹ÓøÃ×éºÏË÷ÒýµÄ»°Êµ¼ÊÉÏÐèÒªÏȰ´Ë÷ÒýÕÒ³öÒ»¸ö¸öuser_ageÏµĶ«Î÷ºóÔÙ¶ÔÆä½øÐÐÅÅÐò£¬ÈÔÈ»»áfilesort¡£
½â¾ö·½Ê½ÊÇʹÓÃ×éºÏË÷Òý£¨user_id, item_id£©£¬¶ÔÅÅÐòºÃµÄitem_idÔÙ¹ýÂ˵½²»Âú×ãuser_age > 20µÄÌõÄ¿£¬²»»á³öÏÖfilesort¡£
explain SELECT * from table_item WHERE user_id = 2 ORDER BY item_attr desc, item_id LIMIT 0, 5
½¨Á¢ÁË×éºÏË÷Òý£¨user_id, item_attr, item_id)£¬ÒòΪitem_attrÊǽµÐò¶øitem_idÊÇÉýÐò£¬´Ó¶øÈÔÈ»ÐèÒªÍⲿÅÅÐò¡£
Èç¹ûitem_attrºÍitem_id¶¼ÊÇÉýÐò»òÕß¶¼ÊǽµÐò£¬Ôò²»»á³öÏÖfilesort£»½¨Á¢×éºÏË÷Òý£¨user_id, item_attr desc, item_id)ÏÖÏóÒÀ¾É¡£
Mysql5.1ÔÚÏßÎĵµ“13.1.4. CREATE INDEXÓï·¨”ÖÐÌáµ½£º“Ò»¸öindex_col_name¹æÔ¼¿ÉÒÔÒÔASC»òDESCΪ½áβ¡£ÕâЩ¹Ø¼ü´Ê½«À´¿ÉÒÔÀ©Õ¹£¬ÓÃÓÚÖ¸¶¨µÝÔö»òµÝ¼õË÷ÒýÖµ´æ´¢¡£Ä¿Ç°£¬ÕâЩ¹Ø¼ü´Ê±»·ÖÎö£¬µ«ÊDZ»ºöÂÔ£»Ë÷ÒýÖµ¾ùÒÔµÝÔö˳Ðò´æ´¢¡£”
¿ÉÒÔ¿´³öÎÞ·¨Í¨¹ýÐÞ¸ÄË÷ÒýÀ´±ÜÃâÕâ¸öfilesort£¬Ö»ÄÜÊÇÈç¹û¿ÉÄܵϰÐ޸IJéѯµÄÅÅÐòÌõ¼þ¡£
Ïà¹ØÎĵµ£º
1.myisam±í²»Ö§³ÖÍâ¼ü£¬innodb²ÅÖ§³ÖÍâ¼ü
2.mysqlÍâ¼üµÄÁÐÀàÐͺÍÖ÷±íÖÐÏàÓ¦µÄÖ÷¼üÁÐÀàÐͱØÐëÒ»Ö£¬¼´ÀàÐÍÒ»Ö¡¢³¤¶ÈÒ»Ö£¬·ñÔò»á±¨´í¡£ERROR 1005: Can't create table (errno: 150)
3.ÔÚÒ»¸öÊý¾Ý¿âÖÐÍâ¼üÃû×Ö²»ÄÜÖØ¸´£¬·ñÔò»á±¨ERROR 1005: Can't create table 'XXXXXX' (errno: 121) ......
1.ÐÞ¸ÄmysqlµÄĬÈϱàÂëΪgbk£ºÐÞ¸Ämy.initÎļþÖеģº[client]ºÍ[mysqld]ϵÄdefault-character-set=gbk£»
2.²é¿´mysqlÊý¾Ý¿âµÄ±àÂ룺show variable like 'character%';»òstatus
3.²é¿´Êý¾Ý¿â±íµÄ±àÂ룺show create table ±íÃû£»
4.ÐÞ¸ÄÊý¾Ý¿âµÄ±àÂ룺ALTER DATABASE `database_name` DEFAULT CHARACTER SET gbk COLLATE ......
ÔÚMySQL 3.23.44°æ±¾ºó£¬InnoDBÒýÇæÀàÐ͵ıíÖ§³ÖÁËÍâ¼üÔ¼Êø¡£
Íâ¼üµÄʹÓÃÌõ¼þ£º
1.Á½¸ö±í±ØÐëÊÇInnoDB±í£¬MyISAM±íÔÝʱ²»Ö§³ÖÍâ¼ü£¨¾Ý˵ÒÔºóµÄ°æ±¾ÓпÉÄÜÖ§³Ö£¬µ«ÖÁÉÙĿǰ²»Ö§³Ö£©£»
2.Íâ¼üÁбØÐ뽨Á¢ÁËË÷Òý£¬MySQL 4.1.2ÒÔºóµÄ°æ±¾ÔÚ½¨Á¢Íâ¼üʱ»á×Ô¶¯´´½¨Ë÷Òý£¬µ«Èç¹ûÔÚ½ÏÔçµÄ°æ±¾ÔòÐèÒªÏÔʾ½¨Á¢£»
3.Íâ¼ü¹ØÏµµÄÁ½¸ö± ......
Èç¹ûjsp²åÈëmysqlÊý¾Ý¿â³öÏÖÂÒÂ룬mysqlÊý¾Ý¿â°²×°Ê±±àÂëÉèΪutf8£¬ÔÚÖ´ÐвåÈëÓï¾äµÄÇ°Ãæ£¨½ô°¤×ÅÖ´ÐÐÓï¾ä£©Ìí¼ÓתÂëÓï¾ä£ºString na="";
try{
&nbs ......
ÔÎĵØÖ·£ºhttp://blog.csdn.net/wenjava/archive/2009/06/11/4261299.aspx
ÔÚʹÓÃMySQL֮ǰ£¬ÐèÒª½¨Á¢Êý¾Ý¿âµÄ»·¾³À´´´½¨Êý¾Ý±í£¬Ê×ÏÈÎÒÃÇÐèÒª°²×°¸ÃÊý¾Ý¿â»·¾³£¬¼´MySQL¡£
1¡¢ÏÂÔØMySQL
MySQLµÄ¹Ù·½ÍøÕ¾ÊÇhttp://www.mysql.org/£¬Èçͼ2-9Ëùʾ£º
ͼ2-9 MySQL¹Ù·½ÍøÕ¾
µ±Ç°Îȶ¨°æ±¾Îª5.1£¬ÎÒÃÇÑ¡ÓÃMySQL 5.1.22× ......