- Compiling
- pgcc(Pentium GCC)ÀÇ »ç¿ë
- »ç¿ëÇÏ·ÁÇϴ ij¸¯Åͼ¸¸ Æ÷ÇÔÇØ¼ MySqlÀ» ÄÄÆÄÀÏÇϱâ
- mysql µ¥¸óÀ» Á¤ÀûÀ¸·Î ÄÄÆÄÀÏÇϱâ
- ÄÄÆÄÀÏ ¼³Á¤ ¿¹
- Configuration
- HEAP table
- Built-in commands
- SHOW
- EXPLAIN
- OPTIMIZE
- Case by case
- Âü°í
1 Compiling
1.1 pgcc(Pentium GCC)ÀÇ »ç¿ë
1.2 »ç¿ëÇÏ·ÁÇϴ ij¸¯Åͼ¸¸ Æ÷ÇÔÇØ¼ MySqlÀ» ÄÄÆÄÀÏÇϱâ
MySqlÀº ÇöÀç 24°¡ÁöÀÇ Ä³¸¯ÅͼÂÀ» Áö¿øÇϸç, ±âº»ÀûÀ¸·Î ÀÌ Ä³¸¯ÅͼµéÀ» ¸ðµÎ ¼³Ä¡ÇÑ´Ù. ÇÏÁö¸¸ ´ë°³ÀÇ °æ¿ì, ÇÊ¿äÇÑ °ÍÀº ÀÌ Áß¿¡ Çϳª »ÓÀÌ´Ù. ¾Æ·¡ÀÇ ¶óÀÎÀ» ¼³Á¤ ÆÄÀÏ¿¡ Æ÷ÇÔÇØ¼ ÄÄÆÄÀÏÇϸé, ±âº»ÀûÀ¸·Î ¾²ÀÌ´Â 'Latin1'À» Á¦¿ÜÇϰí, ´Ù¸¥ ¸ðµç ij¸¯ÅͼÂÀ» ¼³Ä¡ÇÏÁö ¾ÊÀ» ¼ö ÀÖ´Ù.
%>./configure -with-extra-charsets=none [--other-configuration-options]
1.3 mysql µ¥¸óÀ» Á¤ÀûÀ¸·Î ÄÄÆÄÀÏÇϱâ
¾Ë´Ù½ÃÇÇ Á¤ÀûÀ¸·Î ÄÄÆÄÀÏÇÑ ÇÁ·Î±×·¥Àº Å©±â°¡ Ä¿Áö´Â ´ë½Å µ¿Àû ¶óÀ̺귯¸®¸¦ »ç¿ëÇÏ´Â ÇÁ·Î±×·¥º¸´Ù Á» »¡¶óÁø´Ù. Á¤ÀûÀ¸·Î ÄÄÆÄÀÏÇÏ·Á¸é ¼³Á¤ ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ³»¿ëÀ» Æ÷ÇÔÇÑ´Ù.
%>./configure -with-mysqld-ldflags=-all-static [--other-configuration-options]
1.4 ÄÄÆÄÀÏ ¼³Á¤ ¿¹
´ÙÀ½ÀÇ ¿¹´Â ¼º´ÉÀ» ÃÖ¿ì¼±À¸·Î Çϱâ À§ÇÑ ÄÄÆÄÀÏ ¼³Á¤ÀÇ ¿¹ÀÌ´Ù.
%>CFLAGS="-O6 -mpentiumpro -fomit-frame-pointer" CXX=gcc CXXFLAGS="-O6
-mpentiumpro -fomit-frame-pointer -felide-constructors -fno-exceptions -fno-rtti"
./configure --prefix=/usr/local --enable-assembler --with-mysqld-ldflags=-all-static
--disable-shared
¾î¶² Ç÷¡±×°¡ Á¤È®È÷ ¾î¶² ÀÏÀ» ÇÏ´ÂÁö¿¡ ´ëÇØ ¾Ë°í ½Í´Ù¸é http://gcc.gnu.org ¸¦ Âü°íÇϱ⠹ٶõ´Ù.
2 Configuration
/usr/local/mysql/share/mysql µð·ºÅ丮¿¡ ¸î °¡ÁöÀÇ »ùÇà ¼³Á¤ ÆÄÀÏÀÌ Á¸ÀçÇÑ´Ù. ÀÌ ÆÄÀϵéÀº my-small.cnf, my-medium.cnf, my-large.cnf ±×¸®°í my-huge.cnf´Ù. ¸ðµÎ µ¥ÀÌÅͺ£À̽ºÀÇ »çÀÌÁî¿Í °ü·ÃµÈ ̸§µéÀÌ´? MySql ¼¹ö°¡ RAMÀÌ Àû°Å³ª, µ¥ÀÌÅͺ£À̽ºÀÇ »ç¿ëÀÌ ±×¸® ºó¹øÇÏÁö ¾Ê´Ù¸é, my-small.cnf¸¦ »ç¿ëÇÏ¸é µÈ´Ù. ÀÌ ¼³Á¤ ÆÄÀÏÀ» »ç¿ëÇϸé mysql µ¥¸óÀº ÃÖ¼ÒÀÇ ¸®¼Ò½º¸¦ ¿ä±¸ÇÑ´Ù. ±× ¹Ý´ë·Î 2±â°¡ Á¤µµÀÇ ¸Þ¸ð¸®¸¦ °¡Áø ÄÄÇ»ÅÍ¿¡¼ ÀüÀÚ »ó°Å·¡ »çÀÌÆ®¸¦ À§ÇÑ µ¥ÀÌÅͺ£À̽º¸¦ »ç¿ëÇÑ´Ù¸é, mysql-huge.cnf ÆÄÀÏÀ» »ç¿ëÇÒ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
ÀÌ ÆÄÀϵé Áß¿¡¼ Çϳª¸¦ »ç¿ëÇÏ·Á¸é ÀÏ´Ü º¹»çº»À» ¸¸µç ´ÙÀ½¿¡ ÀÚ½ÅÀÇ ¸ñÀû¿¡ ¸Â°Ô ÆíÁýÀ» ÇØÁà¾ßÇÑ´Ù. ±× ´ÙÀ½ ÆÄÀÏ À̸§À» my.cnf·Î ¹Ù²Û´Ù. ÀÌ ÆÄÀÏÀ» Àû¿ëÇÏ´Â ¹æ¹ý¿¡´Â ¼¼ °¡Áö°¡ ÀÖ´Ù.
- Àü¿ª: ¼³Á¤ ÆÄÀÏÀ» ¼¹öÀÇ /etc µð·ºÅ丮¿¡ º¹»çÇϸé, ¼¹ö»ó¿¡ Á¸ÀçÇÏ´Â ¸ðµç MySql¿¡ µ¥ÀÌÅͺ£À̽º¿¡ ¼³Á¤ ÆÄÀÏÀÇ ³»¿ëÀÌ Àû¿ëµÈ´Ù.
- Áö¿ª: ¼³Á¤ ÆÄÀÏÀ» MYSQL-INSTALL-DIR/var/ µð·ºÅ丮¿¡´Ù º¹»çÇϸé, ±× MySql µ¥ÀÌÅͺ£À̽º¿¡¸¸ ±× ³»¿ëÀÌ Àû¿ëµÈ´Ù. ´ç¿¬È÷ MYSQL-INSTALL-DIRÀº MySql µ¥ÀÌÅͺ£À̽º¸¦ ¼³Ä¡ÇÑ µð·ºÅ丮´Ù.
- »ç¿ëÀÚ: ¼³Á¤ ÆÄÀÏÀ» ÀÓÀÇÀÇ »ç¿ëÀÚ µð·ºÅ丮 ·çÆ®¿¡´Ù º¹»çÇϸé, ±× »ç¿ëÀÚ°¡ ½ÃÀÛÇÑ MySql µ¥ÀÌÅͺ£À̽º¿¡¸¸ ±× ³»¿ëÀÌ Àû¿ëµÈ´Ù.
3 HEAP table
HEAP Å×À̺íÀº MySql Å×À̺í Áß¿¡¼ °¡Àå ¼Óµµ°¡ ºü¸£´Ù. ¿Ö³ÄÇϸé Å×À̺íÀÌ ¸Þ¸ð¸® »ó¿¡ ÇØ½¬ À妽º¸¦ ÀÌ¿ëÇØ Á¸ÀçÇϱ⠶§¹®ÀÌ´Ù. MySql ¼¹ö°¡ Å©·¡½¬µÇ°Å³ª ÇÏ¸é ¸ðµç µ¥ÀÌÅͰ¡ »ç¶óÁ®¹ö¸°´Ù´Â °ÍÀ» Àý´ë ÀØÁö ¸»¾Æ¾ßÇÑ´Ù.
´ÙÀ½°ú °°ÀÌ Å×À̺íÀ» »ý¼ºÇÒ ¶§ Å×À̺í ŸÀÔÀ» ÁöÁ¤ÇØÁÙ ¼ö ÀÖ´Ù.
mysql>CREATE TABLE email_addresses TYPE=HEAP (
->email char(55) NOT NULL,
->name char(30) NOT NULL,
->PRIMARY KEY(email) );
4 Built-in commands
4.1 SHOW
MySql ¼¹ö ³»ºÎ¿¡ ¾î¶² ÀÏÀÌ À־´ÂÁö´Â ´ÙÀ½°ú °°Àº ¸í·É¾î·Î °£´ÜÈ÷ ¾Ë ¼ö ÀÖ´Ù.
mysql>show status;
ÀÌ ¸í·ÉÀ» ½ÇÇàÇÏ¸é ²Ï ±ä »óÅ º¯¼öÀÇ ¸ñ·Ï°ú °¢°¢ÀÇ °ªÀ» º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù. ÀÌ º¯¼öµéÀº ºñÁ¤»óÀûÀ¸·Î Á¾·áµÈ Ŭ¶óÀ̾ðÆ®ÀÇ ¼ö, ºñÁ¤»óÀûÀ¸·Î Á¾·áµÈ ¿¬°áÀÇ ¼ö, ¿¬°á ½ÃµµÀÇ ¼ö, °¡´ÉÇÑ ÃÖ´ë µ¿½Ã Á¢¼ÓÀÇ ¼ö µîÀ» Æ÷ÇÔÇϸç, ´Ù¸¥ À¯¿ëÇÑ Á¤º¸µéµµ ¸¹´Ù. ÀÌ Á¤º¸µéÀº ½Ã½ºÅÛÀÇ »óŸ¦ üũÇÏ°í ¹®Á¦¸¦ ã¾Æ³»´Â µ¥ Áß¿äÇÑ Á¤º¸µéÀÌ´Ù.
SHOW ¸í·É¾î´Â MySql ¼¹öÀÇ ÇöÀç »óŸ¦ Ç¥½ÃÇÏ´Â °Í À̿ܿ¡ ´Ù¸¥ ¿ëµµ·Îµµ »ç¿ëµÉ ¼ö ÀÖ´Ù. ·Î±× ÆÄÀÏ¿¡¼ Áß¿äÇÑ Á¤º¸¸¦ º¸´Âµ¥ »ç¿ëÇÒ ¼öµµ ÀÖ°í, ÀÓÀÇÀÇ µ¥ÀÌÅͺ£À̽º, Å×À̺í, À妽º, ÇÁ·Î¼¼½º, ±ÇÇÑ Å×ÀÌºí¿¡ ´ëÇÑ Á¤º¸ µîÀ» º¸´Â µ¥µµ »ç¿ëÇÒ ¼ö ÀÖ´Ù. ÀÚ¼¼ÇÑ °ÍÀº http://www.mysql.com/doc/S/H/SHOW.html ¸¦ Âü°íÇϱ⠹ٶõ´Ù.
4.2 EXPLAIN
EXPLAIN ¸í·É¾î´Â SELECT ¸í·ÉÀÌ Àü󸮵ǴÂÁö¸¦ º¸¿©ÁØ´Ù. ÀÌ Á¤º¸´Â À妽º¸¦ »ý¼ºÇؾßÇÏ´À³Ä ¸¶´À³Ä¿¡ ´ëÇÑ °èȹÀ» ¼¼¿ï ¶§ µµ¿òÀÌ µÇ¸ç, º¹ÀâÇÑ Á¶ÀÎ ¸í·ÉÀ» MySqlÀÌ ¾î¶»°Ô ó¸®ÇÏ´ÂÁö¸¦ ÀÌÇØÇÏ´Â µ¥µµ µµ¿òÀÌ µÈ´Ù.
4.3 OPTIMIZE
OPTIMIZE ¸í·É¾î´Â µ¥ÀÌÅͺ£À̽º ÆÄÀÏÀ» ÃÖÀûÈÇÏ¿© °ø°£À» Àý¾àÇÑ´Ù. ÀÌ ±â´ÉÀº Å×ÀÌºí¿¡ »ó´ç·®ÀÇ UPDATE¿Í DELETE°¡ ÀÏ¾î³ °æ¿ì ƯÈ÷ Áß¿äÇÑ´Ù. ÀÌ ¸í·É¾î´Â ÇöÀç MyISAM°ú BDB Å×ÀÌºí¿¡¼¸¸ µ¿ÀÛÇÑ´Ù.
5 Case by case
- memory >= 256M ÀÌ°í ¸¹Àº Å×À̺íÀÌ ÀÖÀ¸¸ç, Àû´çÇÑ Å¬¶óÀÌ¾ðÆ®¼ö¿¡¼ ÃÖ°í ¼º´ÉÀ» À¯ÁöÇϱâ À§ÇØ
shell> safe_mysqld -O key_buffer=64M -O table_cache=256 -O sort_buffer=4M -O record_buffer=1M &
128M¸Þ¸ð¸®¿¡ Å×À̺íÀÌ ÀûÁö¸¸, Á¤·ÄÀÌ ¸¹À» ¶§
shell> safe_mysqld -O key_buffer=16M -O sort_buffer=1M
¸Þ¸ð¸®´Â ÀûÁö¸¸ ¸¹Àº ¿¬°áÀÌ ÀÖÀ» ¶§
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=100k -O record_buffer=100k &
¶Ç´Â
shell> safe_mysqld -O key_buffer=512k -O sort_buffer=16k -O table_cache=32 -O record_buffer=8k -O net_buffer=1K &
ÃÖÀûÀÇ µ¥ÀÌÅÍÇü ¼±ÅÃÇϱ⸦ À§ÇÑ ºÐ¼®
SELECT * FROM TABLENAME PROCEDURE ANALYSE();
6 Âü°í
SeriousMoin v1 (koMoinMoin 1.0a4 Modified)