16.2. µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍÀÇ ÀÛ¼º

°¡Àå ¸ÕÀú, µð½ºÅ©»ó¿¡ µ¥ÀÌÅͺ£À̽º ÀúÀå ¿µ¿ªÀ» ÃʱâÈ­ÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. ÀÌ ÀúÀå ¿µ¿ªÀ» µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅͶó°í ºÎ¸¨´Ï´Ù(SQL¿¡¼­´Â ¸ñ·Ï Ŭ·¯½ºÅͶó´Â ¿ë¾î°¡ »ç¿ëµË´Ï´Ù). µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍ´Â µ¥ÀÌÅͺ£À̽ºÀÇ ÁýÇÕÀ¸·Î, °¡µ¿Çϰí ÀÖ´Â µ¥ÀÌÅͺ£À̽º ¼­¹öÀÇ ¿ÀÁ÷ 1°³ÀÇ ÀνºÅϽº¸¦ ÅëÇØ °ü¸®µË´Ï´Ù. ÃʱâÈ­°¡ ³¡³ª¸é, µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍ¿¡´Â postgres¶ó´Â À̸§ÀÇ µ¥ÀÌÅͺ£À̽º°¡ Æ÷ÇԵ˴ϴÙ. ÀÌ µ¥ÀÌÅͺ£À̽º´Â, À¯Æ¿¸®Æ¼³ª »ç¿ëÀÚ, ½áµåÆÄƼ ¾îÇø®ÄÉÀ̼ÇÀÇ ±âº»°ª µ¥ÀÌÅͺ£À̽º·Î¼­ ÁغñµÇ¾î ÀÖ½À´Ï´Ù. µ¥ÀÌÅͺ£À̽º ¼­¹ö ÀÚ½ÅÀº ÀÌ postgresµ¥ÀÌÅͺ£À̽ºÀÇ Á¸À縦 ÇÊ¿ä·Î ÇÏÁö ¾Ê½À´Ï´Ù. ÃʱâÈ­ Áß¿¡, ±× ¹Û¿¡µµ template1¶ó´Â µ¥ÀÌÅͺ£À̽º°¡ °¢ Ŭ·¯½ºÅͳ»¿¡ ÀÛ¼ºµË´Ï´Ù. ±× À̸§À¸·ÎºÎÅÍ ÃßÃøÇÒ ¼ö ÀÖµµ·Ï, À̰ÍÀº ±× ÈÄ¿¡ ÀÛ¼ºµÇ´Â µ¥ÀÌÅͺ£À̽ºÀÇ ÅÛÇø´À¸·Î¼­ »ç¿ëµË´Ï´Ù. µû¶ó¼­, ½ÇÁ¦ÀÇ ÀÛ¾÷¿¡ »ç¿ëÇØ¾ß ÇÏÁö´Â ¾Ê½À´Ï´Ù (Ŭ·¯½ºÅͳ»¿¡ À־ÀÇ »õ·Î¿î µ¥ÀÌÅͺ£À̽ºÀÇ ÀÛ¼º¿¡ ´ëÇØ¼­´Â Chapter 19À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä).

ÆÄÀÏ ½Ã½ºÅÛÀÇ °üÁ¡À¸·ÎºÎÅÍ º¸¸é, µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅͶó°í ÇÏ´Â °ÍÀº, ¸ðµç µ¥ÀÌÅͰ¡ ÀúÀåµÇ´Â 1°³ÀÇ µð·ºÅ丮¶ó´Â °ÍÀÌ µË´Ï´Ù. À̰ÍÀº µ¥ÀÌÅÍ µð·ºÅ丮 ȤÀº µ¥ÀÌÅÍ ¿µ¿ªÀ¸·Î ºÒ¸³´Ï´Ù. ¾îµð¿¡ µ¥ÀÌÅ͸¦ ÀúÀåÇÒÁö´Â ¿ÏÀüÇÏ°Ô »ç¿ëÀÚÀÇ ÀÚÀ¯ÀÔ´Ï´Ù. ƯÈ÷ ±âº»°ªÀÇ ¿µ¿ªÀº ¾ø½À´Ï´Ù¸¸, ÀϹÝÀûÀ¸·Î ÀÚÁÖ »ç¿ëµÇ´Â °ÍÀº /usr/local/pgsql/data ³ª /var/lib/pgsql/dataÀÔ´Ï´Ù. µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅ͸¦ ÃʱâÈ­Çϱâ À§Çؼ­´Â, PostgreSQL¿Í ÇÔ²² ¼³Ä¡µÇ´Â initdb¸í·É ¸¦ »ç¿ëÇØ ÁÖ¼¼¿ä. µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍÀÇ ÆÄÀÏ ½Ã½ºÅÛ»óÀÇ Àå¼Ò´Â -D¿É¼ÇÀ¸·Î °¡¸®Åµ´Ï´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°ÀÌ ÇÕ´Ï´Ù.

$ initdb -D /usr/local/pgsql/data

ÀÌ ¸í·ÉÀº, ÀüÀý¿¡¼­ ¼³¸íÇÑ PostgreSQL»ç¿ëÀÚ°èÁ¤À¸·Î ·Î±×ÀÎÇØ ½ÇÇàÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù.

Tip: -D¿É¼ÇÀ» »ç¿ëÇÏ´Â ´ë½Å¿¡ PGDATAȯ°æ º¯¼ö¸¦ ¼³Á¤ÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

¸¸¾à ÁöÁ¤ÇÑ µð·ºÅ丮°¡ Á¸ÀçÇÏÁö ¾Ê´Â °æ¿ì´Â, initdb´Â ±× »õ·Î¿î µð·ºÅ丮¸¦ ÀÛ¼ºÇÏ·Á°í ÇÕ´Ï´Ù. ±×·¯³ª(¿©±âÀÇ Á¶¾ð¿¡ µû¶ó ºñƯ±Ç °èÁ¤À» ÀÛ¼ºÇßÀ» °æ¿ì µî) ÀÛ¼º ±ÇÇÑÀÌ ¾ø´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ±× °æ¿ì´Â(·çÆ®·Î¼­) ¼öµ¿À¸·Î µð·ºÅ丮 ÀÚü¸¦ ÀÛ¼ºÇØ, ±× ¼ÒÀ¯ÀÚ¸¦ PostgreSQL»ç¿ëÀÚ·Î º¯°æÇÕ´Ï´Ù. ¾Æ·¡¿Í °°À̰¡ ±× ¿¹°¡ µË´Ï´Ù.

root# mkdir /usr/local/pgsql/data
root# chown postgres /usr/local/pgsql/data
root# su postgres
postgres$ initdb -D /usr/local/pgsql/data

µ¥ÀÌÅÍ µð·ºÅ丮°¡ ÀÌ¹Ì ÃʱâÈ­µÇ¾î ÀÖ´Â °Íó·³ º¸ÀÌ´Â °æ¿ì´Â, initdb´Â ½ÇÇàÀ» °ÅºÎÇÕ´Ï´Ù.

µ¥ÀÌÅÍ µð·ºÅ丮¿¡´Â µ¥ÀÌÅͺ£À̽º¾ÈÀÇ ¸ðµç µ¥ÀÌÅͰ¡ º¸°ü À¯ÁöµÇ±â¶§¹®¿¡, ±ÇÇÑÀ» °¡ÁöÁö ¾Ê´Â »ç¶÷ÀÇ Á¢±ÙÀ» È®½ÇÈ÷ Á¦ÇÑÇÏ´Â °ÍÀÌ ºÒ°¡°áÇÕ´Ï´Ù. ±×·¯´Ï±î, initdb´Â PostgreSQL»ç¿ëÀÚ À̿ܿ¡´Â Á¢±ÙÇã¿ë±ÇÀ» ÁÖÁö ¾Ê½À´Ï´Ù.

±×·¯³ª, µð·ºÅ丮ÀÇ ³»¿ëÀº ¾ÈÀüÇÕ´Ï´Ù¸¸, ±âº»°ªÀÇ Å¬¶óÀÌ¾ðÆ® ÀÎÁõÀÇ ¼³Á¤¿¡¼­´Â, ¸ðµç ·ÎÄà »ç¿ëÀÚ´Â µ¥ÀÌÅͺ£À̽º¿¡ Á¢¼ÓÇÒ ¼ö ÀÖ¾î µ¥ÀÌÅͺ£À̽º ½´ÆÛ À¯Àú°¡ µÇ´Â °Í Á¶Â÷ °¡´ÉÇÕ´Ï´Ù. ´Ù¸¥ ·ÎÄà »ç¿ëÀÚ¸¦ ½Å¿ëÇÏÁö ¾Ê´Â °æ¿ì, initdbÀÇ -W, --pwprompt, --pwfile¿É¼ÇÀÇ ¾î´ÀÂÊÀ̵ç 1°³¸¦ »ç¿ëÇØ, µ¥ÀÌÅͺ£À̽º ½´ÆÛ À¯Àú¿¡°Ô ÆÐ½º¿öµå¸¦ ºÎ¿©ÇÏ´Â °ÍÀ» Ãßõ ÇÕ´Ï´Ù. ¶Ç, ±âº»°ªÀÇ trustÀÎÁõ ¸ðµå¸¦ »ç¿ëÇÏÁö ¾Ê°Ô, -A md5 ȤÀº -A password¸¦ ÁöÁ¤ÇØ ÁÖ¼¼¿ä. ȤÀº, initdbÀÇ µÚ, ùȸÀÇ ¼­¹öÀÇ ±âµ¿ Àü ¿¡, »ý¼º ³¡³­pg_hba.confÆÄÀÏÀ» º¯°æÇØ ÁÖ¼¼¿ä (´Ù¸¥ ÇÕ´çÇÑ ¹æ¹ýÀ¸·Î¼­ identÀÎÁõÀ̳ª ÆÄÀÏ ½Ã½ºÅÛÀÇ ±ÇÇÑÀ» »ç¿ëÇØ, Á¢¼ÓÀ» Á¦ÇÑÇÒ ¼öµµ ÀÖ½À´Ï´Ù. »ó¼¼ÇÑ °Í¿¡ ´ëÇØ¼­´Â Chapter 20À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä).

initdb´Â ¶Ç, µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍÀÇ ±âº»°ªÀÇ ·ÎÄÉÀÏÀ» ÃʱâÈ­ÇÕ´Ï´Ù. Åë»óÀº, ȯ°æÀÇ ·ÎÄÉÀÏ ¼³Á¤ÀÌ ÃʱâÈ­µÈ µ¥ÀÌÅͺ£À̽º¿¡ ±×´ë·Î Àû¿ëÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º¿¡ ´Ù¸¥ ·ÎÄÉÀÏÀ» ÁöÁ¤ÇÏ´Â Àϵµ °¡´ÉÇÕ´Ï´Ù. »ó¼¼ÇÑ °Í¿¡ ´ëÇØ¼­´Â Section 21.1À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä. ƯÁ¤ÀÇ µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅͳ»¿¡¼­ »ç¿ëµÇ´Â Á¤·Ä¼ø¼­´Â initdb·Î ¼³Á¤µÇ¾î initdbÈÄ´Â Àü µ¥ÀÌÅ͸¦ ´ýÇÁ ÇØ, initdb¸¦ Àç½ÇÇàÇØ, ´ýÇÁ ÇÑ µ¥ÀÌÅ͸¦ ´Ù½Ã ·Îµù½ÃŰ´Â ¼ø¼­¸¦ ¹â´Â °Í ¿Ü¿¡´Â º¯°æÇÒ ¼ö ¾ø½À´Ï´Ù. ¶Ç, C³ª POSIX ÀÌ¿ÜÀÇ ·ÎÄÉÀÏÀ» »ç¿ëÇÏ´Â °æ¿ì¿¡´Â ¼º´É»óÀÇ ¿µÇâµµ ÀÖ½À´Ï´Ù. µû¶ó¼­, ÃÖÃÊÀÇ ½ÃÁ¡¿¡¼­ ÀÌ ¼±ÅÃÀ» ¿Ã¹Ù¸£°Ô ½Ç½ÃÇÏ´Â °ÍÀÌ Áß¿äÇÕ´Ï´Ù.

¶Ç initdb´Â, µ¥ÀÌÅͺ£À̽º Ŭ·¯½ºÅÍÀÇ ±âº»°ªÀÇ ¹®ÀÚ ¼¼Æ® ÀÎÄÚµù ¹æ½Äµµ ¼³Á¤ÇÕ´Ï´Ù. Åë»ó À̰ÍÀº, ·ÎÄÉÀÏÀÇ ¼³Á¤°ú ¸Â´Â °ÍÀÌ ¼±ÅÃµÇ¾ß ÇÕ´Ï´Ù. ÀÚ¼¼ÇÑ °ÍÀº Section 21.2À» ÂüÁ¶ÇØ ÁÖ¼¼¿ä.