MySQL µ¥ÀÌÅͺ£À̽º ÃÖÀûÈ­, MySQL ¼º´ÉÀ» 200%·Î
Á¶È¸ : 490 À̸§ : ºÒ¹Ù´Ù
E-mail :
MySQL µ¥ÀÌÅͺ£À̽º ÃÖÀûÈ­, MySQL ¼º´ÉÀ» 200%·Î #1 ¡± ºí·ç»ç¶û | 2007/03/09 15:53 | µ¥ÀÌŸº£À̽º/MySQL
MySQL ¸ð´ÏÅ͸µ°ú ¼­¹ö Æ©´×

MySQLÀº ±× µ¿¾È À̸¥¹Ù APMÀ¸·Î ÀÏÄþîÁö´Â ¾ÆÆÄÄ¡, PHP, MySQL ȯ°æÀ¸·Î ¼ÒÇü ½Ã½ºÅÛÀ̳ª À¥ ȯ°æ¿¡ ÁÖ·Î Àû¿ëµÇ¾î ¿ÔÁö¸¸ ÃÖ±Ù ±â¾÷µéÀÇ ¿ÀǼҽº Àû¿ë ¹Ù¶÷À» Ÿ°í ¾÷¹« ½Ã½ºÅÛ¿¡ ±¤¹üÀ§ÇÏ°Ô µµÀԵǰí ÀÖ´Ù. ÇÏÁö¸¸ ¿ì¸®³ª¶ó¿¡´Â MySQL¸¸À» ´Ù·ç´Â Ã¥ÀÌ °ÅÀÇ Àü¹«ÇÒ Á¤µµ·Î MySQL µ¥ÀÌÅͺ£À̽º ÀÚü¿¡ ´ëÇÑ Á¤º¸³ª ÀÌÇØ°¡ ºÎÁ·ÇÑ ½ÇÁ¤ÀÌ´Ù. À̹ø ¿¬À縦 ÅëÇØ MySQLÀÇ ÁøÁ¤ÇÑ ¼º´ÉÀ» À̲ø¾î³»ÀÚ.

±èº´Áئ¢¾ÆÀÌƼºê¸´Áö

MySQL ABÀÇ ±¹³» °ñµå ÆÄÆ®³ÊÀÎ ¾ÆÀÌƼºê¸´Áö(www.itbridge.co.kr)ÀÇ MySQL ±â¼úÁö¿ø ÆÀÀåÀ¸·Î MySQLÀ» ºñ·ÔÇÑ ¿ÀǼҽº¿¡ ´ëÇÑ ÄÁ¼³Æðú Æ©´× ¾÷¹«¸¦ ¸Ã°í ÀÖ´Ù. ¿ÀǼҽº ¾ÖÇø®ÄÉÀ̼ǵéÀ» ±â¾÷ ȯ°æ¿¡ ÀûÀýÈ÷ Àû¿ëÇÏ´Â °Í¿¡ °ü½ÉÀÌ ¸¹´Ù.

MySQLÀÌ ¿ÀǼҽºÀ̱⠶§¹®Àϱî? ¿À¶óŬÀ̳ª MS-SQLÀÇ °æ¿ì ÀûÀýÇÑ Çϵå¿þ¾î¿¡ ¿Â°® Æ©´×ÀÌ ´Ù µÈ »óÅ·Π»ç¿ëÇÏ´Â ¹Ý¸é MySQLÀº ±×Àú ¼³Ä¡¸¸ ÇÑ »óÅ·Π»ç¿ëÇÏ´Â °æ¿ì°¡ ¸¹´Ù. MySQL¿¡ ¹®Á¦°¡ ÀÖ´Ù°í Çؼ­ ±â¼úÁö¿øÀ» ³ª°¡º¸¸é ±âº»ÀûÀÎ ¼³Á¤¿¡µµ ¹®Á¦°¡ ÀÖ´Â °æ¿ìµµ Çã´ÙÇÏ´Ù. ¿ì¼± ÇöÀç ½Ã½ºÅÛ¿¡ ´ëÇÑ ¸ð´ÏÅ͸µÀ» ÅëÇØ MySQLÀÌ ÀûÀýÈ÷ ÀÛµ¿ÇÏ°í ÀÖ´ÂÁö¿Í ¹®Á¦°¡ ¹«¾ùÀÎÁöºÎÅÍ ÆľÇÇÏÀÚ.

MySQL µ¥ÀÌÅͺ£À̽º ¸ð´ÏÅ͸µ

Æ©´×ÀÇ ½ÃÀÛÀº ÇöÀç ½Ã½ºÅÛÀÇ »óÅÂ¿Í ¹®Á¦Á¡À» ÆľÇÇÏ´Â °ÍÀÌ °¡Àå ¿ì¼±ÀÏ °ÍÀÌ´Ù. À̸¦ À§ÇØ ¿©·¯ °¡Áö ¹æ¹ýÀ» ÅëÇØ ½Ã½ºÅÛÀ» ¸ð´ÏÅ͸µÇÏ´Â °ÍÀÌ´Ù. ÇöÀç MySQLÀ» ¸ð´ÏÅ͸µÇÏ´Â ¹æ¹ýÀº 3°¡Áö°¡ ÀÖ´Ù. ù°·Î Ä¿¸Çµå¶óÀÎ ¸í·É¾îµéÀ» ÀÌ¿ëÇØ ¸ð´ÏÅ͸µÇÏ´Â °ÍÀÌ¸ç µÎ ¹ø°´Â GUI ±â¹ÝÀÇ °ü¸® ÅøÀÎ MySQL Administrator¸¦ ÅëÇÑ ¸ð´ÏÅ͸µÇÏ´Â °ÍÀÌ´Ù. ¸¶Áö¸·À¸·Î MySQLÀÌ ³²±ä °¢Á¾ ·Î±×¸¦ ÅëÇÑ ¸ð´ÏÅ͸µÀÌ ÀÖ´Ù. ¸ÕÀú °¡Àå ±âº»ÀûÀÎ ¸ð´ÏÅ͸µ ¹æ¹ýÀÎ Ä¿¸Çµå¶óÀÎ ¸í·É¾îµéÀ» ÅëÇÑ ¸ð´ÏÅ͸µ¿¡ ´ëÇØ ¾Ë¾Æº¸ÀÚ.

Ä¿¸Çµå¶óÀÎ ¸í·É¾îµéÀ» ÅëÇÑ ¸ð´ÏÅ͸µ

Ä¿¸Çµå¶óÀÎ ¸í·É¾îµéÀ» ÅëÇÑ ¸ð´ÏÅ͸µÀÇ °¡Àå Å« ÀåÁ¡Àº ¾î¶² ȯ°æ¿¡¼­µµ ¼öÇàÀÌ °¡´ÉÇÏ¸ç °¡Àå ºü¸£°í Á¤È®ÇÏ°Ô ÀÚ½ÅÀÌ ¿øÇÏ´Â ¹Ù¸¦ ¾Ë¾Æ³¾ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. MySQLÀÇ Ä¿¸Çµå¶óÀÎ ÇÁ·Î±×·¥°ú °¢Á¾ SHOW ¸í·É¾îµé¿¡ ´ëÇØ ÀÚ¼¼È÷ »ìÆ캸ÀÚ.

mysqladmin
mysqladminÀº MySQL µ¥ÀÌÅͺ£À̽ºÀÇ Ä¿¸Çµå¶óÀÎ ±â¹ÝÀÎ °ü¸®ÀÚ ÇÁ·Î±×·¥ÀÌ´Ù. MysqladminÀ» ÅëÇØ ½Ã½ºÅÛÀÇ ÇöÀç ¼³Á¤ »óȲ°ú µ¿ÀÛ »óȲÀ» ¸ð´ÏÅ͸µÇÒ ¼ö ÀÖ´Ù. <Ç¥ 1>Àº mysqladminÀ» ÅëÇØ ¼öÇàÇÒ ¼ö ÀÖ´Â ¼º´É°ü·Ã ¸í·É¾îµéÀÌ´Ù.

¸í·É¾î ³»¿ë
extended-status MySQL µ¥ÀÌÅͺ£À̽ºÀÇ ÇöÀç »óȲÀ» º¸¿©ÁØ´Ù.
flust-hosts MySQL¿¡ ij½ÃµÈ ¸ðµç Æ÷½ºÆ®¸¦ ÃʱâÈ­ÇÑ´Ù.
flust-logs MySQLÀÇ ·Î±× ÆÄÀÏÀ» »õ·Î ÀÛ¼ºÇϸç ÃʱâÈ­ÇÑ´Ù.
flust-status MySQLÀÇ »óÅÂÁ¤º¸¸¦ ÃʱâÈ­ÇÑ´Ù.
flust-tables MySQL¿¡ ij½ÌµÈÅ×À̺í Á¤º¸¸¦ ÃʱâÈ­ÇÑ´Ù.
flust-thread ¾²·¹µå ij½Ã¿¡ ÀúÀåµÈ ¾²·¹µå¸¦ ÃʱâÈ­ÇÑ´Ù.
flust-privileges ±ÇÇÑÁ¤º¸ Å×À̺íÀ» ´Ù½Ã Àд´Ù.
kill id ƯÁ¤ MySQL ÇÁ·Î¼¼½º¸¦ Á×ÀδÙ.
Processlist ÇöÀç MySQL ÇÁ·Î¼¼½º ¸ñ·ÏÀº º»´Ù.
Refresh ÇöÀç ij½ÃµÇ¾î ÀÖ´Â ¸ðµç Å×À̺íÀ» ÃʱâÈ­ÇÏ°í log ÆÄÀÏÀº »õ·Î ¸¸µç´Ù.
Variables ¼³Á¤ °¡´ÉÇÑ ¸ðµç º¯¼ö¸¦ º¸¿©ÁÝ´Ï´Ù.


<È­¸é 1> SHOW VARIABLES·Î ÅëÇØ º» ¼³Á¤


<È­¸é 2> SHOW STATUS·Ñ ÅëÇØ º» ¼­¹öÀÇ »ç¿ë Åë°è
SHOW ENGINES
MySQLÀÇ °¡Àå Å« Ư¡ Áß Çϳª´Â ¿©·¯ °¡Áö ½ºÅ丮Áö ¿£ÁøÀ» °¡Áö°í ÀÖ´Ù´Â °ÍÀÌ´Ù. ÀÌ ¸í·ÉÀº ÇöÀç MySQLÀÇ ½Ã½ºÅÛÀÌ ¾î¶² ½ºÅ丮Áö ¿£ÁøÀ» »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö º¸¿©ÁØ´Ù.

mysql >SHOW ENGINES
+----------------+---------+----------------------------------------------------------------+
| Engine | Support | Comment |
+----------------+---------+----------------------------------------------------------------+
| MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance |
| HEAP | YES | Alias for MEMORY |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables |
| MERGE | YES | Collection of identical MyISAM tables |
| MRG_MYISAM | YES | Alias for MERGE |
| ISAM | NO | Obsolete storage engine, now replaced by MyISAM |
| MRG_ISAM | NO | Obsolete storage engine, now replaced by MERGE |
| InnoDB | YES | Supports transactions, row-level locking, and foreign keys |
| INNOBASE | YES | Alias for INNODB |
| BDB | NO | Supports transactions and page-level locking |
| BERKELEYDB | NO | Alias for BDB |
| NDBCLUSTER | NO | Clustered, fault-tolerant, memory-based tables |
| NDB | NO | Alias for NDBCLUSTER |
| EXAMPLE | NO | Example storage engine |
| ARCHIVE | YES | Archive storage engine |
| CSV | NO | CSV storage engine |
| BLACKHOLE | NO | Storage engine designed to act as null storage |
+----------------+---------+----------------------------------------------------------------+

SHOW VARIABLES
MySQLÀº ¼³Á¤ °¡´ÉÇÑ °ªµéÀ» ¾öû³ª°Ô ¸¹ÀÌ °¡Áö°í ÀÖÀ¸¸ç SHOW VARIABLE ¸í·ÉÀ» ÅëÇØ ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â ¸ðµç °ªÀ» º¼ ¼ö ÀÖ´Ù. <È­¸é 1>Àº SHOW VARIABLES·Î ÅëÇØ »ìÆ캻 ¼³Á¤ÀÌ´Ù.
SHOW VARIABLES·Î º¼ °æ¿ì ÃÑ 207°³ Á¤µµÀÇ º¯¼ö°¡ Ç¥½ÃµÈ´Ù. ¿ÀÈ÷·Á ³Ê¹« ¸¹¾Æ¼­ ¿øÇÏ´Â °ªÀ» ã±â°¡ Èûµé Á¤µµÀÌ´Ù. ±×·¡¼­ SHOW VARIABLES ¸í·É µÚ¿¡ LIKE ¡®%Å°¿öµå%¡¯¸¦ »ç¿ëÇÏ¸é ¿øÇÏ´Â °ª¸¸À» º¼ ¼ö ÀÖ´Ù.

SHOW STATUS
MySQLÀº ³»ºÎÀûÀ¸·Î µ¿ÀÛ »óȲ¿¡ ´ëÇÑ ½Ç½Ã°£ Åë°è Á¤º¸¸¦ °¡Áö°í ÀÖ´Ù. SHOW STATUS´Â ÀÌ·¯ÇÑ Åë°è Á¤º¸¸¦ º¸±â À§ÇÑ ¸í·ÉÀÌ´Ù. ¸ð´ÏÅ͸µÇÒ ¶§ °¡Àå ±âº»ÀÌ µÇ´Â °ÍÀÌ ¹Ù·Î ¾Õ¿¡¼­ ¼³¸íÇÑ SHOW VARIABLESÀÇ Á¤º¸¿Í SHOW STATUSÀÇ Á¤º¸ÀÌ´Ù. À¥ ±â¹ÝÀÇ ¸ð´ÏÅ͸µ ÅøÀ» ºñ·ÔÇÑ °¢Á¾ ¸ð´ÏÅ͸µ ÅøµéÀÌ ¹Ù·Î ÀÌ µÎ ¸í·É¾î¸¦ ÅëÇØ ³ª¿Â Á¤º¸¸¦ Á¶ÇÕÇØ »ç¿ëÇÏ´Â °ÍÀÌ´Ù. SHOW STATUSµµ SHOW VARIABLES¿Í ¸¶Âù°¡Áö·Î LIKE ¡®%Å°¿öµå%¡¯ »ç¿ëÇØ ¿øÇÏ´Â °ª¸¸À» º¼ ¼ö ÀÖ´Ù.

SHOW PROCESSLIST
ÇöÀç µ¿ÀÛÇÏ°í ÀÖ´Â MySQL µ¥ÀÌÅͺ£À̽º ¼­¹öÀÇ µ¿ÀÛÁßÀÎ ¸ðµç ¾²·¹µå¿Í À¯Àú Ä¿³Ø¼Ç Á¤º¸¸¦ º¸±â À§ÇÑ ¸í·É¾îÀÌ´Ù. À̸¦ ÅëÇØ ¾ò¾îÁø Á¤º¸·Î ½Ã½ºÅÛ ÀÚ¿øÀ» Áö³ªÄ¡°Ô ¸¹ÀÌ »ç¿ëÇϰųª À߸øµÈ ¼öÇàÀ» ÇÏ°í ÀÖ´Â ÇÁ·Î¼¼½º¸¦ Á×ÀÏ ¼ö ÀÖ´Ù.

SHOW TABLE/TABLE STATUS/INDEX/INNODB STATUS
SHOW TABLE ¸í·ÉÀº ÇöÀç µ¥ÀÌÅͺ£À̽º¿¡ Á¸ÀçÇÏ´Â Å×ÀÌºí¿¡ ´ëÇÑ ±âº»ÀûÀÎ Á¤º¸¸¦ º¸¿©ÁÖ¸ç SHOW TABLE STATUS´Â °¢ Å×À̺íÀÇ »ý¼º ÀÏÀÚ, Å×À̺í Å©±â, À妽º Å©±â µî ±¸Ã¼ÀûÀÎ Á¤º¸¸¦ º¸¿©ÁØ´Ù. ÇÏÁö¸¸ ÀÌ ¶§ ÁÖÀÇÇÒ Á¡ÀÌ Çϳª Àִµ¥ ¹Ù·Î SHOW TABLE STATUSÀÇ °æ¿ì Å×À̺íÀÇ ½ºÅ丮Áö ¿£ÁøÀÌ MyISAMÀÎ °æ¿ì¿¡¸¸ Á¤È®ÇÑ Á¤º¸¸¦ Ç¥½ÃÇϸç InnoDBÀÇ °æ¿ì¿¡´Â ºÎÁ¤È®ÇÑ Á¤º¸¸¦ º¸¿©Áشٴ °ÍÀÌ´Ù. InnoDB ½ºÅ丮Áö ¿£ÁøÀ¸·Î µÇ¾î ÀÖ´Â Å×À̺íÀº SHOW INNODB STATUS·Î ±¸Ã¼ÀûÀÎ Á¤º¸¸¦ È®ÀÎÇÒ ¼ö ÀÖÀ¸¸ç SHOW INDEX¸¦ ÅëÇØ Å×À̺íÀÇ À妽º¿¡ ´ëÇÑ °¢Á¾ Á¤º¸¸¦ º¼ ¼ö ÀÖ´Ù.


<È­¸é 3> Server Connetion¿¡¼­ ¾²·¹µåº° Á¤º¸¸¦ º¸´Â È­¸é

<È­¸é 4> MySQL Administrator¸¦ ÅëÇØ Ä¿³Ø¼Ç °ü·Ã Á¤º¸¸¦ ½Ç½Ã°£ ¸ð´ÏÅ͸µÇÑ´Ù.
GUI ±â¹ÝÀÇ ¸ð´ÏÅ͸µ
±×µ¿¾È MySQLÀÇ °æ¿ì¿¡´Â GUI ±â¹ÝÀÇ °ü¸® Åø¿¡ ´ëÇÑ Áö¿øÀÌ ¸Å¿ì ¹Ì¾àÇß´ø °ÍÀÌ »ç½ÇÀÌ´Ù. ÇÏÁö¸¸ ¿ÃÇØ ÃÊ 4.1 ¹öÀü ¹ßÇ¥ ÀÌÈÄ ¿¬¼ÓÀûÀ¸·Î GUI ±â¹ÝÀÇ °ü¸® ÅøÀ» ¹ßÇ¥µÇ¾úÀ¸¸ç ±× ¿Ï¼ºµµ ¶ÇÇÑ ÀÌÀüÀÇ ¿©·¯ GUI ÇÁ·Î±×·¥µé¿¡ ºñÇØ ºñ¾àÀûÀÎ Çâ»óÀ» °¡Á®¿Ô´Ù. ºü¸£°í Á¤È®ÇÑ Á¤º¸ÀÇ È®ÀÎÀ» À§ÇØ Ä¿¸Çµå¶óÀÎ °ü¸® ÅøµéÀÌ À¯¿ëÇÏÁö¸¸ »ç½Ç ÀϹÝÀûÀÎ ¸ð´ÏÅ͸µ¿¡´Â GUI ±â¹ÝÀÇ ¸ð´ÏÅ͸µ ÅøÀÇ »ç¿ëÀÌ ÈξÀ ÆíÇÏ´Ù. MySQLÀÌ »õ·Ó°Ô ³»³õÀº GUI ±â¹Ý Åø Áß ¸ð´ÏÅ͸µÀ» À§ÇØ ÀÌ¿ëÇÒ ¼ö ÀÖ´Â ÅøÀº MySQL Administrator¿Í MySQL Query BrowserÀÌ´Ù.

MySQL Administrator
MySQLÀÇ GUI ±â¹Ý °ü¸® ÅøÀÎ MySQL Administrator´Â ±âÁ¸ÀÇ GUI °ü¸® Åø°ú´Â ´Þ¸® ¸Å¿ì ´Ù¾çÇÑ °ü¸® ¾÷¹«¿Í ¸ð´ÏÅ͸µ ÀÛ¾÷À» Æí¸®ÇÏ°Ô Áö¿øÇÑ´Ù. ÀÌ Áß °¡Àå µ¸º¸ÀÌ´Â ±â´ÉÀº ¸ð´ÏÅ͸µ ±â´ÉÀε¥ ÀÌ Åø·Î ÀÎÇØ MySQL Æ©´× ÀÛ¾÷ÀÌ µÎ ¹è´Â Æí¸®ÇØÁ³´Ù°í ¸»ÇÒ ¼ö ÀÖÀ» Á¤µµÀÌ´Ù. MySQL AdministratorÀÇ ¸ð´ÏÅ͸µ °ü·Ã ¸Þ´º´Â Server Connections, Health, Server Logs µî ÀÌ·¸°Ô ¼¼ °¡Áö°¡ ÀÖ´Ù. <È­¸é 3>°ú °°ÀÌ Server ConnectionÀº Ä¿¸Çµå¶óÀÎ ¸í·É Áß SHOW PROCESSLIST¿Í °°Àº ¿ªÇÒ°ú ÇÔ²² °¢ À¯Àú º° Á¢¼Ó ÇöȲÀ» ¾Ë ¼ö ÀÖ´Ù.

MySQL AdministratorÀÇ ¸ð´ÏÅ͸µ ±â´ÉÀÇ ¹é¹Ì´Â ¹Ù·Î Health ¸Þ´ºÀÌ´Ù. Health ¸Þ´º¿¡¼­´Â ±âº»ÀûÀ¸·Î Connection Health, Memory Health, Status Variables, System Variables µî ³× °¡Áö Ç׸ñÀ» °¡Áö°í ÀÖÀ¸¸ç ÀÌÀü Ä¿¸Çµå¶óÀÎ ¸ð´ÏÅ͸µ¿¡¼­ ÇÏ´ø ´ëºÎºÐÀÇ ¸ð´ÏÅ͸µ ÀÛ¾÷À» ¿©±â¼­ ¼öÇàÇÒ ¼ö ÀÖ´Ù. ±×¸®°í °¡Àå Å« Ư¡À̶ó¸é ±âº»ÀûÀ¸·Î º¸¿©ÁÖ´Â ÁÖ¿ä »çÇ׿¡ ´ëÇÑ ¸ð´ÏÅ͸µ ¿Ü¿¡µµ SHOW STATUS¸¦ ÅëÇØ º¼ ¼ö ÀÖ´Â ¸ðµç Ç׸ñ¿¡ ´ëÇÑ ¸ð´ÏÅ͸µ ±×·¡ÇÁ¸¦ Ãß°¡ÇÒ ¼ö ÀÖ´Ù´Â °ÍÀÌ´Ù. À̸¦ ÅëÇØ Á÷°üÀûÀÎ È­¸é»óÀÇ º¯È­¸¦ º¸¸ç »ç¿ëÀÚ ¼öÀÇ º¯È­³ª ½Ã°£´ëº° º¯È­¿¡ ´ëÇÑ ½±°í ÆíÇÑ ¸ð´ÏÅ͸µÀ» ÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù.

MySQL Query Browser
MySQL Query Browser´Â ±âÁ¸ÀÇ MySQL °ü¸®ÀÚ³ª ÇÁ·Î±×·¡¸ÓµéÀÌ ¸¹ÀÌ ÀÌ¿ëÇÏ´ø SQLGate¿Í ºñ½ÁÇÑ ¿ªÇÒÀ» ¼öÇàÇÏ´Â ÇÁ·Î±×·¥ÀÌ´Ù. GUI »ó¿¡¼­ MySQL Äõ¸®µéÀ» ¼öÇàÇÒ ¼ö ÀÖÀ¸¸ç ¿©·¯ ÅÇÀ» ÀÌ¿ëÇØ ºü¸¥ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ°Ô µÇ¾ú´Ù. ¶ÇÇÑ µµ¿ò¸»°ú ¸í·É¾îµé¿¡ ´ëÇÑ ÇÏÀ϶óÀÌÆÃÀ» Áö¿øÇÔÀ¸·Î½á Æí¸®ÇÏ°í Á¤È®ÇÑ ÀÛ¾÷À» ÇÒ ¼ö ÀÖ´Ù. ¾ÕÀÇ Ä¿¸Çµå¶óÀÎ ¸í·É¾îµéÀ» ¿©±â¿¡¼­ ¸ðµÎ ½ÇÇàÇØ º¼ ¼ö ÀÖ´Ù. Ãʱ⠹öÀü¿¡¼­´Â ÇѱÛÀ» ÀÔ·ÂÇÏ¸é ´Ù¿îµÇ´Â µîÀÇ Ä¡¸íÀûÀÎ ¹ö±×°¡ ÀÖ¾úÀ¸³ª Áö±ÝÀº ¼öÁ¤µÇ¾î ¿ì¸®³ª¶óÀÇ »ç¿ëÀڵ鵵 ÀÚÀ¯·Ó°Ô »ç¿ëÇÒ ¿©°ÇÀÌ µÇ¾ú´Ù.

·Î±×¸¦ ÅëÇÑ ¸ð´ÏÅ͸µ

ÀûÀýÇÑ ¼öÁØÀÇ ·Î±×¸¦ ³²±â´Â °ÍÀº ºü¸£°í °Ç°­ÇÑ MySQLÀ» À¯ÁöÇÏ´Â ºñ°áÀÌ´Ù. ÀϹÝÀûÀ¸·Î ¿î¿µµÇ´Â ¼­¹ö¶ó¸é ¿¡·¯ ·Î±×¿Í ½½·Î¿ì Äõ¸® ·Î±×¸¦ ³²±â´Â Á¤µµ·Î ÃæºÐÇÏÁö¸¸ ¼­ºñ½º¸¦ À§ÇÑ ½ÃÇè ±â°£À̰ųª ¹®Á¦¸¦ ã´Â ½ÃÁ¡À̶ó¸é ÀÏ¹Ý Äõ¸® ·Î±×(General Query Log)¸¦ ³²°Ü ¾î¶² Äõ¸®°¡ °¡Àå ¸¹ÀÌ »ç¿ëµÇ´ÂÁö ÆľÇÇÏ°í ±× Äõ¸®¸¦ ´õ ºü¸£°Ô ÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ¾ø´ÂÁö¸¦ ã´Â °ÍÀº µ¥ÀÌÅͺ£À̽º ÃÖÀûÈ­ÇÏ´Â ÁÁÀº ¹æ¹ý Áß ÇϳªÀÌ´Ù. ÀϹÝÀûÀ¸·Î MySQLÀ» »ç¿ëÇÏ´Â »ç¿ëÀÚµéÀÇ °æ¿ì ±âº»ÀûÀ¸·Î Áö¿øÇÏ´Â ¿¡·¯ ·Î±×¸¸À» ³²±â°í ½½·Î¿ì Äõ¸® ·Î±×¸¦ ³²±âÁö ¾Ê´Â °æ¿ì°¡ ¸¹Àºµ¥ ½½·Î¿ì Äõ¸®´Â MySQLÀÇ ¼º´ÉÀ» ¶³¾î¶ß¸®´Â ÁÖ¹üÀÌ´Ù. ¹Ýµå½Ã ½½·Î¿ì Äõ¸® ·Î±×¸¦ ³²±â°í È®ÀÎÇØ °³¼±Á¡À» ãµµ·Ï ÇÏÀÚ.


<È­¸é 5> MySQL Auery Browser
MySQL ¼­¹ö Æ©´×

MySQLÀÇ Æ©´×Àº MySQLÀÇ µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ °ü·Ã ÆĶó¹ÌÅ͵鿡 ´ëÇÑ Æ©´×°ú °¢°¢ÀÇ ½ºÅ丮Áö ¿£Áø °ü·Ã Æ©´×À¸·Î ³ª´²Áø´Ù. À̹ø È£¿¡¼­´Â MySQLÀÇ µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ Áï MySQL Àüü ¼º´É¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â Æ©´×¿¡ ´ëÇØ ¾Ë¾Æº¸°í °¢°¢ÀÇ ½ºÅ丮Áö ¿£Áø¿¡ ´ëÇÑ Æ©´×°ú ÃÖÀûÈ­´Â ´ÙÀ½ È£¿¡ ¾Ë¾Æº¸ÀÚ. MySQLÀÇ ½Ã½ºÅÛ °ü·Ã Æ©´×Àº MySQLÀÇ ¼³Á¤ ÆÄÀÏÀÎ my.cnf(À©µµ¿ìÀÇ °æ¿ì´Â my.ini) ÆÄÀÏÀ» ¼öÁ¤ÇÏ°Ô µÇ¸ç MySQL Ä¿³Ø¼Ç¿¡ °üÇÑ ºÎºÐ°ú ¸Þ¸ð¸®¿¡ °üÇÑ ºÎºÐÀ¸·Î ³ª´­ ¼ö ÀÖ´Ù. ¸ÕÀú Ä¿³Ø¼Ç¿¡ °üÇÑ ºÎºÐºÎÅÍ »ìÆ캸ÀÚ.

MySQL Ä¿³Ø¼Ç Æ©´×

½ÇÁ¦ÀûÀ¸·Î MySQLÀÌ °¡Àå ¸¹ÀÌ »ç¿ëµÇ´Â ºÐ¾ß¸¦ ²Å´Â´Ù¸é ¿ª½Ã ÀÎÅÍ³Ý ºÐ¾ß¶ó°í ÇÒ ¼ö ÀÖ´Ù. Æ÷Å» »çÀÌÆ®³ª °ÔÀÓ »çÀÌÆ® µî ºÎÇÏ°¡ ¸Å¿ì ¸¹ÀÌ ¹ß»ýÇÏ´Â »çÀÌÆ®¿¡¼­ °¡Àå ¹®Á¦µÇ´Â °ÍÀº MySQLÀÇ Ä¿³Ø¼Ç¿¡ °ü·ÃµÈ ¹®Á¦ÀÌ´Ù. Ä¿³Ø¼Ç¿¡ °ü·ÃµÈ ¸ð´ÏÅ͸µÀº SHOW STATUS LIKE ¡®%CONNECT%¡¯·Î ¾Ë¾Æ º¼ ¼ö ÀÖ´Ù.

mysql> SHOW STATUS LIKE ¡®%CONNECT%¡¯;
+-------------------------------+---------------+
| Variable_name | Value |
+-------------------------------+---------------+
| Aborted_connects | 12 |
| Connections | 212 |
| Max_used_connections | 112176 |
| Threads_connected | 168 |
+-------------------------------+---------------+
4 rows in set (0.00 sec)
mysql> SHOW STATUS LIKE ¡®%CLIENT%¡¯;
+-------------------------------+---------------+
| Variable_name | Value |
+-------------------------------+---------------+
| Aborted_clients | 2 |
+-------------------------------+---------------+
1 row in set (0.00 sec)

connect_timeout/interactive_timeout/wait_timeout
connect_timeoutÀº MySQLÀÌ Å¬¶óÀ̾ðÆ®·ÎºÎÅÍ Á¢¼Ó ¿äûÀ» ¹Þ´Â °æ¿ì ¸î ÃʱîÁö ±â´Ù¸±Áö¸¦ ¼³Á¤ÇÏ´Â º¯¼öÀÌ´Ù. ±âº» °ªÀº 5ÃÊÀ̸ç ÀϹÝÀûÀ¸·Î ¼öÁ¤ÇÒ ÇÊ¿ä´Â ¾ø´Ù. Interactive_timeoutÀº ¡®mysql>¡¯°ú °°Àº ÄܼÖÀ̳ª Å͹̳Π»ó¿¡¼­ÀÇ Å¬¶óÀ̾ðÆ® Á¢¼ÓÀ» ¸»ÇÑ´Ù. ±âº» °ªÀ¸·Î 8½Ã°£ÀÌ ÀâÇô ÀÖÀ¸³ª 1½Ã°£ Á¤µµ·Î ³·Ãß´Â °ÍÀÌ ÁÁ´Ù. ÀÌ·± Á¢¼ÓÀº ±×´ÙÁö ºó¹øÇÏÁö ¾ÊÀ¸¸ç ÀÛ¾÷À» À§ÇØ Á¢¼ÓÇÏ´Â °æ¿ì°¡ ¸¹±â¿¡ µû·Î ¼³Á¤ÇÏÁö ¾Ê¾Æµµ Å« ¿µÇâÀº ¾ø´Ù. °¡Àå Áß¿äÇÑ °ÍÀº wait_ timeoutÀ¸·Î wait_timeoutÀº Á¢¼ÓÇÑ ÈÄ Äõ¸®°¡ µé¾î¿Ã ¶§±îÁö ±â´Ù¸®´Â ½Ã°£ÀÌ´Ù. Á¢¼ÓÀÌ ¸¹Àº µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ¿¡¼­´Â ÀÌ °ªÀ» ³·Ãç sleep »óÅ·ΠĿ³Ø¼Ç¸¸ À¯ÁöÇÏ°í Àִ Ŭ¶óÀ̾ðÆ®µéÀÇ Á¢¼ÓÀ» ºü¸£°Ô ²÷¾îÁà µ¿½Ã Á¢¼ÓÀ» ³·Ãß´Â °ÍÀ¸·Î Àüü ¼º´ÉÀ» Å©°Ô Çâ»ó½Ãų ¼ö ÀÖ´Ù.

ÇÏÁö¸¸ ÁÖÀÇÇÒ Á¡Àº ³Ê¹« ³·Ãß°Ô µÇ¸é ½ÇÁ¦·Î ¼­ºñ½º¸¦ Çϱ⵵ Àü¿¡ ²÷¾îÁø´ÙµçÁö Áö³ªÄ¡°Ô ÀæÀº Ä¿³Ø¼ÇÀÌ ¹ß»ýÇÑ´Ù´Â °ÍÀÌ´Ù. ÀϹÝÀûÀ¸·Î 15~20 »çÀÌÀÇ °ªÀÌ Àû´çÇϸç SHOW STATUS¸¦ ÅëÇØ aborted_client°¡ °¡Àå Àû°Ô ¹ß»ýÇϵµ·Ï °ªÀ» ¸ÂÃç¾ß ÇÑ´Ù. Aborted client´Â 2% ¾Æ·¡ÀÎ °ÍÀÌ ¹Ù¶÷Á÷ÇÏ¸ç ¹°·Ð ¾ø´Â °ÍÀÌ °¡Àå ÁÁÀº »óÅÂÀÌ´Ù.

net_buffer_length/max_allowed_packet
MySQLÀÇ Ä¿³Ø¼ÇÀº ¾²·¹µå ´ÜÀ§·Î ÀϾ´Âµ¥ °¢ ¾²·¹µå°¡ »ý¼ºµÇ¸é¼­ ¸Þ½ÃÁö Àü¼ÛÀ» À§ÇÑ ¹öÆÛ¸¦ »ý¼ºÇÏ°Ô µÈ´Ù. ÀϹÝÀûÀ¸·Î max_allowed_packet¸¸À» Á¤ÇØ ³õ´Â °æ¿ì°¡ ¸¹Àºµ¥ net_buffer_ length¸¦ ¼³Á¤ÇØ µÎ¸é ±× ¿ë·®À» ³Ñ´Â ¸Þ½ÃÁö¸¦ Àü´ÞÇØ¾ß ÇÒ °æ¿ì ÀÚµ¿À¸·Î ÀÌ °ªÀ» ´Ã¸®°Ô µÈ´Ù. ±×·¯¹Ç·Î °¡Àå È¿À²À» ³ôÀ̱â À§Çؼ­´Â net_buffer_length¸¦ ÀϹÝÀûÀÎ Äõ¸®¿¡¼­ Àü¼ÛµÇ´Â ¹ÙÀÌÆ® °ªÀÇ Æò±Õ Á¤µµ¸¦ »ý°¢ÇÏ¿© ÃæºÐÈ÷ ³·Àº °ªÀ» ¼³Á¤Çصΰí max_allowed_ packetÀº ÃÖ´ë·Î Àü¼ÛµÉ ¼ö ÀÖ´Â ³ôÀº °ªÀ» ¼³Á¤ÇÏ´Â °ÍÀÌ ÁÁ´Ù. max_allowed_packetÀº 1GB±îÁö ¼³Á¤ÇÒ ¼ö ÀÖ´Ù.

max_connections/back_log
max_connections´Â ¼­¹ö°¡ Çã¿ëÇÏ´Â ÃÖ´ëÇÑÀÇ Ä¿³Ø¼Ç ¼öÀÌ´Ù. MySQL µ¥ÀÌÅͺ£À̽º¸¦ ¿î¿µÇÏ°í ÀÖ´Â ¼­¹öÀÇ »ç¾ç¿¡ µû¶ó ´Þ¶óÁú ¼ö ÀÖÀ¸¸ç ÀϹÝÀûÀ¸·Î 120~250°³ Á¤µµ·Î ¼³Á¤ÇÏ´Â °ÍÀÌ º¸ÅëÀÌ´Ù. ÇÏÁö¸¸ Á¢¼ÓÀÌ ¸¹°í °í¿ë·® ¼­¹öÀÇ °æ¿ì 1000°³ Á¤µµÀÇ ³ôÀº °ªÀ» ¼³Á¤ÇÏ´Â °Íµµ °¡´ÉÇÏ´Ù. Too many connection ¿¡·¯°¡ ¹ß»ýÇÏÁö ¾Êµµ·Ï ÀûÀýÇÑ °ªÀ» ¼³Á¤ÇÏ´Â °ÍÀÌ Áß¿äÇÏ´Ù. Back_logÀÇ °æ¿ì max_connection ÀÌ»óÀÇ Á¢¼ÓÀÌ ¹ß»ýÇÒ ¶§ ¾ó¸¶¸¸Å­ÀÇ Ä¿³Ø¼ÇÀ» Å¥¿¡ º¸°üÇÒÁö¿¡ ´ëÇÑ ¼³Á¤ °ªÀÌ´Ù. ±âº» °ªÀº 50À̸ç Á¢¼ÓÀÌ ¸¹Àº ¼­¹öÀÇ °æ¿ì ÀÌ °ªÀ» ´Ã¸± ÇÊ¿ä°¡ ÀÖ´Ù.

skip-name-resolve
¿ÜºÎ·ÎºÎÅÍ Á¢¼Ó ¿äûÀ» ¹ÞÀ» °æ¿ì ÀÎÁõÀ» À§ÇØ IP¸¦ È£½ºÆ®³×ÀÓÀ¸·Î ¹Ù²Ù´Â °úÁ¤ÀÌ ¼öÇàµÈ´Ù. ¸»ÇÏÀÚ¸é hostname lookup °úÁ¤ÀÌ ¼öÇàµÇ´Âµ¥ Á¢¼ÓÀÌ ¸¹Àº ¼­¹ö¿¡¼­´Â ÀÌ °úÁ¤¿¡¼­ »ó´çÈ÷ ¸¹Àº °úºÎÇÏ°¡ ¹ß»ýÇÑ´Ù. ±×·¯¹Ç·Î ÀÎÁõ ºÎºÐÀ» È£½ºÆ® ±â¹ÝÀÌ ¾Æ´Ñ IP ±â¹ÝÀ¸·Î º¯°æÇÏ°í ÀÌ °°Àº ¿É¼ÇÀ» ÅëÇØ hostname lookup °úÁ¤À» »ý·«ÇÏ¸é ´«¿¡ ¶ç´Â ¼º´É Çâ»óÀ» °æÇèÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.

MySQL ¸Þ¸ð¸® Æ©´×

»ç½Ç µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ Æ©´×Àº ¸Þ¸ð¸® °ü·Ã ÆĶó¹ÌÅ͸¦ Á¶Á¤ÇÏ´Â °ÍÀÌ 90% Á¤µµ¸¦ Â÷ÁöÇÑ´Ù°í ÇÒ ¼ö ÀÖÀ» Á¤µµ·Î µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛÀÇ ¼º´ÉÀº ¸Þ¸ð¸® °ü·Ã ¼³Á¤µé¿¡ Å« ¿µÇâÀ» ¹Þ´Â´Ù. MySQLÀÇ ¸Þ¸ð¸® ºÎºÐ Æ©´×Àº »ç½Ç ´ëºÎºÐ ½ºÅ丮Áö ¿£Áø¿¡ ƯȭµÈ ºÎºÐÀÌ´Ù. ÇÏÁö¸¸ ½Ã½ºÅÛ Àüü¿¡ ¿µÇâÀ» ¹ÌÄ¡´Â ¸Þ¸ð¸® ¼³Á¤ÀÌ Àִµ¥ ¾²·¹µå °ü·Ã ¸Þ¸ð¸® ¼³Á¤°ú Äõ¸® ij½Ã°ü·Ã ¸Þ¸ð¸® ¼³Á¤ÀÌ ±×·¯ÇÏ´Ù. ¸ÕÀú ¾²·¹µå °ü·ÃµÈ ¸Þ¸ð¸® ¼³Á¤ºÎÅÍ »ìÆ캸ÀÚ

¾²·¹µå °ü·Ã ¸Þ¸ð¸® Æ©´×
MySQLÀº Ä¿³Ø¼Ç¸¶´Ù ÇϳªÀÇ ¾²·¹µå¸¦ »ý¼º½ÃÄÑ ¿äûÀ» ó¸®ÇÏ°Ô µÈ´Ù. ±×·¡¼­ ¾²·¹µå°¡ »ý¼ºµÇ´Â ½ÃÁ¡¿¡ ¾²·¹µå¿¡ ¸Þ¸ð¸®°¡ ÇÒ´çµÇ¸ç ¸¹Àº ¾²·¹µå°¡ »ý¼ºµÇ°í »ç¶óÁö¸é¼­ °úºÎÇÏ°¡ ¹ß»ýÇÑ´Ù. ÀϹÝÀûÀÎ ½Ã½ºÅÛ¿¡¼­´Â ¾²·¹µå °ü·Ã ÆĶó¹ÌÅ͵éÀÇ Á¶Á¤ÇÒ ÇÊ¿ä´Â ¾øÁö¸¸ ºÎÇÏ°¡ ½ÉÇÑ ¼­¹ö¿¡¼­´Â ¸ð´ÏÅ͸µ °á°ú¿¡ µû¶ó ÀÌ ¼³Á¤À» º¯°æÇØ ¼º´É Çâ»óÀ» ÀÌ·ê ¼ö ÀÖ´Ù. ¸ÕÀú ÇöÀç ¾²·¹µå¿Í °ü·ÃµÈ »óŸ¦ ¾Ë¾Æº¸ÀÚ.

mysql> SHOW STATUS LIKE ¡®%THREAD%¡¯;
+-------------------------------+---------------+
| Variable_name | Value |
+-------------------------------+---------------+
| Delayed_insert_threads | 0 |
| Slow_launch_threads | 0 |
| Threads_cached | 0 |
| Threads_connected | 1 |
| Threads_created | 2 |
| Threads_running | 1 |
+-------------------------------+---------------+
6 rows in set (0.00 sec)

¾Õ¿¡¼­ º¼ ¼ö ÀÖ´Â Ç׸ñ Áß Threads_connected°¡ Threads_ cached¿¡ ºñÇØ ¸Å¿ì ³ô´Ù¸é thread_cache_size¸¦ ³ô¿©ÁÙ ÇÊ¿ä°¡ ÀÖ´Ù. Thread_cache_size´Â Áö³ªÄ¡°Ô ³ô¿©µÑ ÇÊ¿ä´Â ¾øÀ¸¸ç ÀϹÝÀûÀ¸·Î threads_connectedÀÇ ÇÇÅ© Ä¡º¸´Ù ¾à°£ ³·Àº ¼öÄ¡ Á¤µµ¸¦ ¼³Á¤ÇÏ´Â °ÍÀÌ ÁÁ´Ù. À̸¦ ÅëÇØ ¾²·¹µå°¡ »ý¼ºµÇ°í ¼Ò¸êµÇ¸é¼­ °Þ°Ô µÇ´Â ¸Þ¸ð¸®, °¢Á¾ ÀÚ¿ø, ½Ã°£ µîÀÇ ³¶ºñ¸¦ ÁÙÀÏ ¼ö ÀÖ´Ù. ¾²·¹µå¿Í °ü·ÃÇØ ¶Ç Çϳª ¼³Á¤ÇÒ ¼ö ÀÖ´Â ¿É¼ÇÀº thread_concurrencyÀε¥ ÀÌ ¿É¼ÇÀº ¼Ö¶ó¸®½º ¿ÜÀÇ ½Ã½ºÅÛ¿¡¼­´Â ½Å°æ ¾µ ÇÊ¿ä°¡ ¾øÀ¸¸ç ¼Ö¶ó¸®½º¿¡¼­´Â CPU ¼ö¿¡ 2¸¦ °öÇÑ °ªÀ» ³Ö¾îÁÖ¸é µÈ´Ù.

ij½Ì °ü·Ã ¸Þ¸ð¸® Æ©´×
MySQL µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ¿¡¼­ ¸Þ¸ð¸® °ü·Ã ÁÖ¿ä ¼³Á¤µéÀº ´ëºÎºÐ ij½Ì°ú °ü·ÃµÈ ÆĶó¹ÌÅ͵éÀÌ´Ù. ¹öÆÛ Ç®(buffer pool) Å©±â, Å° ij½Ã(key cache) Å©±â, Äõ¸® ij½Ã Å©±â µîÀÌ Àִµ¥, ÀÌ Áß ¾ÕÀÇ µÎ °³´Â InnoDB¿Í MyISAMÀÇ ÇÙ½É ÆĶó¹ÌÅÍÀ̱⿡ ´ÙÀ½ È£¿¡ ¼³¸íÇÏ°Ô µÇ¸ç ¿©±â¼­ »ìÆ캼 Ç׸ñÀº ¹Ù·Î Äõ¸® ij½Ã¿¡ °üÇÑ ºÎºÐÀÌ´Ù.

Äõ¸® ij½Ã¶õ?

Äõ¸® ij½Ã¶õ ºó¹øÇÏ°Ô ¼öÇàµÇ´Â Select °ü·Ã Äõ¸®¿Í Äõ¸®ÀÇ °á°ú¸¦ Àӽà ÀúÀåÇϴ ij½Ã ¸Þ¸ð¸®ÀÌ´Ù. µ¥ÀÌÅͺ£À̽º ½Ã½ºÅÛ¿¡¼­ °¡Àå ½Ã°£ÀÌ ¸¹ÀÌ °É¸®´Â °ÍÀº ¹Ù·Î µð½ºÅ©¸¦ ¾×¼¼½ºÇÏ´Â ÀÛ¾÷ÀÌ´Ù. ±×·¯¹Ç·Î µð½ºÅ©¸¦ ¾×¼¼½ºÇÏ´Â ÀÛ¾÷À» ÁÙÀÌ´Â °ÍÀÌ °¡Àå Å©°Ô ¼º´ÉÀ» ¿Ã¸®´Â °ÍÀÌ´Ù. Äõ¸® ij½Ã´Â Select Äõ¸®¿¡¸¸ ÇØ´çµÇ¸ç Äõ¸® ij½Ã¸¦ »ç¿ëÇÏÁö ¾Ê°Ô µÇ°Å³ª Äõ¸® ij½Ã¿¡ ÀúÀåµÈ ³»¿ëÀ» ÃʱâÈ­ÇÏ°Ô µÇ´Â °æ¿ì´Â ´ÙÀ½°ú °°´Ù.

¡ß µ¥ÀÌÅͳª Å×ÀÌºí ±¸Á¶°¡ º¯°æµÇ¾úÀ» ¶§
¡ß Äõ¸® ij½Ã¿¡ ÀúÀåµÈ °Í°ú ´Ù¸¥ Äõ¸®°¡ Á¢¼öµÇ¾úÀ» ¶§
¡ß ÇϳªÀÇ Æ®·£Àè¼ÇÀÌ commit°ú ÇÔ²² ¸¶¹«¸®µÇ¾úÀ» ¶§
¡ß Äõ¸®°¡ ³»ºÎÀûÀ¸·Î Àӽà Å×À̺íÀ» »ý¼ºÇØ¾ß ÇÒ ¶§

Çö½ÇÀûÀ¸·Î ¾î·Á¿î À̾߱âÁö¸¸ ÀÌ °°Àº °æ¿ì´Â ÁÙÀ̸é ÁÙÀϼö·Ï Äõ¸® ij½ÃÀÇ »ç¿ë·ü°ú È¿À²À» ³ô¿© ´õ ºü¸¥ ¼º´ÉÀ» ±â´ëÇÒ ¼ö ÀÖ´Ù.

Äõ¸® ij½ÃÀÇ »ç¿ë

¸ÕÀú ÇöÀç »ç¿ëÇÏ°í ÀÖ´Â MySQLÀÌ Äõ¸® ij½Ã¸¦ Áö¿øÇÏ´Â ¹öÀüÀÎÁö ¾Æ´ÑÁö È®ÀÎÇÏÀÚ.

mysql> SHOW VARIABLES LIKE ¡®HAVE_QUERY_CACHE¡¯;
+-------------------------------+---------------+
| Variable_name | Value |
+-------------------------------+---------------+
| have_query_cache | YES |
+-------------------------------+---------------+
1 row in set (0.00 sec)

¸¸¾à Äõ¸® ij½Ã°¡ ¾ø´Â MySQL ¹öÀüÀ» »ç¿ëÇÏ°í ÀÖ´Ù¸é °¡´ÉÇÏ¸é ¾÷±×·¹À̵带 Çϵµ·Ï ÇÑ´Ù. °¡Àå ½±°í È®½ÇÇÑ ¼º´É Çâ»ó¹ýÀº ÃֽŠ¹öÀüÀÇ ¼ÒÇÁÆ®¿þ¾î¸¦ »ç¿ëÇÏ´Â °ÍÀ̶ó´Â °ÍÀ» ÀØÁö ¸»ÀÚ. MySQLÀÇ °æ¿ì ƯÈ÷ 4.1 ¹öÀü ÀÌÈÄ·Î ¸¹Àº ºÎºÐ¿¡ ÀÖ¾î ¼º´É°ú ±â´ÉÀÌ Çâ»óµÇ¾ú´Ù. ¾ÆÁ÷µµ 3.x ¹öÀüÀ» »ç¿ëÇÏ°í ÀÖ´Ù¸é À̹ø ±âȸ¿¡ ¾÷±×·¹À̵带 °í·ÁÇØ º¸´Â °ÍÀÌ ÁÁ´Ù.

Äõ¸® ij½Ã¸¦ Áö¿øÇÏ´Â ¹öÀüÀÏ °æ¿ì ¡®query_cache_size=64M¡¯¿Í °°Àº ¹æ½ÄÀ¸·Î Á¤È®ÇÑ Äõ¸® ij½Ã Å©±â¸¦ Á¤ÇØ ÁÖ´Â °Í¸¸À¸·Î Äõ¸® ij½Ã¸¦ »ç¿ëÇÏ°Ô µÈ´Ù. ±×¸®°í Äõ¸® ij½ÃÀÇ µ¿ÀÛ ¹æ½ÄÀ» Á¤ÇØÁÖ´Â ¿É¼ÇÀ¸·Î query_cache_typeÀ̶ó´Â ¿É¼ÇÀÌ Àִµ¥ 0Àº Äõ¸® ij½Ã¸¦ ºñÈ°¼ºÈ­½ÃÅ°°Ô µÇ°í 1Àº »ç¿ë °¡´ÉÇÑ ¸ðµç Äõ¸®°¡ Äõ¸® ij½Ã¸¦ ÀÌ¿ëÇÏ°Ô µÇ¸ç, 2´Â Äõ¸® ij½Ã¸¦ ÀÌ¿ëÇ϶ó°í Á¤ÇØÁÖ´Â Äõ¸®¸¸ Äõ¸® ij½Ã¸¦ ÀÌ¿ëÇÏ°Ô µÈ´Ù. 2ÀÇ °æ¿ì´Â Äõ¸®¹® µÚ¿¡ SQL_CACHE¶ó°í µ¡ºÙ¿©ÁÖ¸é µÈ´Ù.

Äõ¸® ij½Ã ÃÖÀûÈ­

µ¥ÀÌÅͺ£À̽º °ü·Ã ¸ðµç ¸Þ¸ð¸® ¼³Á¤Àº ³ô´Ù°í ´Ù ÁÁÀº °ÍÀÌ ¾Æ´Ï´Ù. Áß¿äÇÑ °ÍÀº ±ÕÇü °ªÀ» ã¾Æ³»´Â °ÍÀÌ´Ù. ¿Ö³ÄÇϸé Äõ¸® ij½Ã¿Í MyISAMÀÇ Å° ij½Ã, InnoDBÀÇ ¹öÆÛ Ç®Àº ¼ÒÁßÇÑ ¸Þ¸ð¸® °ø°£À» ³õ°í ¼­·Î °æÀïÇÏ´Â °ü°èÀ̱⠶§¹®ÀÌ´Ù.

¸ÕÀú Äõ¸® ij½Ã Å©±â¸¦ °áÁ¤ÇØ¾ß ÇÑ´Ù. ÀϹÝÀûÀ¸·Î ½Ã½ºÅÛ Àüü ¸Þ¸ð¸®ÀÇ 5%¿¡¼­ 10% »çÀ̸¦ »ç¿ëÇÏ´Â °ÍÀÌ º¸ÅëÀÌ´Ù. ÀÏ´Ü ÀÌ »çÀÌÀÇ °ªÀ¸·Î ¼³Á¤ÇÑ ÈÄ ¸ð´ÏÅ͸µÀ» ÅëÇØ Äõ¸® ij½Ã »ç¿ë·üÀÌ 100%¿¡ °¡±õµµ·Ï ÇÏ´Â °ÍÀÌ ÁÁ´Ù. À̸¦ ¸ð´ÏÅ͸µÇÏ´Â °¡Àå ÁÁÀº ¹æ¹ýÀº MySQL Administrator¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î MySQL Administ ratorÀÇ Health ºÎºÐ¿¡¼­ Äõ¸® ij½ÃÀÇ È¿À²À» Áö¼ÓÀûÀ¸·Î ¸ð´ÏÅ͸µÇÒ ¼ö Àֱ⠶§¹®ÀÌ´Ù.
´ÙÀ½À¸·Î Äõ¸® ij½Ã¿¡¼­ ¹Þ¾ÆµéÀÏ Äõ¸®ÀÇ ÃÖ´ë Å©±â¸¦ ¼³Á¤ÇÏ´Â °ÍÀÌ ÇÊ¿äÇÏ´Ù. Query_cache_limit ¿É¼ÇÀ¸·Î½á ±âº» °ªÀº 1MBÀ̳ª ÀÌ´Â ³Ê¹« Å« °ªÀÏ °æ¿ì°¡ ¸¹´Ù. ºó¹øÇÏ°Ô »ç¿ëµÇ´Â Äõ¸®ÀÇ ¿ë·®ÀÌ ¾î´À Á¤µµÀÎÁö »ìÆ캻 ÈÄ À̺¸´Ù 10% Á¤µµ ³ôÀº °ªÀ» ¼³Á¤ÇÏÀÚ.

DB Æ©´×Àº °úÇÐÀÌ ¾Æ´Ï¶ó ¿¹¼ú

µ¥ÀÌÅͺ£À̽ºÀÇ Æ©´×Àº ¹«Á¶°Ç ³ô°í °¡Àå ÁÁÀº °ÍÀ» ã´Â °úÇÐÀ̶ó±âº¸´Ù´Â ±ÕÇüÀÇ ¹Ì¸¦ ã´Â ¿¹¼úÀ̶ó°í ÇÒ ¼ö ÀÖ´Ù. Çϳª¸¦ ³ôÀÌ¸é ±×¸¸Å­ ´Ù¸¥ ºÎºÐ¿¡¼­ ¼ÕÇظ¦ º¸´Â ¸¸Å­ ±× »çÀÌÀÇ ÃÖÀûÀÇ °ªÀ» ã´Â °ÍÀÌ Áß¿äÇϸç ÀÌ´Â Áö¼ÓÀûÀÎ ¸ð´ÏÅ͸µÀ¸·Î ¾ò¾îÁú ¼ö ÀÖ´Â ºÎºÐÀÌ´Ù. À̹ø È£¿¡¼­´Â MySQLÀÇ ¸ð´ÏÅ͸µ°ú ¼­¹ö Àü¹Ý¿¡ ´ëÇÑ Æ©´×¿¡ ´ëÇØ ¾Ë¾ÆºÃ´Ù. ´ÙÀ½ È£¿¡´Â MySQLÀÇ ¼º´É°ú ¹Ù·Î Á÷°áµÇ´Â ºÎºÐÀÎ MyISAM°ú InnoDB µÎ ½ºÅ丮Áö ¿£ÁøÀÇ Æ©´×¿¡ ´ëÇØ ¾Ë¾Æº¸±â·Î Çϸç À̹ø ¿¬À縦 ÅëÇØ ¸¹Àº ºÐµéÀÌ MySQLÀÇ ÁøÁ¤ÇÑ ¼º´ÉÀ» ´À²¸ º¼ ¼ö ÀÖ±æ ¹Ù¶õ´Ù.

Á¦°ø : DBÆ÷Å»»çÀÌÆ® DBguide.net



Ãâó : ¸¶ÀÌÅ©·Î¼ÒÇÁÆ®¿þ¾î [2005³â 8¿ù]
ÀÛ¼º ³¯Â¥ : 2008-02-14