ÀÌ ºÎºÐ¿¡¼´Â ÀüÀ§ÀÇ ÀÀ¿ë ÇÁ·Î±×·¥À» »ç¿ëÇϱâ À§Çؼ Postgres¸¦ ½ÃÀÛÇÏ´Â ¹æ¹ý °ú ÀÚ½ÅÀÇ È¯°æ¿¡ ¸Âµµ·Ï ¼ÂÆÃÇÏ´Â ¹æ¹ý¿¡ ´ëÇØ ³íÀÇÇÑ´Ù. ÀÌ¹Ì Postgres´Â ¼º°øÀû À¸·Î ¼³Ä¡µÇ¾ú´Ù°í °¡Á¤ÇÑ´Ù. ( Postgres¸¦ ¼³Ä¡Çϱâ À§Çؼ´Â ¼³Ä¡ note¸¦ ÂüÁ¶ÇÏ ¶ó.)
ÀÌ ºÎºÐ¿¡¼ Á¦½ÃµÈ ¸î °¡Áö ´Ü°è´Â ¸ðµç Postgres »ç¿ëÀÚ¿Í µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ ¿¡ ÇØ´ç µÇ´Â »çÇ×ÀÌ´Ù. µ¥ÀÌÅÍ º£À̽º ½Ã½ºÅÛ °ü¸®ÀÚ´Â ¼ÒÇÁÆ®¿þ¾î¸¦ ¼³Ä¡Çϰí, µ¥ ÀÌÅÍ º£À̽º¸¦ ¸¸µé°í, postmaster¸¦ ½ÇÇà½ÃŰ´Â »ç¶÷ÀÌ´Ù. µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ°¡ À¯´Ð½º ÀÇ ¼öÆÛÀ¯ÀúÀÎ rootÀ̰ųª, ÄÄÇ»ÅÍÀÇ Çϵå¿þ¾î ÀûÀÎ °ü¸®ÀÚÀÏ ÇÊ¿ä´Â ¾ø´Ù. ¿©±â¼´Â ÀÏ¹Ý »ç¿ëÀÚ¸¦ User·Î Ç¥ÇöÇϰí, µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ¸¦ Admin À¸·Î Ç¥½Ã Çϵµ·Ï ÇϰڴÙ.
ÀÌ ¼³¸í¼ÀÇ ¿¹Á¦Áß % ±âÈ£·Î ½ÃÀ۵Ǵ ¹®ÀåÀº À¯´Ð½º ½©»óÀÇ ¸í·É¾î¸¦ ÀǹÌÇϸç, * ±âÈ£´Â Postgres SQL ÁúÀǾî»óÀÇ ¸í·ÉÀ» ¶æÇÑ´Ù.
´Ü¼øÇÔÀ» À§ÇÏ¿© Postgres°¡ /usr/local/postgres95 µð·ºÅ丮¿¡ ¼³Ä¡µÇ¾î ÀÖ´Ù°í °¡ Á¤ Çϵµ·Ï ÇÑ´Ù. ±×·¯¹Ç·Î /usr/local/postgres95 ¶ó´Â µð·ºÅ丮¸¦ º¼¶§¸¶´Ù ¿©·¯ºÐ µéÀº ½ÇÁ¦ Postgres°¡ ¼³Ä¡µÈ µð·ºÅ丮¿Í ¹Ù²Ù¾î »ý°¢ÇØ¾ß ÇÑ´Ù. (È¥µ¿À» ÇÇÇϱâ À§ ÇÏ¿© ¾Æ¿¹ óÀ½ºÎÅÍ /usr/local/postgres95 µð·ºÅ丮¿¡ ¼³Ä¡ÇÏ´Â °Íµµ ÁÁÀº ¹æ¹ýÀÏ °ÍÀÌ´Ù.)
¸ðµç ¸í·É¾îµéÀº /usr/local/postgres95/bin µð·ºÅ丮¿¡ ¼³Ä¡µÇ¾î ÀÖ´Ù. ±×·¯¹Ç·Î ½© ¸í·É¾î »óÅ¿¡¼´Â ÀÌ µð·ºÅ丮¸¦ path ¿¡ Ãß°¡ÇØ¾ß ÇÑ´Ù. ´ç½ÅÀÌ ¸¸¾à Berkeley C Shell ÀÇ º¯Á¾À̳ª, tcsh À» »ç¿ëÇϰí ÀÖ´Ù¸é .login ÆÄÀÏ¿¡ ´ÙÀ½°ú °°Àº ÁÙÀ» Ãß °¡ÇÑ´Ù.
% set path = ( /usr/local/postgres95/bin $path )
Bourne shell ÀÇ º¯Á¾À̳ª ksh, bash ÀÎ °æ¿ì¿¡´Â .profile ¿¡ ´ÙÀ½°ú °°ÀÌ ¾´´Ù.
$ PATH=/usr/local/postgres95/bin:$PATH $ export PATH
ÀÌÁ¦ Postgres ÀÇ bin µð·ºÅ丮°¡ path¿¡ Ãß°¡µÇ¾ú´Ù°í °¡Á¤ÇϰڴÙ. ºÎ°¡ÀûÀ¸·Î ÀÌ ¼³¸í¼¸¦ ÅëÇÏ¿© ½©º¯¼ö ÁöÁ¤ ¶Ç´Â ȯ°æº¯¼ö ÁöÁ¤À̶ó´Â °ÍÀ» ÀÚÁÖ ÂüÁ¶ÇÏ°Ô µÉ °Í ÀÌ´Ù. path¸¦ º¯°æÇϴµ¥ ÀÖ¾î¼ À§ ¹®´ÜÀÇ ³»¿ëµéÀ» ÃæºÐÈ÷ ÀÌÇØÇÒ¼ö ¾ø¾ú´Ù¸é, ´ÙÀ½À¸·Î ³Ñ¾î°¡±â Àü¿¡ ´ç½ÅÀÌ »ç¿ëÁßÀÎ ½©À» ±â¼úÇØ ³õÀº À¯´Ð½º ¼³¸í¼¸¦ Âü°íÇÏ ¿©¾ß ÇÑ´Ù.
³íÀÇ¿¡ ¾Õ¼ postmaster ÇÁ·Î¼¼½º°¡ ½ÇÇàµÇ¾î ÀÖÁö ¾ÊÀ¸¸é µ¥ÀÌÅÍ º£À̽º¿¡ ´ëÇÑ ¾î ¶°ÇÑ ÀÛ¾÷µµ ºÒ°¡´ÉÇÏ´Ù´Â °ÍÀ» ¸í¹éÈ÷ ÇϰíÀÚ ÇÑ´Ù. ´ç½ÅÀÌ ¸¸¾à Admin À̶ó¸é pos tmaster¸¦ ½ÇÇàÇϱâ Àü¿¡ ¸î °¡Áö ±â¾ïÇØ µÎ¾î¾ß¸¸ Çϴ°ÍÀÌ ÀÖ´Ù. ÀÌ ¼³¸í¼¿¡¼´Â 'Administering Postgres' ¶ó´Â Á¦¸ñÀÌ ÀÖ´Â ºÎºÐ¿¡¼ ±×°ÍÀ» ´Ù·ç±â·Î ÇÑ´Ù. ±×·¯ ³ª ¿©±â ¾²¿©Áø °Í°ú °°ÀÌ Á¤È®ÇÏ°Ô Postgres°¡ ¼³Ä¡µÇ¾î ÀÖ´Ù¸é, ´ÙÀ½°ú°°Àº °£´Ü ÇÑ ¸í·É¾î·Î postmaster ¸¦ ½ÃÀÛÇÒ¼ö ÀÖ´Ù. % postmaster &
postmaster´Â ¹®Á¦°¡ ¹ß»ýÇÒ °æ¿ì µµ¿òÀÌ µÇ´Â ¾î¶² ¸Þ¼¼Áö¸¦ ³»º¸³»°ï ÇÑ´Ù. ¸¸ ¾à postmaster·Î ºÎÅÍ µð¹ö±ë ¸Þ¼¼Áö¸¦ º¸°í ½ÍÀº °æ¿ì¿¡´Â -d ¿É¼ÇÀ» ÁÖ°í, ±×°ÍÀ» redirect ·Î ¹Þ¾Æ¼ ÀúÀåÇÏ¸é µÈ´Ù.
% postmaster -d >& pm.log &
¸Þ¼¼Áö¸¦ º¸°í ½ÍÁö ¾ÊÀº °æ¿ì¿¡´Â ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.
% postmaster -S
±×·¯¸é postmaster ´Â ¾Æ¹«°Íµµ Ç¥½ÃÇÏÁö ¾ÊÀ» °ÍÀÌ´Ù. ³¡¿¡ & °¡ ºÙÁö ¾Ê¾ÒÀ½¿¡ À¯ ÀÇÇ϶ó.
createuser ¸í·É¾î´Â ¾î¶² Ưº°ÇÑ »ç¿ëÀÚ°¡ Postgres¿¡ Á¢±Ù °¡´ÉÇϵµ·Ï ÇØÁØ´Ù. ÀÌ ¿Í ¹Ý´ë·Î destroyuser ¸í·É¾î´Â »ç¿ëÀÚ¸¦ »èÁ¦Çϰí, Postgres¿¡ Á¢±ÙÇÒ ¼ö ¾øµµ·Ï ÇÑ´Ù. ÀÌ·¯ÇÑ ¸í·É¾îµéÀº ´ÜÁö Postgres»ç¿ëÀÚ¿¡ ´ëÇØ¼¸¸ È¿°ú°¡ ÀÖ´Ù´Â °Í¿¡ À¯ÀÇ Ç϶ó. OS ¸¦ °ü¸®ÇÏ´Â »ç¿ëÀÚ¿¡°Ô´Â ¾Æ¹« È¿°ú°¡ ¾ø´Ù.
µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ (site adminstrator)°¡ ÀûÀýÇÏ°Ô postmaster ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÏ¿´°í, ´ç½ÅÀÌ »ç¿ëÀڷμ µ¥ÀÌÅÍ º£À̽º¿¡ Á¢±ÙÇÒ¼ö ÀÖ´Â ±ÇÇÑÀ» ºÎ¿© ¹Þ¾ÒÀ¸¸é ÀÀ¿ë ÇÁ·Î±×·¥À» ½ÃÀÛÇÒ ¼ö ÀÖ´Ù. ¾Õ¿¡¼ ¾ð±ÞÇß´ø °Í ó·³ ´ç½ÅÀº path¿¡ /usr/lo- cal/postgres95/bin µð·ºÅ丮¸¦ Ãß°¡ÇØ¾ß ÇÑ´Ù. ´ëºÎºÐÀÇ °æ¿ì ÀÌ Á¤µµ°¡ ´ç½ÅÀÌ ÁغñÇØ¾ß ÇÒ ³»¿ëÀÇ ÀüºÎÀÌ´Ù.
¸¸¾à Postgres ¸í·É¾î (psqlÀ̳ª createdb) ½ÇÇà µµÁß¿¡ ´ÙÀ½°ú °°Àº ¿¡·¯¸Þ¼¼Áö¸¦ ³µ´Ù¸é, ±×°ÍÀº ´ÙÀ½°ú °°Àº °æ¿ì¿¡ ÇØ´çÇÑ´Ù.
connectDB() failed : Is the postmaster running at 'localhost' on port '4322' ?
postmaster °¡ ½ÇÇàµÇÁö ¾Ê¾Ò°Å³ª, À߸øµÈ server host ¿¡ ¿¬°áÀ» ½ÃµµÇÏ·Á°í ÇßÀ» °æ¿ìÀÌ´Ù. ¸¸¾à ´ÙÀ½°ú °°Àº ¿¡·¯¸Þ¼¼Áö¸¦ ¸¸³µ´Ù¸é µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ°¡ ¿Ã¹Ù¸¥ °èÁ¤À¸·Î postmaster ¸¦ ½ÇÇà½ÃŰÁö ¾Ê¾Ò´Ù´Â ¶æÀÌ´Ù.
FATAL 1:Feb 17 23:19:55:process userid (2360) != database owner (268)
ÀÌ·²¶§´Â ´Ù½Ã postmaster¸¦ ¼öÇàÇϵµ·Ï Postgres superuser ¿¡°Ô ¾Ë·ÁÁÖ¾î¾ß ÇÑ´Ù.
Postgres°¡ ½ÇÇàÁßÀ̶ó¸é ½ÃÇè»ï¾Æ ¸î °³ÀÇ µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé¼ö ÀÖ´Ù. ¿©±â ±â º»ÀûÀÎ µ¥ÀÌÅÍ º£À̽º ¸í·É¾îµéÀ» ¼Ò°³ÇÑ´Ù.
ÀÚ, ´ç½ÅÀÌ mydb ¶ó´Â À̸§ÀÇ µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé°íÀú ÇÑ´Ù. ±×·¸´Ù¸é ´ÙÀ½°ú °° Àº ¸í·É¾î¸¦ ÁÖ¸é µÈ´Ù.
% createdb mydb
Postgres´Â ÁÖ¾îÁø °÷¿¡ ¾ó¸¶µçÁö ¿©·¯°³ÀÇ µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé ¼ö ÀÖµµ·Ï ÇØ ÁÖ ¸ç, ±× ¼ø°£¿¡´Â ÀÚµ¿À¸·Î ¿©·¯ºÐÀÌ µ¥ÀÌÅÍ ½Ã½ºÅÛ °ü¸®ÀÚ°¡ µÈ´Ù. µ¥ÀÌÅÍ º£À̽ºÀÇ À̸§Àº ¾ËÆÄºª ±ÛÀÚ°¡ óÀ½¿¡ ¿Í¾ß Çϰí, ±æÀÌ´Â 16±ÛÀÚ·Î Á¦ÇѵȴÙ.
¸ðµç »ç¿ëÀÚ°¡ µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé¼ö ÀÖ´Â ±ÇÇÑÀ» ºÎ¿©¹Þ´Â °ÍÀº ¾Æ´Ï´Ù. ¸¸¾à ´ç ½ÅÀÌ Postgres¿¡¼ µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé¼ö ¾ø´Ù¸é µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ·Î ºÎÅÍ µ¥ ÀÌÅÍ º£À̽º¸¦ »ý¼ºÇÒ¼ö ÀÖ´Â Çã°¡±ÇÀ» ¾ò¾î¾ß ÇÑ´Ù. ÀÌ·² ¶§´Â µ¥ÀÌÅÍ º£À̽º °ü¸® ÀÚ¿Í ÀÇ ³íÇϵµ·Ï ÇÏÀÚ.
µ¥ÀÌÅÍ º£À̽º¸¦ ¸¸µé¾úÀ¸¸é ´ÙÀ½°ú °°Àº ¹æ¹ýÀ¸·Î Á¢±ÙÇÒ¼ö ÀÖ´Ù.
ÀÌ ¼³¸í¼ÀÇ ¿¹Á¦¸¦ ½ÃÇèÇØ º¸·Á¸é psqlÀ» ¼öÇàÇÏ¿©¾ß ÇÑ´Ù. ´ÙÀ½°ú °°Àº ¸í·É¾î·Î mydb¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Â »óŰ¡ µÈ´Ù.
% psql mydb
´ÙÀ½°ú °°Àº ȯ¿µ ¸Þ¼¼Áö(?)¸¦ ¹Þ°Ô µÉ °ÍÀÌ´Ù.
Welcome to the Postgres95 interactive sql monitor
type \? for help on slash commands type \q to quit type \g to terminate with semicolon to excute query
You are currently conneted to the database: mydb
mydb =>
ÀÌ ÇÁ·ÒÇÁÆ®´Â Å͹̳θð´ÏÅͰ¡ ÀÌÁ¦ºÎÅÍ ´ç½ÅÀÇ ¸í·ÉÀ» ¹Þ¾ÆµéÀÏ ¼ö ÀÖ´Ù´Â ¶æÀÌ´Ù. ÀÌÁ¦ Å͹̳Π¸ð´ÏÅͰ¡ Á¦°øÇÏ´ÂÀÛ¾÷ ¿µ¿ª¿¡¼ SQL Äõ¸®¸¦ ¾µ ¼ö ÀÖ´Ù. psqlÀº ¿ª½½·¡½Ã(\)·Î ½ÃÀÛÇÏ´Â escapeÄڵ忡 ÀÀ´äÇÑ´Ù. ¿¹¸¦ µé¾î, Postgres¿¡ ´ëÇÑ ¿©·¯ °¡Áö ¹®¹ýÀû µµ¿ò¸»À» ¾ò±â À§Çؼ´Â ¸í·É¾î ¶óÀο¡¼ ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù.
mydb => \h
Äõ¸® ¹®ÀåÀÌ ³¡³µÀ½À» ¾Ë¸®°í, ÀÛ¾÷°ø°£ÀÇ ³»¿ëÀ» Postgres¼¹ö¿¡ ¾Ë·ÁÁÖ±â À§ÇØ ´Ù À½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù.
mydb => \g
À̰ÍÀº ¼¹ö¿¡°Ô Äû¸®ÀÇ ³»¿ëÀ» ½ÇÇàÇ϶ó´Â ¶æÀÌ´Ù. ¸¸¾à ¹®Àå ³¡¿¡ ¼¼¹ÌÄÝ·ÐÀ» »ç ¿ë Çß´Ù¸é \g ´Â ÇÊ¿ä¾ø´Ù. ¼¼¹ÌÄÝ·ÐÀÌ ºÙÀ¸¸é psql Àº ÀÚµ¿À¸·Î Äõ¸®¸¦ ó¸®ÇÑ´Ù.
¿ÜºÎ ÈÀÏ·Î ºÎÅÍ Äõ¸® ³»¿ëÀ» ÀоîµéÀ̱â À§Çؼ´Â ´ëÈÇü ¹æ½Ä´ë½Å ´ÙÀ½°ú °°ÀÌ ÀÔ·ÂÇÑ´Ù.
mydb => \i filename
À¯´Ð½º·Î ºüÁ®³ª°¡±â À§Çؼ´Â ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.
mydb => \q
±×·¯¸é psqlÀÌ Á¾·áµÇ°í, À¯´Ð½º ¸í·É¾î¸¦ ¾µ ¼ö ÀÖ´Â ½© »óŰ¡ µÈ´Ù. ( ´õ ÀÚ¼¼ÇÑ °ÍÀº \h¸¦ ÀÔ·ÂÇØ º¸¶ó.) ÅÇ È¤Àº ºóÄÀº SQL Äõ¸®³»¿¡¼ ¾ó¸¶µçÁö ¾µ¼ö ÀÖ´Ù. dash ÀÌÈÄ¿¡ ¾²¿©Áø ¸ðµç ÁÙµéÀº ¹«½ÃµÇ¸ç, ±×°ÍÀº °ð ÁÖ¼®À¸·Î 󸮵ÊÀ» ÀǹÌÇÑ´Ù.
´ç½ÅÀÌ mydb ¿¡ ´ëÇÑ µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ¶ó¸é ´ÙÀ½°ú °°Àº ¸í·É¾î¸¦ ½á¼ »èÁ¦ ÇÒ ¼öÀÖ´Ù.
% destroydb mydb
ÀÌ·¯ÇÑ ¸í·É¾î´Â µ¥ÀÌÅÍ º£À̽º¿¡ °ü°èµÈ ¸ðµç À¯´Ð½º ÈÀÏÀ» ¹°¸®ÀûÀ¸·Î Áö¿ö¹ö¸® ±â ¶§¹®¿¡ º¹±¸ ÇÒ ¼ö ¾ø°Ô µÈ´Ù. ±×·¯¹Ç·Î ÀÛ¾÷¿¡ ¾Õ¼¼ ´õ¿í ½ÅÁßÇÏ°Ô »ý°¢ÇØ¾ß ÇÒ °ÍÀÌ´Ù.