· KLDP.org · KLDP.net · KLDP Wiki · KLDP BBS ·
Linuxdoc Sgml/Pg_hba-KLDP

Æ÷½ºÆ®±×·¹½ºÀÇ pg_hba.conf È°¿ë

Æ÷½ºÆ®±×·¹½ºÀÇ pg_hba.conf È°¿ë

TPLUG(µ¿¸íÁ¤º¸´ëÇб³ POWER LINUX USER GROUP) ÁÖ È¿½Ä nogadax@kldp.org

2000³â 4¿ù4ÀÏ
ÀÌ ¹®¼­´Â Æ÷½ºÆ®±×·¹½ºÀÇ ÀÎÁõ ¹æ½ÄµîÀÇ È¯°æ¼³Á¤ ÆÄÀÏÀÎ pg_hba.conf¸¦ ¼³¸íÇÏ°í, ÀÌ¿¡ µû¸¥ »ç¿ë»óÀÇ ¿¹Á¦µîÀ» Á¦½ÃÇÏ°íÀÚ ÇÑ´Ù. ¶ÇÇÑ, JDBC ¸¦ ÀÌ¿ëÇÑ connection ¿¹Á¦¸¦ º¸¿©ÁØ´Ù.

1. Domain Socket

pg_hba.conf ¼³Á¤Àº µÎ°¡ÁöÀÇ ¹æ¹ýÀÌ ÀÖ´Ù. ù°´Â Unix Domain Socket ¹æ¹ýÀÌ°í µÑ°´Â Internet Domain Socket ¹æ¹ýÀÌ´Ù.

´ÙÀ½Àº ÀÌµé ¹æ¹ýÀÇ ¼³¸íÀÌ´Ù.

socket À̶õ unix »óÀÇ ÇÁ·Î¼¼½º°£ Åë½ÅÀ» À§ÇØ »ç¿ëµÇ´Â ¸ÞÄ«´ÏÁòÀ¸·Î¼­, ÀÌ·¯ÇÑ Åë½Å¿¡´Â µ¿ÀÏÇÑ ±â°è»óÀÇ ÇÁ·Î¼¼½º°£ Åë½Å°ú ³×Æ®¿öÅ© ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇÏ´Â ³×Æ® ¿öÅ©»óÀÇ ÇÁ·Î¼¼½º°£ Åë½ÅÀÌ ÀÖ´Ù.

socket Àº domain À̶ó´Â °øÅëµÈ Åë½Å Ư¼º¿¡ µû¶ó ºÐ·ùµÇ¸ç, µ¿ÀÏÇÑ ±â°è»óÀÇ ÇÁ·Î¼¼½º°£ Åë½ÅÀ» Unix Domain SocketÀ̶óÇÏ°í, ³×Æ®¿öÅ©»óÀÇ ÇÁ·Î¼¼½º°£ Åë½Å À» Internet Domain Socket (ȤÀº TCP/IP Domain Socket )¶ó ÇÑ´Ù.

Unix Domain SocketÀÇ ÁÁÀº ¿¹·Î´Â telnet À» ÅëÇÑ telnet µð¸ó°ú Æ÷½ºÆ®±×·¹½º µð¸ó°úÀÇ Åë½ÅÀÌ´Ù.

Internet Domain SocketÀÇ ÁÁÀº ¿¹·Î´Â ODBC ³ª JDBC ¸¦ ÅëÇØ ¿ø°ÝÁö Áï, ´Ù¸¥ ±â°è»ó¿¡¼­ JDBC¸¦ ÀÌ¿ëÇÑ Å¬¶óÀ̾ðÆ® ÇÁ·Î¼¼½º¿Í Æ÷½ºÆ®±×·¹½º µð¸ó°úÀÇ Åë½ÅÀÌ´Ù. ±×·¯¹Ç·Î JDBC ȤÀº, ODBC ¸¦ ÅëÇØ Æ÷½ºÆ®±×·¹½º DB¼­¹ö¿ÍÀÇ connection À» ¼³Á¤ÇÏ ·ÁÇÒ¶§ pg_hba.conf ÀÇ ¼³Á¤Àº Internet Domain Socket ¹æ½ÄÀ¸·Î ¼³Á¤ÇÏ¿©¾ß ÇÑ´Ù.

¸¸¾à 127.0.0.1 ÀÎ IP Address °¡ µ¿ÀÏÇÑ ±â°è»óÀÇ ÇÁ·Î¼¼½º°£ Åë½ÅÀ» À§ÇØ »ç¿ëµÇ¾ú´Ù ÇÒÁö¶óµµ 127.0.0.1 Àº ³×Æ®¿öÅ©»óÀÇ Æ¯¼öÇÑ IP À̹ǷΠÀÌ´Â ³×Æ®¿öÅ© ÇÁ·ÎÅäÄÝÀ» ÀÌ¿ëÇÏ´Â ³×Æ®¿öÅ©»óÀÇ ÇÁ·Î¼¼½º°£ Åë½ÅÀÌ´Ù. ±×·¯¹Ç·Î ÀÌ´Â Internet Domain Socket ÀÌ µÈ´Ù.

2. pg_hba.conf ¼³Á¤

(postgresql Host-Based-Access Control)

º¸Åë pg_hba.conf ´Â $PGDATA µð·ºÅ丮¿¡ Á¸ÀçÇÑ´Ù. ¿¹·Î¼­ Æ÷½ºÆ®±×·¹½ºÀÇ µðÆúÆ® µð·ºÅ丮´Â /usr/local/pgsqlÀÌ´Ù. ±×¸®°í PGDATA ÀÇ °ªÀº º¸Åë /usr/local/pgsql/data ÀÌ´Ù.

pg_hba.conf ÆÄÀÏÀº ÀϹÝÀûÀ¸·Î ·¹ÄÚµåµé·Î ÀÌ·ç¾îÁ® ÀÖÀ¸¸ç ·¹ÄÚµå¶õ ƯÁ¤ÇÑ ÇüŸ¦ Áö´Ñ ÇϳªÀÇ ¶óÀÎÀÌ´Ù. ¶óÀÎÀÇ Á¦ÀÏ ¾Õ¿¡ # ·Î µÇ¾î ÀÖÀ¸¸é ÀÌ´Â ÁÖ¼® 󸮰¡ µÇ¾î ÀÖ´Â °ÍÀÌ´Ù. ¶ÇÇÑ ¶óÀÎÀÌ °ø¶õÀ̸é ÀÌ´Â ¹«½ÃµÇ¾î Áø´Ù.

pg_hba.conf ÀÇ ·¹ÄÚµå´Â µÎ°¡Áö·Î ºÐ·ùµÇ¸ç Çϳª´Â Unix Domain Socket ÇüÀÌ¸ç ´Ù¸¥ Çϳª´Â Internet Domain Socket(TCP/IP Domain) ÇüÀÌ´Ù.

2.1 Unix Domain Socket ¼³Á¤

·¹ÄÚµå Çü½Ä
   
 local  database  authentication method  

 : localÀº unix domain socket ¹æ½ÄÀÇ ¿¬°áÀ» Çã¿ëÇÑ´Ù. 
   database ´Â ¿¬°áÀ» Çã¿ëÇÏ·Á´Â database ÀÌ¸ç ¸ðµç 
   database ¿¡ ¿¬°áÀ» Çã¿ëÇÏ·Á¸é all À» ÀûÀ¸¸é µÈ´Ù. 
   authentication method ´Â »ç¿ëÀÚ ÀÎÁõ¹æ½ÄÀ» ¼³Á¤ÇÑ´Ù. 


¿¹ 1)
  
 local   all          trust 
   
 : local ¿¡¼­ ¸ðµç µ¥ÀÌŸº£À̽º(all)¿¡ ´ëÇÑ ¿¬°áÀ» Çã¿ëÇϸç
   Á¢¼ÓÇÏ·Á´Â »ç¿ëÀÚµéÀº ¸ðµÎ ¹ÏÀ»¼ö ÀÖ´Â(trust) »ç¿ëÀÚ·Î
   ÀÎÁ¤ÇÏ¸ç º°´Ù¸¥ ÀÎÁõÀýÂ÷¸¦ °ÅÄ¡Áö ¾Ê°í ¹Ù·Î Á¢¼ÓÇÒ ¼ö ÀÖ´Ù. 


 psqlÀ» ÅëÇÑ Á¢¼Ó :
           
  psql template1
  
  
¿¹ 2) 
  
 local   template1    crypt

 : local ¿¡¼­ template1 µ¥ÀÌŸº£À̽º¿¡¸¸ Á¢¼ÓÀ» Çã¿ëÇϸç ÀÎÁõ
   ÀýÂ÷·Î crypt ¹æ½ÄÀ» °ÅÄ£´Ù. crypt´Â »ç¿ëÀÚ¿¡ ´ëÇÑ Æнº¿öµå¸¦
   ¹¯°í ÀÌ Æнº¿öµå´Â ¾ÏȣȭµÇ¾î º¸³»¾îÁøÈÄ pg_shadow¶ó´Â ÆÄÀÏ¿¡
   ÀÖ´Â Æнº¿öµå¿Í ºñ±³ÇÑ´Ù. ºñ±³µÈ Æнº¿öµå°¡ ¸Â¾Æ ¶³¾îÁö¸é
   Á¢¼ÓÀÌ Çã¿ëµÈ´Ù.


 psqlÀ» ÅëÇÑ Á¢¼Ó : 
      
  psql -u template1
         
  (-u ¿É¼ÇÀº À¯Àú¸í°ú Æнº¿öµå¸¦ ¹¯´Â´Ù)
  

2.2 Internet Domain Socket ¼³Á¤

·¹ÄÚµå Çü½Ä 
   
host   databse  IP  IP_mask  auth  method

 : jdbc ¿Í °°Àº Ä¿³Ø¼ÇÀ» ÅëÇØ Åë½ÅÀ» ÇÏ´Â client µéÀÌ
   ¿¬°áÀ» ÇÏ·ÁÇÒ ¶§ Çã¿ëÇϰųª ºÒÇ㸦 À§ÇØ ¼³Á¤ÇÑ´Ù.
   (Áï, ´Ù¸¥ È£½ºÆ®¿¡¼­ Á÷Á¢ Æ÷½ºÆ®±×·¹½ºÀÇ »ç¿ëÀÚ °èÁ¤
   À¸·Î ¿¬°áÀ» ÇÏ·ÁÇÒ ¶§)
   
   host  template1  210.110.144.161  255.255.255.255  crypt

   : 210.110.144.161 ÀÇ IP ¸¸ÀÌ crypt ¹æ½ÄÀ¸·Î template1
    µ¥ÀÌŸº£À̽º¿¡ Á¢¼ÓÀ» Çã¿ëÇÑ´Ù.
    
   host  all        0.0.0.0          0.0.0.0          password
   
   : ¸ðµç µ¥ÀÌŸº£À̽º¿Í ¸ðµç IP ÁÖ¼ÒµéÀÌ password ¹æ½ÄÀ¸·Î
     Á¢¼ÓÀ» ÇÒ¼ö°¡ ÀÖ´Ù.
     
 

2.3 Authentication method(ÀÎÁõ ¹æ¹ý)

TRUST :    º°´Ù¸¥ ÀÎÁõ ÀýÂ÷¾øÀÌ ¹Ù·Î Çã¿ëÇÑ´Ù.

REJECT :   ¹«Á¶°Ç Á¢¼ÓÀ» °ÅºÎÇÑ´Ù.
    
CRYPT :    À¯ÀúÀÇ Æнº¿öµå¸¦ ¹¯´Â´Ù. À̶§ Æнº¿öµå´Â
           ¾ÏȣȭµÇ¾î Æ÷½ºÆ®±×·¹½º¿¡°Ô º¸³»¾îÁø´Ù. 
                 
PASSWORD : À¯ÀúÀÇ Æнº¿öµå¸¦ ¹¯´Â´Ù. À̶§ Æнº¿öµå´Â
           ¾ÏȣȭµÇÁö ¾ÊÀº ¹®ÀÚ ±×´ë·Î ¼­¹öÃøÀÎ
           Æ÷½ºÆ®±×·¹½º¿¡°Ô º¸³»¾îÁø´Ù.

    
´ÙÀ½ÀÇ ÀÎÁõ ¹æ¹ýÀº TCP/IP Domain ¿¡¸¸ ÇØ´çµÈ´Ù.
    
 krb4  : Kerberos V4
 krb5  : Kerberos V5
 ident : Ŭ¶óÀ̾ðÆ® »óÀÇ ident ¼­¹ö°¡ »ç¿ëµÇ¾îÁö¸ç
         $PGDATA/pg_ident.conf ¸¦ µû·Î ¼³Á¤ÇÏ¿©¾ß
         ÇÑ´Ù. 
    

¶ÇÇÑ, ³×Æ®¿öÅ© »óÀÇ Ä¿³Ø¼ÇÀ» ÇÏ·ÁÇÒ ¶§ ³í¸®ÀûÀÎ º¸¾È ÅͳÎÀ» »ç¿ëÇÏ´Â ¹æ¹ýÀÌ ÀÖ´Ù. ÀÌ´Â ssh º¸¾È ±â¹ýÀ» Àû¿ëÇÑ °ÍÀ¸·Î Ŭ¶óÀ̾ðÆ®¿Í Æ÷½ºÆ® ±×·¹½º ¼­¹ö »çÀÌÀÇ ³×Æ®¿öÅ© ÄÁ³Ø¼ÇÀ» ssh¸¦ ÀÌ¿ëÇÏ¿© ¾ÏÈ­È­ÇÒ ¼ö ÀÖ´Ù. ÀûÀýÇÑ Àû¿ëÀ¸·Î ¾ÈÀüÇÑ ³×Æ®¿öÅ© ÄÁ³Ø¼ÇÀ» ¸¸µé ¼ö ÀÖ´Ù.

    Âü°í»çÀÌÆ®´Â ´ÙÀ½°ú °°´Ù.
    
         http://www.heimhardt.de/htdocs/ssh.html

3. ¼³Á¤ Å×½ºÆ®

3.1 Æ÷½ºÆ®±×·¹½º ½´ÆÛÀ¯Àú Æнº¿öµå

Å×½ºÆ®¸¦ À§ÇØ postgres ÀÇ ½´ÆÛ À¯Àú °èÁ¤ÀÇ Æнº¿öµå¸¦ ¸¸µé¾î¾ß ÇÑ´Ù. ÀÌ Æнº¿öµå´Â ´ÜÁö Æ÷½ºÆ®±×·¹½º¿¡ Á¢¼ÓÀ» À§ÇÑ °ÍÀ̸ç telnet ¿¡ ·Î±äÀ» À§ÇÑ Æнº¿öµå´Â ¾Æ´Ï´Ù.

¿©±â¼­ Æ÷½ºÆ®±×·¹½ºÀÇ ½´ÆÛÀ¯Àú °èÁ¤À» postgres ÀÌ°í Æнº¿öµå´Â nogadax¶ó°í °¡Á¤Çϸç ÀÌ¿¡ ´ëÇÑ ÀýÂ÷´Â ´ÙÀ½°ú °°´Ù.

   
´Ü°è 1)
    
[postgres@nogadax postgres]$ psql  template1
template1=> alter user postgres with password "nogadax";
...
template1=>\q

´Ü°è 2)
    
[postgres@nogadax postgres]$ vi $PGDATA/pg_hba.conf
...........
À̺κп¡¼­ ¸¶Áö¸· ºÎºÐÀÇ ¶óÀÎÀ» ÁÖ¼®Ã³¸®ÇÑ ÈÄ 
"local  all  crypt" À»  Ãß°¡ÇÑ´Ù.
±×·± ÈÄ ÀúÀåÇÏ°í ºüÁ® ³ª¿Â´Ù. 
...........

´Ü°è 3) 
    
[postgres@nogadax postgres]$ psql -u template1
username : postgres
passwd   : nogadax
template1=>create user testusr with password "testusr" creatdb;
...........
template1=>select usename from pg_user;
     
usename
----------
 postgres
 testusr
 (2rows)
     
template1=>\q


´Ü°è 4)
    
[postgres@nogadax postgres]$ psql -u template1
  username : testusr
  password : testusr
    
 template1=>\q
[postgres@nogadax postgres]$ 

3.2 ´Ù¾çÇÑ ¼³Á¤ ¿¹Á¦


¿¹ 1) ´ÙÀ½Àº °¡Á¤ ÀϹÝÀûÀÎ ¼³Á¤ÀÌ´Ù. 

  local  all  trust
  host   all  127.0.0.1  255.255.255.255  trust

local ¸¦ ÅëÇØ ¸ðµç(all) µ¥ÀÌŸº£À̽º¿¡ ´ëÇÑ Á¢¼ÓÀ» Çã¿ëÇϸç 
host ÀÇ IP°¡ 127.0.0.1 ÀÎ Á¢¼ÓÀ» Çã¿ëÇÑ´Ù. 

¿¹ 2) crypt ¼³Á¤ 
     
crypt ¿¡ ´ëÇÑ ¼³Á¤Àº ¹Ì¸® À¯Àú¸í°ú Æнº¿öµå°¡ ¼³Á¤µÇ¾î ÀÖ¾î¾ß
ÇÑ´Ù. ¶ÇÇÑ psql Á¢¼Ó½Ã -u ¿É¼ÇÀ» Àû¿ëÇÏ¿µ¾ß ÇÑ´Ù. 
        
  local  all  crypt 
  host   all  210.110.144.161  255.255.255.255  crypt
        
¿¹ 3) reject ¼³Á¤ 

  host  all  210.110.144.161  255.255.255.255  reject
       
210.110.144.161 ÀÇ IP ¸¦ °¡Áø °÷À¸·ÎºÎÅÍÀÇ Á¢¼ÓÀ» Çã¿ëÇÏÁö
¾Ê´Â´Ù. Áï, °ÅºÎÇÑ´Ù(reject)
       
¿¹ 4) password ¼³Á¤ 

 host  all  210.110.144.161 255.255.255.255  password 

4. JDBC CONNECTION Å×½ºÆ®

1. Ŭ¶óÀ̾ðÆ®´Â power linux 2 ¸¦ »ç¿ëÇÏ¿´°í ¼­¹ö·Î´Â accel ¸®´ª½º6.2 ¸¦ »ç¿ëÇÏ¿´´Ù. Æ÷½ºÆ®±×·¹½º´Â 7.0 beta3 À» »ç¿ëÇÏ¿´°í jdk1.2.2 ¸¦ »ç¿ëÇÏ¿´´Ù.

2. Å×½ºÆ®¸¦ À§ÇØ Å¬¶óÀ̾ðÆ®¿¡ Æ÷½ºÆ®±×·¹½º JDBC µå¶óÀ̹ö¸¦ ¼³Ä¡ÇÏ¿©¾ß ÇÏ¸ç ¼³Ä¡½Ã ÁÖÀÇÇÒ Á¡ÀÌ ÀÖ´Ù. ¸¸¾à jdk1.1.x ¸¦ »ç¿ëÇÑ´Ù¸é Æ÷½ºÆ®±×·¹½º JDBC1 À» »ç¿ëÇÏ¿©¾ß Çϸç jdk1.2.x ¸¦ »ç¿ëÇÑ´Ù¸é Æ÷½ºÆ®±×·¹½º JDBC2 ¸¦ »ç¿ëÇÏ¿©¾ß ÇÑ´Ù.

3. Ŭ¶óÀ̾ðÆ®¿¡ JDBC µå¶óÀ̹ö ¼³Ä¡

¸ÕÀú Æ÷½ºÆ®±×·¹½º JDBC µå¶óÀ̹ö¸¦ Ŭ¶óÀ̾îÆ®ÃøÀÇ Àû´çÇÑ µð·ºÅ丮¿¡ º¹»çÇÑ´Ù. ¿©±â¼­´Â /usr/local/lib/jdbc_post/ µð·ºÅ丮¿¡ º¹»çÇÏ¿´´Ù. ±×·± ÈÄ CLASSPATH ¸¦ Àâ¾ÆÁØ´Ù. ´ÙÀ½Àº CLASSPATH ¼³Á¤ ¿¹ÀÌ´Ù.

     
  CLASSPATH=/usr/local/lib/jdbc_post/postgresql.jar:.
  export  CLASSPATH
      

4. Æ÷½ºÆ®±×·¹½º ¼­¹öÀÇ pg_hba.conf ¸¦ ÀûÀýÈ÷ ¼öÁ¤ÇØÁÖ¾î¾ß ÇÑ´Ù. Å×½ºÆ®ÇÒ JDBC ¼Ò½º ¿¹Á¦¸¦ ¼öÇàÇÒ Å¬¶óÀ̾ðÆ®ÀÇ IP °¡ "210.110.144.161" À̶ó°í °¡Á¤ÇÏ°í Æ÷½ºÆ®±×·¹½º DB ¼­¹öÀÇ IP ÁÖ¼Ò´Â "210.110.144.162"¶ó°í °¡Á¤ÇÑ´Ù. Å×½ºÆ®ÀÇ ¼öÇà¿¡ ¾Õ¼­ DB ¼­¹öÃø¿¡ IP ÁÖ¼Ò°¡ "210.110.144.161"ÀΠŬ¶óÀ̾ðÆ®Ãø¿¡ ´ëÇÑ ÀÎÁõ ¼³Á¤À» ÇÏ¿©¾ß ÇÑ´Ù. ¼³Á¤Àº ´ÙÀ½°ú °°ÀÌ pg_hba.conf ¿¡ ´ÙÀ½ ¶óÀÎÀ» ÀûÀýÈ÷ Ãß°¡ÇÏ¿©¾ß ÇÑ´Ù.

 host all 210.110.144.161 255.255.255.255  crypt
      

5. Æ÷½ºÆ®±×·¹½º¿ëÀÇ ÀûÀýÇÑ ¿¹Á¦ ÇÁ·Î±×·¥À» º¹»çÇÑ ÈÄ ÄÄÆÄÀÏ ÇÑ´Ù. ¿©±â¼­´Â basic.java ¸¦ °¡Áö°í Å×½ºÆ® ÇÑ´Ù. Æ÷½ºÆ®±×·¹½º JDBC °ü·Ã ¿¹Á¦ ÇÁ·Î±×·¥Àº Æ÷½ºÆ®±×·¹½ºÀÇ ¼Ò½º µð·ºÅ丮ÀÇ /src/interfaces/jdbc/example µð·ºÅ丮¿¡ ÀÖ´Ù.

¶ÇÇÑ basic.java ¼Ò½ºÀÇ Á¦ÀÏ Ã¹ ¶óÀÎÀÇ "package example;"À» ÀûÀýÈ÷ ó¸®ÇÑ´Ù. (ÁÖ¼®Ã³¸®³ª »èÁ¦µî..)

ÄÄÆÄÀÏÀº ´ÙÀ½Ã³·³ ÇÑ´Ù.

javac basic.java 

½ÇÇàÀº ´ÙÀ½Ã³·³ ÇÑ´Ù.

java basic jdbc:postgresql://210.110.144.162/template1 postgres nogadax

À§ÀÇ IP ¾îµå·¹½º "210.110.144.162" ´Â Æ÷½ºÆ®±×·¹½º°¡ ÀÖ´Â ¼­¹öÀÇ IP ÀÌ°í "template1"Àº Á¢¼ÓÇÏ¿© Å×½ºÆ®ÇÏ·Á´Â µ¥ÀÌŸº£À̽º¸íÀÌ´Ù. "postgres"´Â Á¢¼ÓÀ» ÇÏ·ÁÇÏ´Â Æ÷½ºÆ®±×·¹½º ÀÇ DB »ç¿ëÀÚ¸íÀÌ°í "nogadax" ´Â Æнº¿öµåÀÌ´Ù.

IP ´Â ÀÚ½ÅÀÇ ¼­¹ö¿¡ ¸Â°Ô ÀûÀýÈ÷ º¯°æÇØÁØ´Ù. ¸¸¾à ÇϳªÀÇ ¼­¹ö»ó¿¡¼­ Å×½ºÆ®¸¦ ÇÏ·ÁÇÑ´Ù¸é IP´Â 127.0.0.1 À̸ç pg_hba.conf ÀÇ ¼³Á¤Àº ´ÙÀ½°ú °°´Ù.

       host all 127.0.0.1 255.255.255.255  crypt 
                

5. ±âŸ

Domain Socket ¿¡ ´ëÇÑ ³»¿ëÀº "Unix ÀÇ ³»ºÎ ±¸Á¶"(È«¸ª °úÇÐ ÃâÆÇ»ç,Á¶À¯±Ù ¿ª)ÀÇ "ÇÁ·Î¼¼½º°£ Åë½Å"ºÎºÐÀ» ÂüÁ¶ÇÏ¿´´Ù.

pg_hba.conf ´Â Æ÷½ºÆ®±×·¹½ºÀÇ Admin's Guide ÀÇ "SECURITY" ºÎºÐÀ» ÂüÁ¶ÇÏ¿´´Ù.

Æ÷½ºÆ®±×·¹½º JDBC µå¶óÀ̹ö °ü·Ã ³»¿ëÀº Æ÷½ºÆ®±×·¹½ºÀÇ Programmer's Guide ÀÇ "JDBC Interface" ºÎºÐÀ» ÂüÁ¶ÇÏ¿´´Ù.


ID
Password
Join
It is better to wear out than to rust out.


sponsored by andamiro
sponsored by cdnetworks
sponsored by HP

Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2003-08-10 11:52:30
Processing time 0.0029 sec