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

mysql ÊÂÎñ´¦Àí


¹ØÓÚMySQLÊÂÎñ´¦Àíѧϰ¼Ç

START TRANSACTION, COMMITºÍROLLBACKÓï·¨
START TRANSACTION | BEGIN [WORK]
COMMIT [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
ROLLBACK [WORK] [AND [NO] CHAIN] [[NO] RELEASE]
SET AUTOCOMMIT = {0 | 1}
START
TRANSACTION»òBEGINÓï¾ä¿ÉÒÔ¿ªÊ¼Ò»ÏîеÄÊÂÎñ¡£COMMIT¿ÉÒÔÌá½»µ±Ç°ÊÂÎñ£¬ÊDZä¸ü³ÉΪÓÀ¾Ã±ä¸ü¡£ROLLBACK¿ÉÒÔ
»Ø¹öµ±Ç°ÊÂÎñ£¬È¡ÏûÆä±ä¸ü¡£SET AUTOCOMMITÓï¾ä¿ÉÒÔ½ûÓûòÆôÓÃĬÈϵÄautocommitģʽ£¬ÓÃÓÚµ±Ç°Á¬½Ó¡£
×ÔÑ¡µÄWORK¹Ø¼ü´Ê±»Ö§³Ö£¬ÓÃÓÚCOMMITºÍRELEASE£¬ÓëCHAINºÍRELEASE×Ӿ䡣CHAINºÍRELEASE¿ÉÒÔ±»ÓÃÓÚ¶ÔÊÂÎñÍê³É½øÐи½¼Ó¿ØÖÆ¡£Completion_typeϵͳ±äÁ¿µÄÖµ¾ö¶¨ÁËĬÈÏÍê³ÉµÄÐÔÖÊ¡£
AND
CHAIN×Ó¾ä»áÔÚµ±Ç°ÊÂÎñ½áÊøÊ±£¬Á¢¿ÌÆô¶¯Ò»¸öÐÂÊÂÎñ£¬²¢ÇÒÐÂÊÂÎñÓë¸Õ½áÊøµÄÊÂÎñÓÐÏàͬµÄ¸ôÀëµÈ¼¶¡£RELEASE×Ó¾äÔÚÖÕÖ¹Á˵±Ç°ÊÂÎñºó£¬»áÈ÷þÎñÆ÷
¶Ï¿ªÓ뵱ǰ¿Í»§¶ËµÄÁ¬½Ó¡£°üº¬NO¹Ø¼ü´Ê¿ÉÒÔÒÖÖÆCHAIN»òRELEASEÍê³É¡£Èç¹ûcompletion_typeϵͳ±äÁ¿±»ÉèÖÃΪһ¶¨µÄÖµ£¬Ê¹Á¬Ëø
»òÊÍ·ÅÍê³É¿ÉÒÔĬÈϽøÐУ¬´ËʱNO¹Ø¼ü´ÊÓÐÓá£
ĬÈÏÇé¿öÏ£¬MySQL²ÉÓÃautocommitģʽÔËÐС£ÕâÒâζ×Å£¬µ±ÄúÖ´ÐÐÒ»¸öÓÃÓÚ¸üУ¨Ð޸쩱íµÄÓï¾äÖ®ºó£¬MySQLÁ¢¿Ì°Ñ¸üд洢µ½´ÅÅÌÖС£
Èç¹ûÄúÕýÔÚʹÓÃÒ»¸öÊÂÎñ°²È«Ð͵Ĵ洢ÒýÇæ£¨ÈçInnoDB, BDB»òNDB´Ø£©£¬ÔòÄú¿ÉÒÔʹÓÃÒÔÏÂÓï¾ä½ûÓÃautocommitģʽ£º
SET AUTOCOMMIT=0;
ͨ¹ý°ÑAUTOCOMMIT±äÁ¿ÉèÖÃΪÁ㣬½ûÓÃautocommitģʽ֮ºó£¬Äú±ØÐëʹÓÃCOMMIT°Ñ±ä¸ü´æ´¢µ½´ÅÅÌÖУ¬»ò×ÅÈç¹ûÄúÏëÒªºöÂÔ´ÓÊÂÎñ¿ªÊ¼½øÐÐÒÔÀ´×ö³öµÄ±ä¸ü£¬Ê¹ÓÃROLLBACK¡£
Èç¹ûÄúÏëÒª¶ÔÓÚÒ»¸öµ¥Ò»ÏµÁеÄÓï¾ä½ûÓÃautocommitģʽ£¬ÔòÄú¿ÉÒÔʹÓÃSTART TRANSACTIONÓï¾ä£º
START TRANSACTION;
SELECT @A:=SUM(salary) from table1 WHERE type=1;
UPDATE table2 SET summary=@A WHERE type=1;
COMMIT;
ʹÓÃSTART TRANSACTION£¬autocommitÈÔÈ»±»½ûÓã¬Ö±µ½ÄúʹÓÃCOMMIT»òROLLBACK½áÊøÊÂÎñΪֹ¡£È»ºóautocommitģʽ»Ö¸´µ½Ô­À´µÄ״̬¡£
BEGINºÍBEGIN WORK±»×÷ΪSTART TRANSACTIONµÄ±ðÃûÊܵ½Ö§³Ö£¬ÓÃÓÚ¶ÔÊÂÎñ½øÐгõʼ»¯¡£START
TRANSACTIONÊDZê×¼µÄSQLÓï·¨£¬²¢ÇÒÊÇÆô¶¯Ò»¸öad-hocÊÂÎñµÄÍÆ¼ö·½·¨¡£BEGINÓï¾äÓëBEGIN¹Ø¼ü´ÊµÄʹÓò»Í¬¡£BEGIN¹Ø¼ü´Ê
¿ÉÒÔÆô¶¯Ò»¸öBEGIN...END¸´ºÏÓï¾ä¡£ºóÕß²»»á¿ªÊ¼Ò»ÏîÊÂÎñ¡£
ÄúÒ²¿ÉÒÔ°´ÕÕÈçÏ·½·¨¿ªÊ¼Ò»ÏîÊÂÎñ£º
START TRANSACTION WITH CONSISTENT SNAPSHOT;
WITH CONSISTENT
SNAPSHOT×Ó¾äÓ


Ïà¹ØÎĵµ£º

mysql±íÁªºÏunionÓÅ»¯Îª±íÁ¬½Ójoin

      »°ËµÖ®Ç°ÓÃphpдµÄÒ»¸öͳ¼ÆÅܵúúõģ¬Í»È»Ò»Ìì²»³öÊý¾ÝÁË£¬×·ÆäÔ­Òò³öÔÚsqlÓï¾äÉÏ£¬ÓÉÓÚÊý¾ÝÁ¿Ôö´ó¼ÓÉÏ·þÎñÆ÷ÀϾɣ¬ÔËÐÐsqlÓï¾äµÄʱºò³öÏÖÄÚ´æ²»×ãµÄÌáʾ£¬Ëì¾ö¶¨ÓÅ»¯sqlÓï¾äʹÆä²»²úÉúÁÙʱ±í¡£ÐèÇóÇåÎú£¬ÏÂÃæ¾ÙÀý˵Ã÷£º
Ô­sqlÓï¾ä£º
SELECT COUNT( DISTINCT md5 ) from active AS a
......

¸ßЧµÄMySQL·ÖÒ³

PERCONA PERFORMANCE CONFERENCE 2009ÉÏ£¬À´×ÔÑÅ»¢µÄ¼¸Î»¹¤³Ìʦ´øÀ´ÁËһƪ”Efficient Pagination Using MySQL“µÄ±¨¸æ£¬ÓкܶàÁÁµã£¬±¾ÎÄÊÇÔÚÔ­ÎÄ»ù´¡ÉϵĽøÒ»²½ÑÓÉì¡£
Ê×ÏÈ¿´Ò»Ï·ÖÒ³µÄ»ù±¾Ô­Àí£º
mysql> explain SELECT * from message ORDER BY id DESC LIMIT 10000, 20\G
***************** 1. row ** ......

MySQLÐÔÄÜÓÅ»¯

1. ¼ò½é

ÔÚWebÓ¦ÓóÌÐòÌåϵ¼Ü¹¹ÖУ¬Êý¾Ý³Ö¾Ã²ã£¨Í¨³£ÊÇÒ»¸ö¹ØÏµÊý¾Ý¿â£©ÊǹؼüµÄºËÐIJ¿·Ö£¬Ëü¶ÔϵͳµÄÐÔÄÜÓзdz£ÖØÒªµÄÓ°Ïì¡£MySQLÊÇĿǰʹÓÃ×î¶àµÄ¿ªÔ´Êý¾Ý¿â£¬µ«ÊÇMySQLÊý¾Ý¿âµÄĬÈÏÉèÖÃÐÔÄܷdz£µÄ²î£¬½ö½öÊÇÒ»¸öÍæ¾ßÊý¾Ý¿â¡£Òò´ËÔÚ²úÆ·ÖÐʹÓÃMySQLÊý¾Ý¿â±ØÐë½øÐбØÒªµÄÓÅ»¯¡£
ÓÅ»¯ÊÇÒ»¸ö¸´ÔÓµÄÈÎÎñ£¬±¾ÎÄÃèÊöMySQLÏ ......

mysqlµÄÈȱ¸£º mysql replicationÔ­Àí½éÉÜ

×î½üÒµÎñ·ÃÎÊÁ¿±È½Ï´ó£¬Êý¾Ýͳ¼ÆÀàµÄ²Ù×÷¶¼Çл»µ½mysqlµÄ±¸»úÉÏÈ¥ÁË£¬±¸»úµÄ¶Á²Ù×÷²»»áÓ°ÏìÖ÷¡¢±¸Ö®¼äµÄÈȱ¸µÄ
ÏÂÃæÁÐһϾßÌåµÄÔ­Àí£º
ÒªÏëÓúÃÒ»¸öϵͳ£¬Àí½âÆäʵÏÖÔ­ÀíÊǷdz£ÖØÒªµÄÊÂÇ飬ֻÓÐÀí½âÁËÆäʵÏÖÔ­Àí£¬ÎÒÃDzÅÄܹ»Ñﳤ±Ü¶Ì£¬ºÏÀíµÄÀûÓ㬲ÅÄܹ»´î½¨³ö×îÊʺÏÎÒÃÇ×Ô¼ºÓ¦Óû·¾³µÄϵͳ£¬²ÅÄܹ»ÔÚϵͳʵʩ֮ºó¸üºÃµ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ