Ò»¡¢ÄîÊéµÄÆõ»ú£º´ÓÂýÅÌÎʵ½ÏµÍ³ºôÎüÔÚÒ»Ñùƽ³£ÔËάÓ뿪·¢µÄ½»Ö¯µãÉÏ£¬ÂýÅÌÎÊÏñÒ»¸ö¾¯±¨£¬ÌáÐÑÄãϵͳµÄºôÎü²»Ë³³©¡£¶Á¡¶ÉîÈëdz³ömysql¡·Ê±£¬ÎÒ±»ËüÓü«¾ßÇ׺ÍÁ¦µÄÓïÑÔ°ÑÖØ´óµÄÊý¾Ý¿â»úÖÆ²ð½â³É¡°ÐÄÌø¡±ºÍ¡°Âö²«¡±Á½²ãÖ±¹Û±ÈÓ÷Ëù¸Ð¶¯¡£×÷Õß°ÑInnoDBµÄ»º³å³Ø¡¢redoÈÕÖ¾µÄ˳Ðòд¡¢ÒÔ¼°ÊÂÎñµÄ²¢·¢¿ØÖƵȽ¹µãÄÚÈݽ²³ÉÒ»×é¿É¸ÐÖªµÄÕ÷Ïó£ºÖÀÖÐÂÊ¡¢ïÔÌÕ½ÂÔ¡¢ËøÆÚ´ýµÄ³ÉÒò£¬ÒÔ¼°Ö´ÐÐÍýÏëµÄ¿ÉÕ¹ÍûÐÔ¡£
ÕâÖÖ½²·¨ÈÃÈËÃ÷È·£¬ÓÅ»¯²¢²»µ«ÊÇäĿµØ¼ÓÓ²¼þ»ò̧¸ßãÐÖµ£¬¶øÊÇÒª°ÑϵͳµÄÐÐΪÄð³É¿ÉÊӲ졢¿É»³±§¡¢¿É²Ù×÷µÄ×éºÏ¡£¶ÔÎÒ¶øÑÔ£¬ÕâÊÇÒ»´Î´Ó¡°ÖªµÀÓÐÎÊÌ⡱µ½¡°ÖªµÀÔõô½â¾ö¡±µÄԾǨ£¬ÊéÖеÄÿһ¸ö±ÈÓ÷¶¼ÏñÊǸøÖØ´ó»úеµÄ˵Ã÷Ê飬¼òÃ÷¡¢ÇåÎú¡¢Ò׼ǡ£
¶þ¡¢½¹µãÔÔò£º°ÑÖØ´ó±ä¼òÆÓÊéÖÐÖØ¸´Ç¿µ÷µÄ£¬ÊÇÒÔÎÊÌâÇý¶¯µÄѧϰ·½·¨£¬¶ø·ÇÌÕ×íÔÚÀíÂÛµÄÃÀÃîÖ®´¦¡£×÷Õß°ÑMySQL²ð½â³ÉÖ´ÐÐÍýÏë¡¢Ë÷ÒýÑ¡Ôñ¡¢»º´æÕ½ÂÔºÍÊÂÎñ½çÏßÕ⼸¿é¿É¿ØµÄ°å¿é£¬ÈöÁÕßѧ»áÓÃÒ»¸ö¿ÉÂ䵨µÄ¿ò¼ÜÈ¥¿´´ýÐÔÄÜÎÊÌâ¡£Äã»á·¢Ã÷£¬Ðí¶à¡°¸ßÄѶȡ±µÄÓÅ»¯½¨Ò飬×Åʵ²»¹ýÊǶÔÒ»¸öÅäºÏÔÔòµÄ²î±ð±í´ï£ºÈÃÖ´ÐÐÍýÏë¸ü¿ÉÕ¹Íû¡¢ÈÃÊý¾Ý»á¼û¸ü¼òµ¥¡¢ÈÃдÈëÓë¶ÁÈ¡µÄÕûÌìÖ°Àë¡£
ºÃ±È£¬ºÎʱѡÓÃÖ÷¼üÅÌÎÊ¡¢ºÎʱ×ßÁýÕÖË÷Òý¡¢ÒÔ¼°ÔõÑùͨ¹ýºÏÀíµÄ·ÖÇøÉè¼ÆÀ´½µµÍÈÈÃÅѹÁ¦¡£ÊéÖеݸÀý²»ÊÇÆÓªµÄÀíÂÛ£¬¶øÊÇÒÔÏÖʵ³¡¾°Îª¹Ç¼ÜµÄÑÝÁ·£ºÔõÑùÓÃEXPLAIN½â¶ÁÖ´ÐÐÍýÏë¡¢ÔõÑùͨ¹ýÂýÅÌÎÊÈÕÖ¾¶¨Î»Æ¿¾±¡¢ÔõÑùÁ¬Ïµ²ÎÊýµ÷½âÓëÊý¾ÝÂþÑÜʵÏÖÐÔÄÜÌáÉý¡£ÕâЩÄÚÈÝÔÚÒ»Ñùƽ³£ÊÂÇéÖм«¾ß¿É²Ù×÷ÐÔ£¬¶Áµ½ºó£¬ÄÔº£Àï¶àÁËÒ»¸ö¡°Õï¶Ï¡ª¶¨Î»¡ªÑéÖ¤¡±µÄÑ»·¡£
Èý¡¢ÊéÖа¸Àý£º°ÑÀíÂÛÂ䵨µ½ÊÂÇ鳡¾°ÊéÖÐÒ»¸öµä·¶µÄ³¡¾°ÊÇ¡°ÈÈÃÅÕ¾µãµÄ¶ÁдÊèÉ¢Ó뻺´æ·Ö²ã¡±¡£×÷Õßͨ¹ýÒ»¸ö¿¿½üÕæÊµµÄÀý×Ó£¬Õ¹Ê¾ÁËÖ÷¿â¼ç¸ºÐ´Èë¡¢´Ó¿â¼ç¸ºÅÌÎÊ¡¢»º´æ²ã³Ð½ÓÈÈÃÅÊý¾Ý»á¼ûµÄÐͬÊÂÇé·½·¨¡£Í¨¹ý¶ÔÖ´ÐÐÍýÏëµÄÆÊÎö£¬ÑÝÒï³ö²î±ðÅÌÎÊÀàÐÍϵÄ×îÓÅË÷ÒýÕ½ÂÔ¡¢ÅþÁ¬Ë³Ðò£¬ÒÔ¼°ºÎʱÐèÒª×èÖ¹»Ø±íµÄ¼¼ÇÉ¡£
ÔÙÁ¬Ïµ¶Ôredo/undoÈÕÖ¾µÄÃ÷È·£¬Ö¸µ¼ÔõÑùÉè¼ÆÊÂÎñ½çÏß¡¢×èÖ¹³¤ÊÂÎñ¡¢ÒÔ¼°ÔÚ¶þ¼¶Ë÷ÒýʧЧʱÔõÑùÈ·±£ÅÌÎÊ׼ȷÐÔ¡£ÕâЩÄÚÈÝÈÃÎÒÔÚÏÖʵÏîÄ¿ÄÚÀïµÄ×ö·¨ÓÐÁËÃ÷È·µÄõ辶ͼ£ºÏȽ¨ÉèÕï¶ÏÇåµ¥£¬ÂýÅÌÎÊʶ±ð¡¢ËøÆÚ´ý¶¨Î»¡¢»º´æÖÀÖÐÂÊÆÀ¹À£¬Öð²½ÅŲ飬ֱµ½Ëø¡¢Ö´ÐÐÍýÏë¡¢Ë÷ÒýµÈ»·½Ú¶¼»ñµÃÓÅ»¯¡£
ÊéÖеݸÀý²»ÊÇÐúÏùµÄÀíÂÛÐ㣬¶øÊÇ¿ÉÒÔÄÃÀ´Ö±½ÓÕÕ°áµÄÊÂÇéÁ÷³Ì£¬¸øÁËÎÒÒ»¸ö¿ÉÖØ¸´¡¢¿ÉÑéÖ¤µÄˢз¾¶¡£
ËÄ¡¢Ìõ¼Ç·¨Óëѧϰ·¾¶£º°Ñ֪ʶ´ø×ß¡¢´ø»ØÊÂÇé°ÑÊé¶Á³É¡°¿É´ø×ߵŤ¾ß¡±£¬ÊÇÎÒ¶ÔÕâ±¾Ìõ¼ÇµÄ×î´óÊÕ»ñ¡£ÎÒµÄÌõ¼Ç·¨£¬·Ö³ÉÈý²½×ߣº½¹µã¿´·¨¡¢¿ÉÖ´Ðе÷ÓÅÊֶΡ¢ÒÔ¼°¿ìËÙÅÅ´íÇåµ¥¡£¹ØÓÚÁýͳµÄÔÀí£¬ÎÒÆ«ºÃ½èÖúͼ½âÀ´Ó°Ïó£¬ÀýÈ罫»º³å³ØÓëÖÀÖÐÂʹØÏµ»³É²¨ÎÆÊ½µÄʾÒâͼ£¬×ÊÖúÃ÷È·ïÔÌÕ½ÂÔÓëÊý¾Ý»á¼ûµÄÏ໥ӰÏì¡£
¹ØÓÚ²Ù×÷ÐÔµÄÄÚÈÝ£¬Ðγɡ°ºÎʱ×ö¡¢ÓÃʲô¹¤¾ß¡¢»ñµÃʲô֤¾Ý¡±µÄÈý²½·¨£¬×èÖ¹ÏÖ³¡ÓÉÓÚ¹¤¾ß´íÅäÆÌÕÅʱ¼ä¡£Óë´ËÎÒ½¨ÉèÁËÒ»¸ö¼ò¶ÌµÄÎÂϰ½Ú×ࣺÿÖÜ»ØÊ×Ò»´Î×îÒªº¦µÄÅÌÎÊÓëÖ¸±ê¡¢Ã¿ÔÂÕûÀíÒ»´Îϵͳ¼¶µÄÆ¿¾±µã¡£Í¨¹ýÕâÑùµÄÌõ¼Ç·¨£¬ÊéÖеÄ֪ʶ²»ÔÙÊÇÁæØêµÄ·ûºÅ£¬¶øÊÇÔÚÒ»Ñùƽ³£ÊÂÇéµÄÕï¶Ï¡¢Éè¼ÆÓëË¢ÐÂÖÐÒ»Ö±±»Å²Óá¢Ò»Ö±±»ÑéÖ¤¡£
Ò»¡¢´ÓÔÀíµ½´úÂ룺°ÑÊéÖеÄ˼Ð÷Â䵨µ½ÏµÍ³Éè¼ÆÕæÕýµÄÂ䵨£¬ÊǰÑÊéÖеÄÔÀíתÒë³É¿ÉÖ´ÐеÄÉè¼Æ¹æ·¶¡£ÎÒµÄ×ö·¨ÊÇÏȽç˵ĿµÄ£ºÏµÍ³SLO¡¢latencyKPI¡¢RPSÉÏÏ޵ȣ¬½Ó×ŰÑÊý¾Ý¿â¼Ü¹¹Ó³ÉäΪ¡°¶ÁдÊèÉ¢¡¢»º´æ·Ö²ã¡¢ÒÔ¼°¿ÉÊÓ²ìµÄÖ´Ðз¾¶¡±¡£
ÔÚÒ»ÆäÖеȹæÄ£µÄÓ¦Óó¡¾°ÖУ¬Ö÷¿âÈÏÕæÐ´È룬Èô¸ÉÖ»¶Á¸±±¾¼ç¸ºÅÌÎÊ£¬»º´æ²ã¶ÔÈÈÃÅÊý¾ÝÌṩ¿ìËÙ»á¼û£»²¢Í¨¹ýºÏÀíµÄË÷ÒýÕ½ÂÔºÍÅÌÎʸÄдÀ´½µµÍ»Ø±íºÍÈ«±íɨÃèµÄ±¾Ç®¡£Â䵨µÄÒªº¦£¬ÔÚÓÚ°ÑÊéÀïµÄÔÔòת»¯ÎªÏÖʵµÄÉèÖÃÓë´úÂ룺ÔõÑùÉè¼ÆºÏÊʵĻº³å³Ø¾Þϸ¡¢ÔõÑùÑ¡ÔñºÏÊʵÄÒýÇæÓë²ÎÊý¡¢ÒÔ¼°ÔõÑùÔڱ任ʱ¼á³ÖϵͳµÄ¿ÉÊÓ²ìÐÔ¡£
ÊéÖÐÇ¿µ÷µÄ¡°¿ÉÕ¹ÍûÐÔ¡±ÔÚÎÒµÄϵͳ¼Ü¹¹ÀïÂäµØÎªÃ÷È·µÄ×ÊÔ´ÏÞÖÆ¡¢ÇåÎúµÄãÐÖµ¡¢ÒÔ¼°¿ÉÖØ¸´µÄ±ä»»Á÷³Ì¡£Ã¿Ò»´ÎϵͳµÄÉý¼¶»òµ÷ÓÅ£¬¶¼»á´øÀ´¸üÎȹ̵ÄÏìÓ¦Óë¸üµÍµÄ²¨¶¯£¬ÕâÒ²ÊÇÕâ±¾Êé×îÕæÊµµÄ¼ÛÖµÌåÏÖ¡£
¶þ¡¢Õï¶ÏÓëµ÷ÓŵÄʵ²ÙÇåµ¥°ÑÀíÂÛת»¯ÎªÏÖ³¡µÄÐж¯£¬ÊÇÈíÎÄÖеÄÒªº¦»·½Ú¡£ÎÒµÄÕï¶ÏÁ÷³Ì´óÖ°üÀ¨ÒÔϼ¸¸ö°ì·¨£º1)ÏȽç˵»ùÏßÖ¸±ê£ºQPS¡¢P99ÑÓ³Ù¡¢ÂýÅÌÎʱÈÀýµÈ£¬½¨Éè¿É×·×ÙµÄÊý¾Ýͼ±í£»2)ʹÓÃEXPLAIN/EXPLAINANALYZEµÈ¹¤¾ß£¬½â¶ÁÅÌÎÊÍýÏ룬¼ì²éÊÇ·ñÓÐË÷ÒýδÖÀÖлò²»¶ÔÀíµÄÅþÁ¬Ë³Ðò£»3)ÉóºËÂýÅÌÎÊÈÕÖ¾£¬¶¨Î»¸ß±¾Ç®µÄÓï¾ä²¢ÊµÑé¸Äд»òÌí¼ÓÁýÕÖË÷Òý£»4)Éó²éËøÆÚ´ýÓë²¢·¢¿ØÖÆ£¬ÅжÏÊÇ·ñÐèÒªµ÷½âÊÂÎñ½çÏß¡¢ËøÁ£¶È»ò¸ôÀë¼¶±ð£»5)µ÷½âϵͳ²ÎÊý£¬È绺´æ¾Þϸ¡¢²¢·¢ÉèÖá¢ÅþÁ¬ÊýÉÏÏ޵ȣ¬Á¬ÏµÑ¹Á¦²âÊÔÑé֤Ч¹û£»6)ÆÀ¹À»º´æÕ½ÂÔÓëÊý¾ÝÂþÑÜ£¬Ë¼Á¿·ÖÇø¡¢·Ö±í»òÖ»¶Á´Ó¿âµÄÀ©Õ¹ÐÔ¡£
ÊéÖÐÓëʵ¼ùÏàÁ¬ÏµµÄÒªº¦£¬ÊÇÒªÓÐÒ»¸ö¿ÉÖØ¸´µÄÁ÷³Ì£¬¶ø²»ÊÇһζµØ¡°´ò²¹¶¡¡±¡£¹¤¾ß·½Ã棬¿ÉÁ¬ÏµÂýÅÌÎÊÆÊÎö¹¤¾ß¡¢PerconaToolkit¡¢ÒÔ¼°ÆóÒµÄÚ²¿µÄ¼à¿ØÏµÍ³À´Ðγɱջ·¡£Í¨¹ýÕâÖÖʵ²ÙÇåµ¥£¬Õï¶Ï¡¢¶¨Î»¡¢ÑéÖ¤Èý²½×ßµÄЧÂÊ»áÏÔÖøÌáÉý£¬Æ¿¾±²Å²»»áÓëʱ¼äͬËÙÉÏÕÇ¡£
Èý¡¢ÈÝÁ¿ÍýÏëÓë¸ß¿ÉÓãºÎȽ¡µÄ¿ÉÓÃÐÔÉè¼ÆÔÚÉú²úÇéÐΣ¬ÈÝÁ¿ÍýÏëºÍ¸ß¿ÉÓÃÊǾöÒéϵͳÈÍÐÔµÄÒªº¦ÒªËØ¡£ÊéÖеÄ˼Ð÷ÌáÐÑÎÒÃÇ£ºÏÈÒªÓÐÈÝÁ¿»ùÏߣ¬ÔÙÖð²½Ë¼Á¿À©Õ¹Õ½ÂÔ£¬¶ø·ÇäĿ׷Çó¼«ÏÞÐÔÄÜ¡£ÎÒµÄ×ö·¨ÊÇ£º½¨Éè·Ö²ãÀ©Õ¹Ä£×Ó£¬Ö÷¿â´¦Öóͷ£Ð´È룬¸±±¾¼ç¸ºÖ»¶ÁÅÌÎÊ£¬Õë¶ÔÈÈÃÅÊý¾ÝÉè¼Æ»º´æ²ã²¢Á¬Ïµ·ÖÇø¼Æ»®½µµÍÈÈÃÅѹÁ¦¡£
ÖÆ¶©ÔÖÄÑÑÝÁ·ÍýÏëºÍÊý¾Ý±¸·ÝÕ½ÂÔ£¬È·±£ÔÚÒâÍâÊÂÎñÖÐÄܹ»¿ìËÙ»Ö¸´¡£ºÏÀíµÄ¸ß¿ÉÓÃÉè¼Æ°üÀ¨ËÙÂʿɿصĹÊÕÏÇл»¡¢¿çÇøÓòÈÝÔÖ¡¢ÒÔ¼°¶Ô±¸·ÝÊý¾ÝµÄ°´ÆÚÒ»ÖÂÐÔÑéÖ¤¡£ÊéÖеÄÔÀíÔÚÏÖʵ°²ÅÅÖÐÄð³ÉÁËÏêϸµÄÖÆ¶È£º°´ÆÚÑÝÁ·¡¢Ã÷È·µÄ¹ÊÕÏÇл»Á÷³Ì¡¢ÒÔ¼°¿É×·ËݵĻָ´Ê±¼äÄ¿µÄ£¨RTO£©ºÍÊý¾Ý¿ÉÓÃÐÔÄ¿µÄ£¨RPO£©¡£
°ÑÕâЩÂäʵµ½ÍŶӵÄÒ»Ñùƽ³£ÔËάÖУ¬ÏµÍ³µÄ¿ÉÓÃÐÔÓëÎȹÌÐÔ×ÔÈ»»áÌáÉý¡£
ËÄ¡¢Ñ§Ï°Â·¾¶Óë·ÖÏíÒªÁ죺֪ʶµÄÄÚ»¯ÓëÈö²¥Ñ§Ï°µÄÒâÒåÔÚÓÚÒ»Ö±µü´úÓë·ÖÏí¡£ÊéÖеÄ֪ʶÈôÊÇÖ»ÔÚСÎÒ˽¼ÒÌõ¼ÇÖÐÌð˯£¬Æä¼ÛÖµ¾Í»á´òÕÛ¡£ÎÒµÄ×ö·¨£¬ÊǰÑÖØµã֪ʶÕûÀí³É¡°ÄÚ²¿Ìõ¼Ç¡¢ÊµÕ½Çåµ¥¡¢ÒÔ¼°¿ÉÖ´ÐеÄÑÝÁ·¾ç±¾¡±£¬²¢ÔÚÍŶÓÖÐÒÔ¼ò¶ÌµÄÊÂÇé·»ÐÎʽ·ÖÏí¡£Ïêϸ°ì·¨°üÀ¨£º1)°Ñÿ´Îµ÷ÓŵÄǰºó±ÈÕÕд³É¼ò¶ÌµÄ±ÈÕÕÎĵµ£¬±ãÓÚ»ØÊ×Ó븴ÅÌ£»2)½«Ö´ÐÐÍýÏë¡¢Õï¶ÏÇåµ¥¡¢ÒÔ¼°³£¼ûÎÊÌâÕûÀí³ÉÒ»·Ý¡°Runbook¡±£¬¹©ÔÚ¸ÚÖ°Ô±¿ìËÙÉÏÊÖ£»3)Á¬ÏµÒ»Ñùƽ³£ÊÂÇ飬°´ÆÚ×é֯СÐ͸´ÅÌ£¬»áÓÃÕæÊµµÄ°¸ÀýÇý¶¯ÌÖÂÛ£¬¶ø²»ÊÇÆÓªµÄÀíÂÛ¹á×¢£»4)Ó뿪·¢¡¢²âÊÔ¡¢ÔËάÍŶÓÅäºÏά»¤Ò»¸ö¿ÉÑÝÁ·µÄÇéÐΣ¬È·±£±ä»»µÄ¿É¿ØÐÔÓë¿ÉÖØ¸´ÐÔ¡£
ÕâÑùµÄѧϰ·¾¶£¬ÄÜÈÃÊéÖеÄÀíÂÛÔÚÍŶÓÖÐÒ»Ö±±»ÑéÖ¤¡¢Ò»Ö±±»¸üУ¬ÕæÕý³ÉΪÌáÉýÉú²úÁ¦µÄ¹¤¾ß¡£
ÈôÊÇÄãÕýÔÚΪÔõÑùÈÃMySQL±äµÃ¸üÎÈ¡¢¸ü¿ì¡¢ÒÔ¼°¸üÒ×ά»¤¶ø¿àÄÕ£¬Õâ±¾ÊéµÄÌõ¼ÇÆø¸ÅÓëÂäµØÒªÁ죬¿ÉÄÜÕýÊÇÄãÐèÒªµÄÄǰÑÔ¿³×¡£Í¨¹ý¶Ô½¹µãÔÀíµÄÇåÎú²ð½â¡¢¶Ô°¸ÀýµÄÕæÊµÔÙÏÖ¡¢ÒÔ¼°¶Ôʵ²ÙÇåµ¥µÄÂ䵨ӦÓã¬Äã»á·¢Ã÷´Ó¡°ÎÊÌⱬ·¢¡±µ½¡°½â¾ö¼Æ»®Â䵨¡±µÄÀú³Ì£¬ÔÀ´¿ÉÒÔÔÆÔÆ¸ßЧ¡¢ÓÐÐò¡£
Ëæ×ÅÔĶÁµÄÉîÈ룬ÄãÒ²»áÖð²½½¨ÉèÆðÊôÓÚ×Ô¼ºµÄÕï¶Ï¿ò¼ÜÓëѧϰ½Ú×࣬ÈÃÊý¾Ý¿âÓÅ»¯³ÉΪһÑùƽ³£ÊÂÇéÖÐ×ÔÈ»¶øÈ»µÄÄÜÁ¦»ýÀÛ¡£