mysqlÓÐÒ»¸ö¹¦ÄܾÍÊÇ¿ÉÒÔlogÏÂÀ´ÔËÐеıȽÏÂýµÄsqlÓï¾ä£¬Ä¬ÈÏÊÇûÓÐÕâ¸ölogµÄ£¬ÎªÁË¿ªÆôÕâ¸ö¹¦ÄÜ£¬ÒªÐÞ¸Ämy.cnf»òÕßÔÚmysqlÆô¶¯µÄʱºò¼ÓÈëһЩ²ÎÊý¡£
Èç¹ûÔÚmy.cnfÀïÃæÐ޸ģ¬ÐèÔö¼ÓÈçϼ¸ÐÐ
long_query_time = 1
log-slow-queries =
log-queries-not-using-indexes
long_query_time ÊÇÖ¸Ö´Ðг¬¹ý¶à¾ÃµÄsql»á±»logÏÂÀ´£¬ÕâÀïÊÇ1Ãë¡£
log-slow-queries ÉèÖðÑÈÕ־дÔÚÄÇÀ¿ÉÒÔΪ¿Õ£¬ÏµÍ³»á¸øÒ»¸öȱʡµÄÎļþlog-queries-not-using-indexes ¾ÍÊǼͼûʹÓÃË÷ÒýµÄsql
·ÖÎö£º
mysqldumpslow ¨ChelpÒÔÏ£¬Ö÷ÒªÓõÄÊÇ
-s ORDER what to sort by (t, at, l, al, r, ar etc), ¡®at¡¯ is default
-t NUM just show the top n queries
-g PATTERN grep: only consider stmts that include this string
-s£¬ÊÇorderµÄ˳Ðò£¬ËµÃ÷дµÄ²»¹»Ïêϸ£¬°³ÓÃÏÂÀ´£¬°üÀ¨¿´ÁË´úÂ룬Ö÷ÒªÓÐ
c,t,l,rºÍac,at,al,ar£¬·Ö±ðÊǰ´ÕÕquery´ÎÊý£¬Ê±¼ä£¬lockµÄʱ¼äºÍ·µ»ØµÄ¼Ç¼ÊýÀ´ÅÅÐò£¬Ç°Ãæ¼ÓÁËaµÄʱµ¹Ðð
-t£¬ÊÇtop nµÄÒâ˼£¬¼´Îª·µ»ØÇ°Ãæ¶àÉÙÌõµÄÊý¾Ý
-g£¬ºó±ß¿ÉÒÔдһ¸öÕýÔòÆ¥Åäģʽ£¬´óСд²»Ãô¸ÐµÄ
mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log
ÉÏÊöÃüÁî¿ÉÒÔ¿´³ö·ÃÎÊ´ÎÊý×î¶àµÄ20¸ösqlÓï¾äºÍ·µ»Ø¼Ç¼¼¯×î¶àµÄ20¸ösql¡£
mysqldumpslow -t 10 -s t -g ¡°left join¡± host-slow.log
Õâ¸öÊǰ´ÕÕʱ¼ä·µ»ØÇ°10ÌõÀïÃæº¬ÓÐ×óÁ¬½ÓµÄsqlÓï¾ä¡£
Time: 060908 22:17:43
# Query_time: 12 Lock_time: 0 Rows_sent: 86345 Rows_examined: 580963
Q:Õâ¸öÊÇÂý²éµÄÈÕÖ¾,¶¼ÊÇЩʲôÒâ˼?
A:²éѯÓÃÁË12Ã·µ»Ø86345ÐУ¬Ò»¹²²éÁË580963ÐÐ
|