MYSQLÖÐEXPLAINµÄ˵Ã÷
mysql> explain select count(id) from t_prehandle_zhigao_05 as zhigao where start_time > '2008-05-30';
+----+-------------+--------+-------+---------------+------------+---------+------+---------+--------------------------+
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
+----+-------------+--------+-------+---------------+------------+---------+------+---------+--------------------------+
| 1 | SIMPLE | zhigao | range | start_time | start_time | 8 | NULL | 1061762 | Using where; Using index |
+----+-------------+--------+-------+---------------+------------+---------+------+---------+--------------------------+
1 row in set (0.00 sec)
mysql>
EXPLAINÁеĽâÊÍ£º
table£ºÏÔʾÕâÒ»ÐеÄÊý¾ÝÊǹØÓÚÄÄÕűíµÄ
type£ºÕâÊÇÖØÒªµÄÁУ¬ÏÔʾÁ¬½ÓʹÓÃÁ˺ÎÖÖÀàÐÍ¡£´Ó×îºÃµ½×î²îµÄÁ¬½ÓÀàÐÍΪconst¡¢eq_reg¡¢ref¡¢range¡¢indexheºÍALL
possible_keys£ºÏÔʾ¿ÉÄÜÓ¦ÓÃÔÚÕâÕűíÖеÄË÷Òý¡£Èç¹ûΪ¿Õ£¬Ã»ÓпÉÄܵÄË÷Òý¡£¿ÉÒÔΪÏà¹ØµÄÓò´ÓWHEREÓï¾äÖÐÑ¡ÔñÒ»¸öºÏÊʵÄÓï¾ä
key£ºÊµ¼ÊʹÓõÄË÷Òý¡£Èç¹ûΪNULL£¬ÔòûÓÐʹÓÃË÷Òý¡£ºÜÉÙµÄÇé¿öÏ£¬MYSQL»áÑ¡ÔñÓÅ»¯²»×ãµÄË÷Òý¡£ÕâÖÖÇé¿öÏ£¬¿ÉÒÔÔÚSELECTÓï¾ä
ÖÐʹÓÃUSE INDEX£¨indexname£©À´Ç¿ÖÆÊ¹ÓÃÒ»¸öË÷Òý»òÕßÓÃIGNORE INDEX£¨indexname£©À´Ç¿ÖÆMYSQLºöÂÔË÷Òý
key_len£ºÊ¹ÓõÄË÷ÒýµÄ³¤¶È¡£ÔÚ²»Ëðʧ¾«È·ÐÔµÄÇé¿öÏ£¬³¤¶ÈÔ½¶ÌÔ½ºÃ
ref£ºÏÔʾË÷ÒýµÄÄÄÒ»Áб»Ê¹ÓÃÁË£¬Èç¹û¿ÉÄܵϰ£¬ÊÇÒ»¸ö³£Êý
rows£ºMYSQLÈÏΪ±ØÐë¼ì²éµÄÓÃÀ´·µ»ØÇëÇóÊý¾ÝµÄÐÐÊý
Extra£º¹ØÓÚMYSQLÈçºÎ½âÎö²éѯµÄ¶îÍâÐÅÏ¢¡£½«ÔÚ±í4.3ÖÐÌÖÂÛ£¬µ«ÕâÀï¿ÉÒÔ¿´µ½µÄ»µµÄÀý×ÓÊÇUsing temporaryºÍUsing filesort£¬Òâ˼MYSQL¸ù±¾²»ÄÜʹÓÃË÷Òý£¬½á¹ûÊǼìË÷»áºÜÂý
extraÁзµ»ØµÄÃèÊöµÄÒâÒå
Distinct:Ò»µ©MYSQLÕÒµ½ÁËÓëÐÐÏàÁªºÏÆ¥ÅäµÄÐУ¬¾Í²»ÔÙËÑË÷ÁË
Not exists: MYSQLÓÅ»¯ÁËLEFT JOIN£¬Ò»µ©ËüÕÒµ½ÁËÆ¥ÅäLEFT JOIN±ê×¼µÄÐУ¬¾Í²»ÔÙËÑË÷ÁË
Range checked for each Record£¨i
Ïà¹ØÎĵµ£º
MySQLµÄ×Ö·û¼¯ÎÊÌâ¡£WindowsÏ¿Éͨ¹ýÐÞ¸Ämy.iniÄÚµÄ
CODE:
# CLIENT SECTION
[mysql]
default-character-set=utf8
#
SERVER SECTION
[mysqld]
default-character-set=utf8
Õâ
Á½¸ö×Ö¶ÎÀ´¸ü¸ÄÊý¾Ý¿â
µÄ
ĬÈÏ×Ö·û¼¯¡£µÚÒ»¸öÊǿͻ§¶ËĬÈϵÄ×Ö·û¼¯£¬µÚ¶þ¸öÊÇ·þÎñÆ÷¶ËĬÈϵÄ×Ö·û¼¯¡£¼ÙÉèÎÒÃǰÑÁ½¸ö¶¼ÉèΪutf8£¬È»ºó ......
ÎÒÓõÄÊÇmysql5.0£¬
ÎÒ³ÌÐòÖÐÓõ½ÁËÒ»¾äsqlÊÇ
SQL code
select count(DISTINCT id) from Policyinfo p where p.filename not in
(select p2.filename from Policyreadinfo p2 where p2.reader='test')
µ«ÊÇÿ´ÎÔÚ³ÌÐòÖÐÿ´ÎÖ´ÐÐÕâ¾äsqlÊ±ÍøÒ³¾ÍÌØÂý£¬Òª10¶àÃ룬¶øÕâ2¸ö±íµÄ¼Ç¼ÐÐÊýÒ²¾Í1000¶à¶øÒÑ£¬ÎÒ°ÑÕâ¾äsqlµ¥¶ÀÄ ......
1¡¢¿ØÖÆÃæ°åÀïµÄÔö¼Óɾ³ý³ÌÐòÄÚ½øÐÐɾ³ý
2¡¢É¾³ýMySQLÎļþ¼ÐϵÄmy.iniÎļþ£¬Èç¹û±¸·ÝºÃ£¬¿ÉÒÔÖ±½Ó½«Îļþ¼ÐÈ«²¿É¾³ý
3¡¢¿ªÊ¼->ÔËÐÐ-> regedit ¿´¿´×¢²á±íÀïÕ⼸¸öµØ·½É¾³ýûÓÐ
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application\MySQL Ŀ¼ɾ³ý
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\S ......
µ±ÓÃshow processlist;¿´µ½ÈçÏÂÐÅϢʱ:
LL | login | NULL |
| 697 | unauthenticated user | 218.26.219.186:26944 | NULL | Connect | NULL | login | NULL & ......
ÏÂÃæÏÈÀ´¿´¿´Àý×Ó£º
table
id name
1 a
2 b
3 c
4 c
5 b
¿â½á¹¹´ó¸ÅÕâÑù£¬ÕâÖ»ÊÇÒ»¸ö¼òµ¥µÄÀý×Ó£¬Êµ¼ÊÇé¿ö»á¸´Ôӵöࡣ
±ÈÈçÎÒÏëÓÃÒ»ÌõÓï¾ä²éѯµÃµ½name²»Öظ´µÄËùÓÐÊý¾Ý£¬ÄǾͱØÐëʹÓÃdistinctÈ¥µô¶àÓàµÄÖØ¸´¼Ç¼ ......