MySQL£¬×÷Ϊһ¿î¿ªÔ´µÄ¹ØÏµÐÍÊý¾Ý¿â¹ÜÀíϵͳ£¨RDBMS£©£¬Æ¾½èÆä¸ßÐÔÄÜ¡¢¿ÉÀ©Õ¹ÐÔºÍÒ×ÓÃÐÔ£¬ÔÚLinuxƽ̨ÉÏÓ®µÃÁ˹㷺µÄÈϿɺÍÓ¦ÓÃ
È»¶ø£¬ÒªÈ·±£MySQLÔÚLinuxϵͳÉϳÖÐø¸ßЧÔËÐУ¬¶ÔÆä״̬µÄ¼à¿ØÓë¹ÜÀíÏÔµÃÓÈÎªÖØÒª
±¾ÎĽ«ÉîÈë̽ÌÖLinux MySQLµÄ״̬¼à¿Ø¼¼ÇÉ¡¢ÐÔÄܵ÷ÓŲßÂÔÒÔ¼°³£¼û¹ÊÕÏÅųý·½·¨£¬Ö¼ÔÚ°ïÖúDBA£¨Êý¾Ý¿â¹ÜÀíÔ±£©ºÍ¼¼ÊõÍŶӹ¹½¨Ò»Ì×ÍêÉÆµÄMySQLÔËάÌåϵ
Ò»¡¢Linux MySQL״̬¼à¿Ø£º¶´²ìϵͳ½¡¿µµÄ´°¿Ú 1. »ù±¾×´Ì¬¼ì²é Ê×ÏÈ£¬Í¨¹ýÃüÁîÐй¤¾ß`mysqladmin`»ò`mysql`¿Í»§¶Ë£¬¿ÉÒÔ¿ìËÙ»ñÈ¡MySQL·þÎñµÄ»ù±¾×´Ì¬ÐÅÏ¢
ÀýÈ磬ʹÓÃ`mysqladminstatus`ÃüÁî¿ÉÒÔÏÔʾµ±Ç°Á¬½ÓÊý¡¢²éѯÊý¡¢Âý²éѯÊýµÈ¹Ø¼üÖ¸±ê
ÕâЩÊý¾ÝÊÇÆÀ¹ÀMySQL·þÎñÆ÷¸ºÔغÍÐÔÄܵĻù´¡
mysqladmin -u root -p status 2. ÀûÓÃϵͳ¼à¿Ø¹¤¾ß Linux×Ô´øµÄϵͳ¼à¿Ø¹¤¾ßÈç`top`¡¢`htop`¡¢`vmstat`µÈ£¬ËäÈ»²»×¨ÃÅÕë¶ÔMySQL£¬µ«ÄÜÌṩCPU¡¢ÄÚ´æ¡¢´ÅÅÌI/OµÈϵͳ×ÊÔ´µÄʹÓÃÇé¿ö£¬°ïÖúÅжÏMySQLÊÇ·ñÊܵ½ÏµÍ³×ÊÔ´Æ¿¾±µÄÓ°Ïì
3. MySQL Enterprise MonitorÓëPercona Monitoring andManagement (PMM) ¶ÔÓÚ¸üרҵ¡¢È«ÃæµÄ¼à¿ØÐèÇó£¬MySQL¹Ù·½ÌṩµÄEnterprise MonitorºÍ¿ªÔ´ÉçÇøÍÆ¼öµÄPercona PMMÊDz»´íµÄÑ¡Ôñ
ËüÃDz»½öÄÜʵʱ¼à¿ØMySQLÐÔÄÜÖ¸±ê£¬»¹ÄܽøÐÐÀúÊ·Êý¾Ý·ÖÎö¡¢¸æ¾¯Í¨ÖªºÍ×Ô¶¯»¯±¨¸æÉú³É£¬¼«´óÌáÉýÁË¼à¿ØÐ§ÂʺÍÎÊÌâÏìÓ¦ËÙ¶È
4. ÈÕÖ¾·ÖÎö MySQLµÄ´íÎóÈÕÖ¾¡¢²éѯÈÕÖ¾¡¢Âý²éѯÈÕÖ¾µÈÊÇÕï¶ÏÎÊÌâµÄ±¦¹ó×ÊÔ´
¶¨ÆÚ¼ì²éÕâЩÈÕÖ¾Îļþ£¬¿ÉÒÔ°ïÖú·¢ÏÖDZÔÚµÄÅäÖôíÎó¡¢ÐÔÄÜÆ¿¾±»ò°²È«Íþв
²é¿´´íÎóÈÕ־λÖà SHOW VARIABLES LIKE log_error; ²é¿´Âý²éѯÈÕ־λÖà SHOW VARIABLES LIKE slow_query_log_file; ¶þ¡¢ÐÔÄܵ÷ÓÅ£ºÈÃMySQLÅܵøü¿ì 1. ÓÅ»¯²éѯ - ʹÓÃEXPLAIN·ÖÎö²éѯ¼Æ»®£º¶ÔÂý²éѯʹÓÃ`EXPLAIN`Óï¾ä£¬²é¿´²éѯµÄÖ´Ðмƻ®£¬Ê¶±ðÈ«±íɨÃè¡¢Ë÷ÒýδʹÓõÈÎÊÌ⣬²¢¾Ý´Ëµ÷ÕûSQLÓï¾ä»òÌí¼Ó/ÓÅ»¯Ë÷Òý
- ±ÜÃâSELECT £º½öÑ¡ÔñÐèÒªµÄÁУ¬¼õÉÙÊý¾Ý´«ÊäÁ¿ºÍÄÚ´æÏûºÄ
- ºÏÀíʹÓÃJOIN£º±ÜÃâ¹ý¶àµÄJOIN²Ù×÷£¬ÓÈÆäÊÇǶÌײéѯ£¬¾¡Á¿Í¨¹ýË÷ÒýÓÅ»¯JOINЧÂÊ
2. Ë÷ÒýÓÅ»¯ - ½¨Á¢ºÍά»¤Ë÷Òý£º¸ù¾Ý²éѯģʽºÏÀí´´½¨Ë÷Òý£¬µ«Ò²Òª×¢ÒâË÷Òý¹ý¶à»áÔö¼Óд²Ù×÷µÄ¸ºµ£
- ¸²¸ÇË÷Òý£º¶ÔÓÚÆµ·±²éѯµÄ×ֶΣ¬¿¼ÂÇʹÓø²¸ÇË÷Òý£¬¼´Ë÷Òý°üº¬Á˲éѯËùÐèµÄËùÓÐÁУ¬ÒÔ¼õÉٻرí²Ù×÷
3. ÅäÖõ÷Õû - µ÷Õû»º³åÇø´óС£ºÈç`innodb_buffer_pool_size`¡¢`query_cache_size`µÈ£¬¸ù¾Ý·þÎñÆ÷ÄÚ´æ´óСºÍʵ¼Ê¸ºÔØÇé¿öºÏÀí·ÖÅä
- ÓÅ»¯Á¬½Ó²ÎÊý£ºÈçmax_connections¡¢`thread_cache_size`µÈ£¬È·±£MySQLÄܹ»¸ßЧ´¦Àí²¢·¢Á¬½Ó
4. Ó²¼þÉý¼¶Óë¼Ü¹¹ÓÅ»¯ - Ôö¼ÓÄڴ棺¸ü¶àµÄÄÚ´æ¿ÉÒÔÈÝÄɸü¶àµÄÊý¾Ý»º´æ£¬¼õÉÙ´ÅÅÌI/O£¬ÌáÉý²éѯËÙ¶È
- ʹÓÃSSD£ºÏà±È´«Í³µÄHDD£¬SSDÌṩÁ˸ü¿ìµÄ¶ÁдËÙ¶È£¬¶ÔÊý¾Ý¿âÐÔÄÜÓÐÏÔÖøÌáÉý
- ¶Áд·ÖÀëÓë·Ö¿â·Ö±í£º¶ÔÓڸ߲¢·¢¡¢´óÊý¾ÝÁ¿µÄÓ¦Ó㬿¼ÂÇʵʩ¶Áд·ÖÀë¡¢·Ö¿â·Ö±íµÈ¼Ü¹¹ÓÅ»¯²ßÂÔ£¬·ÖɢѹÁ¦£¬ÌáÉýÕûÌåÐÔÄÜ
Èý¡¢¹ÊÕÏÅųý£ºÑ¸ËÙ¶¨Î»²¢½â¾öÎÊÌâ 1. ÎÞ·¨Æô¶¯ - ¼ì²éÅäÖÃÎļþ£ºÈ·ÈÏmy.cnf£¨»òmy.ini£©ÅäÖÃÎļþÖеIJÎÊýÉèÖÃÕýÈ·ÎÞÎó
- ²é¿´´íÎóÈÕÖ¾£º´íÎóÈÕÖ¾ÖÐͨ³£»á¼Ç¼Æô¶¯Ê§°ÜµÄ¾ßÌåÔÒò£¬ÈçȨÏÞÎÊÌâ¡¢¶Ë¿Ú³åÍ»µÈ
2. ÐÔÄÜϽµ - ·ÖÎöϵͳ×ÊÔ´£ºÊ¹ÓÃtop¡¢iostatµÈ¹¤¾ß¼ì²éCPU¡¢ÄÚ´æ¡¢´ÅÅÌI/OµÈ×ÊÔ´ÊÇ·ñ±¥ºÍ
- ²éѯÐÔÄܵ÷ÓÅ£º°´ÕÕǰÎÄÌáµ½µÄ²éѯÓÅ»¯ºÍË÷ÒýÓÅ»¯·½·¨½øÐе÷Õû
3. Êý¾ÝË𻵠- ¶¨ÆÚ±¸·Ý£ºÈ·±£Óпɿ¿µÄ±¸·Ý²ßÂÔ£¬ÎÞÂÛÊÇÎïÀí±¸·Ý»¹ÊÇÂß¼±¸·Ý
- ʹÓÃmysqlcheck»òmyisamchk£º¶ÔÓÚMyISAM±í£¬¿ÉÒÔʹÓÃÕâЩ¹¤¾ß¼ì²éºÍÐÞ¸´Êý¾Ý±í
4. °²È«ÎÊÌâ - ¸üв¹¶¡£º¼°Ê±°²×°MySQL¹Ù·½·¢²¼µÄ°²È«²¹¶¡£¬·ÀÖ¹ÒÑ֪©¶´±»ÀûÓÃ
- ·ÃÎÊ¿ØÖÆ£ºÑϸñ¹ÜÀíÓû§È¨ÏÞ£¬±ÜÃâ²»±ØÒªµÄȨÏÞÊÚÓ裬ʹÓÃÇ¿ÃÜÂë²ßÂÔ
ËÄ¡¢×ܽá Linux MySQLµÄ״̬¼à¿ØÓë¹ÜÀíÊÇÒ»Ïîϵͳ¹¤³Ì£¬Éæ¼°´Ó»ù´¡×´Ì¬¼ì²éµ½¸ß¼¶ÐÔÄܵ÷ÓÅ£¬ÔÙµ½¹ÊÕÏÅųýµÄÈ«·½Î»¹¤×÷
ͨ¹ýºÏ