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éѯµÄÅÅÐòÌõ¼þ¡£
Ïà¹ØÎĵµ£º
MySQL´æ´¢¹ý³ÌµÄ²ÎÊýÓÃÔÚ´æ´¢¹ý³ÌµÄ¶¨Ò壬¹²ÓÐÈýÖÖ²ÎÊýÀàÐÍ,IN,OUT,INOUT,ÐÎʽÈ磺
CREATE PROCEDURE([[IN |OUT |INOUT ] ²ÎÊýÃû Êý¾ÝÀàÐÎ...])
1¡¢IN ÊäÈë²ÎÊý:±íʾ¸Ã²ÎÊýµÄÖµ±ØÐëÔÚµ÷Óô洢¹ý³Ìʱָ¶¨£¬ÔÚ´æ´¢¹ý³ÌÖÐÐ޸ĸòÎÊýµÄÖµ²»Äܱ»·µ»Ø£¬ÎªÄ¬ÈÏÖµ
2¡¢OUT Êä³ö²ÎÊý:¸ÃÖµ¿ÉÔÚ´æ´¢¹ý³ÌÄÚ²¿±»¸Ä±ä£¬²¢¿É·µ»Ø
3¡¢I ......
ʹÓÃmysqlÖеÄwith rollup¿ÉÒԵõ½Ã¿¸ö·Ö×éµÄ»ã×ܼ¶±ðµÄÊý¾Ý£º
±íÈçÏ£º
CREATE TABLE `test3` (
`id` int(5) unsigned NOT NULL AUTO_INCREMENT,
`name1` varchar(10) DEFAULT NULL,
`name2` varchar(10) DEFAULT NULL,
`cnt` int(2) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGI ......
net start mysql //Æô¶¯mysql·þÎñ
net stop mysql //Í£Ö¹mysql·þÎñ
mysqld-nt --remove //ɾ³ýmysqlºǫ́·þÎñ
mysqld-nt --install //°²×°mysqlºǫ́·þÎñ
mysqld-nt¿ÉÒÔ»»³Émysqld-max-nt»òmysqld
mysql -u root ......
ÔÚMySQL 3.23.44°æ±¾ºó£¬InnoDBÒýÇæÀàÐ͵ıíÖ§³ÖÁËÍâ¼üÔ¼Êø¡£
Íâ¼üµÄʹÓÃÌõ¼þ£º
1.Á½¸ö±í±ØÐëÊÇInnoDB±í£¬MyISAM±íÔÝʱ²»Ö§³ÖÍâ¼ü£¨¾Ý˵ÒÔºóµÄ°æ±¾ÓпÉÄÜÖ§³Ö£¬µ«ÖÁÉÙÄ¿Ç°²»Ö§³Ö£©£»
2.Íâ¼üÁбØÐ뽨Á¢ÁËË÷Òý£¬MySQL 4.1.2ÒÔºóµÄ°æ±¾ÔÚ½¨Á¢Íâ¼üʱ»á×Ô¶¯´´½¨Ë÷Òý£¬µ«Èç¹ûÔÚ½ÏÔçµÄ°æ±¾ÔòÐèÒªÏÔʾ½¨Á¢£»
3.Íâ¼ü¹ØϵµÄÁ½¸ö± ......
MySQL°²×°Ä¿Â¼ÏµÄDataĿ¼ÖÐ .err´íÎóÐÅÏ¢:
Default storage engine (InnoDB) is not available
½â¾ö°ì·¨:
ɾ³ýÔÚMySQL°²×°Ä¿Â¼ÏµÄDataĿ¼ÖеÄ
ib_logfile0
ib_logfile1
ÖØÐÂÆô¶¯MySQLµÄService ......