MySQL Àº ´Ù¸¥ Å×À̺í À¯Çü¿¡ ´ëÇÑ Çڵ鷯 ¿ªÇÒÀ» ÇÒ¼ö ÀÖ´Â ¿©·¯°³ÀÇ ½ºÅ丮Áö ¿£ÁøÀ» Áö¿øÇÕ´Ï´Ù.
MySQL ½ºÅ丮Áö ¿£ÁøÀº Æ®·£Á§¼Ç¿¡ ¾ÈÀüÇÑ (transaction-safe) Å×À̺íÀ» ó¸®ÇÏ´Â °Í°ú
±×·¸Áö ¾ÊÀº Å×À̺íÀ» ó¸®ÇÏ´Â °Í ¸ðµÎ¸¦ Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù.
MySQL Àº ¼¹ö°¡ ½ºÅ丮Áö ¿£ÁøÀ¸·Î ·Îµå ÇÏ°í ½ÇÇàÁßÀÎ MySQL ¼¹ö¿¡¼ ¾ð·Îµå ÇÒ¼ö ÀÖ´Â Ç÷¯±× ½ºÅ丮Áö ¿£Áø ¾ÆÅ°ÅØÃĸ¦ »ç¿ëÇÕ´Ï´Ù.
MySQL ¼¹ö¿¡¼ SHOW ENGINES ¹®À» »ç¿ëÇÏ¿© Áö¿øÇÏ´Â ½ºÅ丮Áö ¿£ÁøÀ» È®ÀÎÇÒ¼ö ÀÖ½À´Ï´Ù.
Áö¿ø ÇÏ´Â ¿ÀÇ °ªÀ» ¿£Áø¿¡¼ »ç¿ëÇÒ¼ö ÀÖ´ÂÁö ¿©ºÎ¸¦ ³ªÅ¸³À´Ï´Ù.
Yes ÀÏ °æ¿ì ½ºÅ丮Áö ¿£ÁøÀ» »ç¿ëÇÒ¼ö ÀÕÀ¸¸ç, No ÀÏ °æ¿ì ½ºÅ丮Áö ¿£ÁøÀ» »ç¿ëÇÒ¼ö ¾øÀ¸¸ç Default ÀÏ °æ¿ì¿¡´Â ±âº» ½ºÅ丮Áö ¿£ÁøÀ¸·Î ¼³Á¤µÇ¾î ÀÖ´ÂÁö ³ªÅ¸³À´Ï´Ù.
mysql> SHOW ENGINES\G
*************************** 1. row ***************************
Engine: FEDERATED
Support: NO
Comment: Federated MySQL storage engine
Transactions: NULL
XA: NULL
Savepoints: NULL
*************************** 2. row ***************************
Engine: MRG_MYISAM
Support: YES
Comment: Collection of identical MyISAM tables
Transactions: NO
XA: NO
Savepoints: NO
*************************** 3. row ***************************
Engine: MyISAM
Support: DEFAULT
Comment: Default engine as of MySQL 3.23 with great performance
Transactions: NO
XA: NO
Savepoints: NO ........
ÀÌ Àå¿¡¼´Â MySQL Cluster NDB 6.X/7.X Á¦¿ÜÇÑ ´Ù¸¥ ½ºÅ丮Áö ¿£Áø¿¡ ´ëÇØ¼ ¼³¸íÀ» ÇÒ °ÍÀ̸ç, ¶ÇÇÑ Ç÷¯±× ½ºÅ丮Áö ¿£Áø ¾ÆÅ°ÅØÃ³¿¡ ´ëÇÑ ¼³¸íÀ» Æ÷ÇÔ (see Section 13.4, ¡°Overview of MySQL Storage Engine Architecture¡±\) ÂüÁ¶Çϱ⠹ٶø´Ï´Ù.
Commercial MySQL Server binaries ¿¡¼ Á¦°øÇÏ´Â ½ºÅ丮Áö ¿£Áø Áö¿ø¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ³»¿ëÀº MySQL À¥ »çÀÌÆ®¿¡¼, see MySQL Enterprise Server 5.1, Âü°í ÇϽʽÿä.
MySQLÀÇ ½ºÅ丮Áö ¿£Áø¿¡ ´ëÇÑ ¸î °¡Áö ÀÚÁÖÇÏ´Â Áú¹®¿¡ ´ëÇÑ ´äº¯À» µè°í ½ÍÀ¸½Ã¸é, Section B.2, ¡°MySQL 5.5 FAQ: Storage Engines¡±À» ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù.
MySQL 5.5 supported storage engines
InnoDB: »ç¿ëÀÚ µ¥ÀÌÅ͸¦ º¸È£Çϱâ À§ÇØ InnoDB´Â ½ÇÇà, ·Ñ¹é, ±×¸®°í Å©·¡½¬ º¹±¸ ±â´ÉÀÌ ÀÖ´Â Æ®·£Àè¼Ç-¼¼ÀÌÇÁ(transaction-safe) (ACID compliant) ½ºÅ丮Áö ¿£ÁøÀÌ´Ù.
InnoDB row-level locking ¹× Oracle ½ºÅ¸ÀÏÀÇ (»ó¼ö ºñ-¶ôÅ·) Àб⠿¬»êµµ Á¦°øÇÑ´Ù. ÀÌ·¯ÇÑ Æ¯¼ºÀ¸·Î ÀÎÇØ MySQLÀÇ ´ÙÁß-»ç¿ëÀÚ ¿¬¼Ó¼º°ú ¼º´ÉÀÌ Çâ»óµÈ´Ù. InnoDB¿¡¼´Â ¶ô ¿¡½ºÄ÷¹ÀÌ¼Ç (lock escalation)ÀÌ ÇÊ¿ä ¾ø´Âµ¥, ±× ÀÌÀ¯´Â ÇÏÀ§-·¹º§ ¶ôÀÌ °ø°£À» °ÅÀÇ Â÷ÁöÇÏÁö ¾Ê±â ¶§¹®ÀÔ´Ï´Ù.
InnoDB ´Â ¿Ü·¡Å° ÂüÁ¶-¹«°á¼º Á¦¾à Á¶°ÇÀ» Áö¿øÇÕ´Ï´Ù. InnoDB´Â MySQL5.5.5ºÎÅÍ ±âº» ½ºÅ丮Áö ¿£Áø ÀÔ´Ï´Ù.
MyISAM: »ç¿ëµÇ´Â MySQLÀÇ ½ºÅ丮Áö ¿£ÁøÀº À¥, µ¥ÀÌÅÍ ¿þ¾îÇÏ¿ì¡ ¹× ´Ù¸¥ ÀÀ¿ë ÇÁ·Î±×·¥ ȯ°æ¿¡ ÃÖÀûÈ µÇ¾îÀÖ½À´Ï´Ù. MyISAMÀº ¸ðµç MySQLÀÇ ±¸¼º¿¡¼ Áö¿øÇÏ°í ±âº» ½ºÅ丮Áö ¿£ÁøÀ̸ç MySQL 5.5.5 ÀÌÀü °Í ÀÔ´Ï´Ù.
Memory: µ¥ÀÌÅÍÀÇ ºü¸¥ Á¶È¸ ¸¦ ¿ä±¸Çϴ ȯ°æ¿¡¼ ¸Å¿ì ºü¸¥ ¾×¼¼½º¸¦ À§ÇØ ¸Þ¸ð¸®¿¡ ¸ðµç µ¥ÀÌÅͰ¡ ÀÖ½À´Ï´Ù. ÀÌ ¿£ÁøÀº ÀÌÀü¿¡ HEAP ¿£ÁøÀ¸·Î ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù.
Merge: ÇÑ °³ ó·³ »ç¿ëÇÒ ¼ö ÀÖ´Â °³º°ÀûÀÎ MyISAM Å×À̺íµéÀÇ ÁýÇÕÀÌ´Ù. ¿©±â¿¡¼ ¸»ÇÏ´Â "°³º°ÀûÀÎ(ldentical)" À̶õ Àǹ̴ , ¸ðµç Å×À̺íÀÌ °íÀ¯ÀÇ Ä÷³°ú À妽º Á¤º¸¸¦ °¡Áö°í ÀÖ´Ù´Â °ÍÀ» ÀǹÌÇÑ´Ù. VLDB ȯ°æ¿¡ ´ëÇÑ ÁÁÀº µ¥ÀÌÅÍ ¿þ¾îÇÏ¿ì¡ÀÌ ÀÖ´Ù.
Archive: µ¥ÀÌÅ͸¦ ÀúÀåÇÏ°í °Ë»ö ¹× º¸°ü, ÀúÀå ¶Ç´Â º¸¾È ÂüÁ¶¸¦ À§ÇÑ ¿Ïº®ÇÑ ¼Ö·ç¼ÇÀÔ´Ï´Ù.
Federated: º°µµÀÇ MySQL ¼¹ö¿¡ ¸¹Àº ¹°¸®Àû ¼¹ö¸¦ ÇϳªÀÇ ³í¸®Àû µ¥ÀÌÅͺ£À̽º¸¦ ¸¸µé°í ¿¬°áÇÏ´Â ±â´É, ºÐ»ê µ¥ÀÌÅ͸¦ ÁÁÀº ȯ°æ¿¡¼ Áö¿øÇÑ´Ù.
CSV: °ªÀ» ÄÞ¸¶·Î ±¸ºÐµÈ Çü½ÄÀ» »ç¿ëÇÏ¿© ÅØ½ºÆ® ÆÄÀÏÀ» CSV ½ºÅ丮Áö ¿£ÁøÀ¸·Î µ¥ÀÌÅ͸¦ ÀúÀå. ´ç½ÅÀº ½±°Ô ´Ù¸¥ ¼ÒÇÁÆ®¿þ¾îÀÇ µ¥ÀÌÅ͸¦ °¡Á® ¿Ã ¼ö ÀÖÀ¸¸ç CSV Çü½ÄÀ¸·Î ³»º¸³»±â °¡´ÉÇϸç, ÀÀ¿ë ÇÁ·Î±×·¥ °£¿¡ µ¥ÀÌÅ͸¦ ±³È¯ÇÏ´Â CSV·Î ¿£ÁøÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Blackhole: ½ºÅ丮Áö ¿£ÁøÀº µ¥ÀÌÅ͸¦ ÀúÀåÇÏÁö´Â ¾ÊÁö¸¸ Ç×»ó ºó ¼ÂÆ®¸¦ ¸®ÅÏÇϵµ·Ï ÇÑ´Ù. ±â´ÉÀº µ¥ÀÌÅͰ¡ ÀÚµ¿À¸·Î ÇÏÁö¸¸, º¹Á¦ ·ÎÄÿ¡ ÀúÀåµÇÁö ¾È°í, ºÐ»ê µ¥ÀÌÅͺ£À̽º ¼³°è¿¡ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.
Example: ½ºÅ丮Áö ¿£ÁøÀº ¾Æ¹«·± ¿ªÇÒÀ» ÇÏÁö ¾Ê´Â "stub" ¿£ÁøÀÌ´Ù. ¿©·¯ºÐÀº ÀÌ ¿£ÁøÀ» »ç¿ëÇØ¼ Å×À̺íÀ» »ý¼ºÇÒ ¼ö ÀÖÁö¸¸, ÀÌ Å×ÀÌºí¿¡ µ¥ÀÌÅ͸¦ ÀúÀåÇϰųª º¹±¸ ½Ãų ¼ö´Â ¾ø´Ù. ÀÌ ¿£ÁøÀ» Á¦°øÇÏ´Â ¸ñÀûÀº »õ·Î¿î ½ºÅ丮Áö ¿£ÁøÀ» ÀÛ¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ¼ ¿¹½Ã¸¦ º¸¿© ÁÖ±â À§ÇÑ °ÍÀÌ´Ù. µû¶ó¼, ÀÌ ¿£ÁøÀº °³¹ßÀÚ°¡ ÁÖ·Î °ü½ÉÀ» °¡Áö´Â ¿£ÁøÀÌ´Ù.
´ç½ÅÀº Àüü ¼¹ö ¶Ç´Â ½ºÅ°¸¶¿¡ ´ëÇØ µ¿ÀÏÇÑ ½ºÅ丮Áö ¿£ÁøÀ» »ç¿ëÇØ ±¹ÇѵÇÁö ¾Ê°í ÀÖ´Ù´Â Á¡À» ¸í½ÉÇÏ´Â °ÍÀÌ Áß¿äÇÏ´Ù: ´ç½ÅÀº ´ç½ÅÀÇ ½ºÅ°¸¶¿¡ ÀÖ´Â °¢ Å×ÀÌºí¿¡ ´ëÇØ ¼·Î ´Ù¸¥ ½ºÅ丮Áö ¿£ÁøÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
Table 13.1. Storage Engines Feature Summary
Feature |
MyISAM |
Memory |
InnoDB |
Archive |
NDB |
Storage limits |
256TB |
RAM |
64TB |
None |
384EB |
Transactions |
No |
No |
Yes |
No |
Yes |
Locking granularity |
Table |
Table |
Row |
Row |
Row |
MVCC |
No |
No |
Yes |
No |
No |
Geospatial data type support |
Yes |
No |
Yes |
Yes |
Yes |
Geospatial indexing support |
Yes |
No |
No |
No |
No |
B-tree indexes |
Yes |
Yes |
Yes |
No |
Yes |
Hash indexes |
No |
Yes |
No |
No |
Yes |
Full-text search indexes |
Yes |
No |
No |
No |
No |
Clustered indexes |
No |
No |
Yes |
No |
No |
Data caches |
No |
N/A |
Yes |
No |
Yes |
Index caches |
Yes |
N/A |
Yes |
No |
Yes |
Compressed data |
Yes[a] |
No |
Yes[b] |
Yes |
No |
Encrypted data[c] |
Yes |
Yes |
Yes |
Yes |
Yes |
Cluster database support |
No |
No |
No |
No |
Yes |
Replication support[d] |
Yes |
Yes |
Yes |
Yes |
Yes |
Foreign key support |
No |
No |
Yes |
No |
No |
Backup / point-in-time recovery[e] |
Yes |
Yes |
Yes |
Yes |
Yes |
Query cache support |
Yes |
Yes |
Yes |
Yes |
Yes |
Update statistics for data dictionary |
Yes |
Yes |
Yes |
Yes |
Yes |