Untitled Document
Ȩ > FAQ
 
 

Q.1 Windows 98 ¿¡ Personal Edition À» ¼³Ä¡ÇßÀ¾´Ï´Ù. ±×·±µ¥, Á¦¾î¼¾ÅͰ¡ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù. db2start db2admin start db2jstrt 6790 ÀÌ·¸°Ô ½ÇÇàÇÑ ÈÄ Á¦¾î¼¾Å͸¦ ½ÇÇàÇϸé could not initialize Java Virtual Machine. Program Exit. ¶ó´Â âÀÌ ³ª¿É´Ï´Ù. ´äº¯º¸±â
  2000.9.5  
Q.2 ´Ù¸¥ DBó·³ Stored Function°ú Procedure¸¦ ¸¸µé¼ö ÀÖ´Â ¹æ¹ý°ú ¿À¶óŬó·³ Select ¹®ÀÇ Çʵ忡 FunctionÀ» »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö¸¦ ¾Ë°í ½Í½À´Ï´Ù.. ´äº¯º¸±â
     
Q.3 ÇϳªÀÇ PROGRAM¿¡¼­ DRDA·Î µÇ¾î ÀÖ´Â Remote DATABASE (DB2)¿Í Local DATABASE(DB2)¸¦ µ¿½Ã¿¡ ¿¬°áÇÏ¿© »ç¿ë ÇϰíÀÚ ÇÕ´Ï´Ù..¹æ¹ýÀÌ ÀÖ´ÂÁö ¾Æ´Ï¸é ´Ù¸¥ S/W°¡ ÇÊ¿äÇѰÇÁö ±Ã±ÝÇϳ׿ä..... ´äº¯º¸±â
     
Q.4 ÇöÀç NT¿¡¼­ ÀÛ¾÷À» Çϰí Àִµ¥ *.sqc ÄÄÆÄÀÏ¿¡ °üÇØ¼­ Áú¹®µå¸³´Ï´Ù. ¸ÕÀú ÇÁ¸®ÄÄÆÄÀÏ·¯·Î ÄÄÆÄÀÏÀ» ÇØ¼­ *.c ¸¦ ¸¸µé¾ú´Âµ¥..±× ´ÙÀ½¿¡ ¾îÄÉ ÇØ¾ßÇÏ´ÂÁö ±Ã±ÀÇϱº¿ä. ºñÁÖ¾ó C++·Î ÄÄÆÄÀÏ Çߴµ¥ Çì´õ ÆÄÀÏ ¸î°³°¡ ¾ø´Ù´Â ¸»°ú ¿¡·¯°¡ ¿©·¯ÁÙ³ª´Âµ¥.. °ÅÀÇ ´ëºÎºÐÀÌ DB°ü·ÃÇØ¼­ ³ª´Âµ¥........ ´Ù¸¥ c ÄÚµå ÄÄÆÄÀÏ·¯°¡ ÀÖ´ÂÁö ¾Æ´Ô ±×³É ºñÁÖ¾ó c++·Î ÄÄÆÄÀÏÀ» ÇÏ´ÂÁö... ´äº¯º¸±â
  2000.9.5  
Q.5 ÇöÀç VB¿Í DB2·Î °³¹ßÀ» ÁøÇàÁßÀÔ´Ï´Ù. ±×·±µ¥ ¹®Á¦´Â DB2°¡ Select½Ã ¶ôÀÌ °É¸®´Â°Å °°Àºµ¥ ÇØ°áÇÒ¼ö ¾ø´ÂÁö¿ä? VBÄÚµù½Ã begin tranÀ» °É°í ³ª¸é Å×À̺íÀ» select½Ã¿¡µµ ¶ôÀÌ °É¸®´Â°Å °°Àºµ¥¿ä. Ȥ½Ã ÀÌ·±¹®Á¦¸¦ ÇØ°áÇÒ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖÁö´ÂÁö¿ä. ´äº¯º¸±â
  2000.9.5  
Q.6 PLAN BIND¿Í PACKAGE BINDÀÇ Àå´ÜÁ¡À» ¾Ë°í ½ÍÀ¸¸ç BATCH PROGRAM¿¡¼­µµ PACKAGE BIND¸¦ »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö ¾Ë°í ½Í½À´Ï´Ù..¿©·¯ SITE¸¦ µ¹¾Æ ´Ù´Ï´Ù º¸´Ï DB2 ACCESS½Ã VIEW¸¦ »ç¿ëÇÏ´Â SITE´Â IBM SITE¸¸ º¸¾Ò½À´Ï´Ù..VIEW¸¦ »ç¿ëÇÏ¸é ¾ÈµÇ´ÂÁö? VIEW»ç¿ëÀÇ Àå´ÜÁ¡? ´äº¯º¸±â
  2000.6.17  
Q.7 ÇöÀç DB2¸¦ ÀÌ¿ëÇÏ¿© ÇÁ·Î±×·¥À» Â¥´Âµ¥ AutoCommit¹®Á¦°¡ °É¸®°í ÀÖ½À´Ï´Ù. DB2¿¡¼± Auto CommitÀ» ¾î¶»°Ô Á¦¾îÇÏ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù. Àú´Â ÇöÀç NT±â¹ÝÀ¸·Î ÀÛ¾÷À» Çϰí Àִµ¥ AIX¿¡¼­´Â ±¸¼º°ü¸®ÀÚÀÇ log tabÀÇ '±×·ìÈ®¾à°³¼ö'¶ó´Â ºÎºÐÀ» 1¿¡¼­ ´Ù¸¥ Áõ°¡¼ö¸¸Å­ Áñ·ÁÁá´Ù°í ÇÏ´øµ¥ ¿ª½Ã ±× ¹æ¹ý(1->25·Î ´Ã·Á Disk¿¡ µî·ÏµÇ´Â °ÍÀ» ´ÊÃçÁÖ´Â °Í)ÀÌ AutoCommit ´ë½Å(?) ¾²ÀÌ´Â °ÇÁö ¾Æ´Ï¸é ÀϹÝÀûÀ¸·Î AutoCommit = false ¾ç½ÄÀ¸·Î ½áÁÖ´Â ¹æ¹ýÀÌ ÀÖ´ÂÁö ¾Æ½Ã´Â ºÐÀº ²À ¾Ë·ÁÁֽñ⠹ٶø´Ï´Ù ´äº¯º¸±â
  2000.7.18  
Q.8 TWO PHASE COMMIT¿¡ ´ëÇÏ¿© ¹®ÀÇ µå¸³´Ï´Ù. Å×½ºÆ® ±¸¼º DB¸í : SAMPLE1, SAMPLE2 TABLE ¸í : INST01.EXAM1, INST01.EXAM2 ±Ùµ¥ ¹®Á¦°¡ µÇ´Â °ÍÀÌ SAMPLE1 DB¿¡ Á¢¼ÓÇÏ¿© precompileÀ» Çϴµ¥ ¼Ò½º ÆÄÀÏÀÇ ³»¿ë Áß SAMPLE2 DBÀÇ INST01.EXAM2 Å×À̺íÀ» »ç¿ëÇÏ´Â SQL ¹®ÀÇ °æ¿ì precompile½Ã 'INST01.EXAM2´Â Á¤ÀǵÇÁö ¾Ê¾Ò½À´Ï´Ù' ¶ó´Â ¸Þ½ÃÁö°¡ ³ª¿À¸é¼­ ÁßÁöµÇ°Åµç¿ä. ¹°·Ð SAMPLE1 ÂÊ¿¡´Â INST01.EXAM2°¡ ¾øÀ¸´Ï±î¿ä. ÀÌ·² °æ¿ì ¾î¶»°Ô ÇÏ¿©¾ß ÇÏ´ÂÁã. ¾ËÄÑÁÖ½Ã¸é °¨»çÇϰڽÀ´Ï´Ù. ±×¸®°í µ¡ ºÙ¿©¼­ two phase commit¿¡ °ü·ÃµÇ¼­ ÁÖÀÇÇØ¾ß ÇÒ °Í µîµµ¿ä... ÀÌ¿ÕÀÌ¸é »ùÇà ¼Ò½ºµµ ¾ðÀúÁÖ½Ã¸é ¹«Áö °¨»çÇϰڽÀ´Ï´Ù. ´äº¯º¸±â
  2000.7.4  
Q.9 CLI ÀÎÅÍÆäÀ̽º¿¡ ´ëÇØ¼­ - DB2 ÀÇ CLI ´Â ODBC ¸¦ ÀÌ¿ëÇØ¼­ ¿¬°áÀ» ÇÏ´Â°Ô ¾Æ´Ñ°¡¿ä? ±×·³ ODBC ¸¦ ÀÌ¿ëÇÏÁö ¾Ê°í C API ·Î¸¸ Á¢±ÙÇÒ ¼ö ¾ø³ª¿ä? ´äº¯º¸±â
  2000.7.4  
Q.10 ¿¹¸¦ µé¾î informix¿¡¼­´Â select * from table1 into temp table_1; ÀÌ·¸°ÔÇϸé select °á°ú¿¡ ¸Â°Ô Àӽà Å×À̺í table_1ÀÌ ¸¸µé¾î Áö´Âµ¥ DB2¿¡¼­µµ ÀÌ·±°ÍÀÌ µÇ´ÂÁö¿ä? SQL Reference¿¡¼­ ã¾Æ ºÃ´Âµ¥ È£½ºÆ® º¯¼ö¿¡ 1 row ¹Û¿¡ ÀúÀåÀÌ ¾ÊµÈ´Ù°í ³ª¿Í Àִµ¥ °á°ú¸¦ Àӽà Å×ÀÌºí¿¡ ÀúÀåÇÒ ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖÀ¸¸é ¾Ë·ÁÁÖ¼¼¿ä.. ÀÓ½ÃÅ×ÀÌºí¿¡ ÀúÀåÀÌ ¾ÊµÈ´Ù¸é ¸ÕÀú Å×À̺íÀ» °á°ú¿¡ ¸Â°Ô »ý¼ºÇÏ°í °Å±â¿¡ select °á°ú¸¦ ³Ö¾î¾ß µÇ´Â °Ç°¡¿ä? ´äº¯º¸±â
  2000.8.20  
Q.11 SQL ¿¹¿Ü: [IBM][CLI Driver] SQL1040N µ¥ÀÌŸº£À̽º¿¡ ÀÌ¹Ì ÃÖ´ë ¼öÀÇ ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ¿¬°áµÇ¾î ÀÖ½À´Ï´Ù." À§¿Í °°Àº ¿¡·¯°¡ ÀÚ²Ù ¶ß°Åµç¿ä. ±×·¡¼­ ¿Â¶óÀÎ ¼­ÀûÀ» Âü°íÇߴµ¥.°Å±â¿¡¼­ " ´Ù¸¥ ÀÀ¿ëÇÁ·Î±×·¥ ÀÌ µ¥ÀÌŸº£À̽º¿¡¼­ ºÐ¸®µÉ ¶§±îÁö ±â´Ù¸®½Ê½Ã¿À. º¸´Ù ¸¹Àº ÀÀ¿ëÇÁ·Î±×·¥À» µ¿½Ã¿¡ ½ÇÇàÇÏ·Á¸é, maxappls °ªÀ» Áõ°¡½ÃŰ½Ê½Ã¿À. ¸ðµç ÀÀ¿ëÇÁ·Î±×·¥À» µ¥ÀÌŸº£À̽º¿¡¼­ ¿¬°áÇØÁ¦ÇÏ°í µ¥ÀÌŸº£ÀÌ ½º¸¦ ´Ù½Ã ½ÃÀÛÇÑ ÈÄ ½Å±Ô °ªÀÌ Àû¿ëµË´Ï´Ù." ÀÌ·¸°Ô ³ª¿Ô½À´Ï´Ù. ±×·±µ¥ maxappls°ªÀ» ¾îµð¿¡¼­ Áõ °¡ ½ÃÄÑ¾ß ÇÏ´Â Áö Àß ¸ð¸£°Ú¾î¿ä. À§¿Í °°Àº ¹æ¹ýÀ» ¾î¶»°Ô Àû¿ëÇØ¾ß Çϰí ÇØ°áÇÒ ¼ö ÀÖÀ»±î¿ä? ´äº¯º¸±â
  2000.7.28  
Q.12 DB2¿¡¼­ ¾î¶² Äڵ带 selectÇÑ ÈÄ, ±× °á°ú¸¦ ´Ù½Ã looping µ¹¸é¼­ insertÇÏ·Á°í Çß´õ´Ï, ÀÌ·± ¿¡·¯°¡ ³³´Ï´Ù. COM.ibm.db2.jdbc.app.DB2Exception: [IBM][CLI Driver] CLI0115E Ä¿¼­ »óŰ¡ À¯È¿ÇÏÁö ¾Ê½À´Ï´Ù. SQLSTATE=24000 ¿Ö ÀÌ·± ¿¡·¯°¡ ³ª´Â °Ç°¡¿ä? µÎ°³ÀÇ sql ¹®ÀÌ µ¿½Ã¿¡ ÁøÇàµÇ¾î¼­ ±×·¯´Â °Å °°Àºµ¥.. Ä¿¼­¸¦ Á¤ÀÇÇØ ¾ß Çϴ°͵µ °°±¸.. Âü°í·Î, Á¦ Äڵ带 ¹Ø¿¡ ÂØ²û ºÙÀÔ´Ï´ç~~ ´äº¯º¸±â
 

-------------------------------------------->
qString = "(SELECT trancode FROM tranconf) EXCEPT (SELECT trancode FROM tadlog WHERE CDATE = "+a01 +" and server = " + sname +" )";
rs = stmt.executeQuery(qString);
while (rs.next()) {
String tr = rs.getString(1);
qString = "INSERT INTO tadlog VALUES ( " + a01 + " , " + tr + " , " + sname + " , " + setzero+ ")"; updateReturn = stmt.executeUpdate(qString); }

2000.9.29

 
     
Q.13 ¾Æ·¡ ¹®ÀåÀº Á¦°¡ ¿À¶óŬ°ú ¿¬µ¿Çؼ­ °Ô½ÃÆÇÀ» ¸¸µé¶§ ÀÌ¿ëÇÑ dbconnection ÀÔ´Ï´Ù. ±×·±µ¥ À̹ø¿¡ µ¥ÀÌÅÍ º£À̽º¸¦ db2·Î ¹Ù²îº¼·Á°í Çϴµ¥ ¾î¶»°Ô ÇØ¾ßµÉÁö db2¿¡ ´ëÇÑ ÀÚ·á°¡ ±×¸® ¸¹Áö ¾ÊÀº°Í °°¾Æ¿ä.. Á¦°¡ ¾ÆÁ÷ ¸ô¶ó¼­ ±×·¸°ÚÁö¸¸ ¾Æ·¡ ¹®Àå¿¡¼­ url,Class.forName ºÎºÐÀ» ¾î¶»°Ô ¹Ù²îÁÖ¾î¾ß µÅ³ª¿ä. ±×¸®°í Connection ºÎºÐÀº ±×´ë·Î ¾²¸éµÇ³ª¿ä.. °¡¸£ÃÄÁÖ¼¼¿ä ´äº¯º¸±â
 

Âü°í -> µ¥ÀÌÅÍ º£À̽º À̸§ - MPROJECT Å×À̺í À̸§ -
ADMIN UID -> ADMINISTRATOR
PWD -> ADMIN

Connection DB_Connection() throws ClassNotFoundException, SQLException,Exception
{
String url = "jdbc:oracle:thin:@203.246.85.137:1521:ora2000";
//For JDBC-ODBC Bridge //String url = "jdbc:inetdae:localhost:8080?database=ryubbs"; //For JDBC_SQL*Server Class.forName("oracle.jdbc.driver.OracleDriver"); //Class.forName("com.inet.tds.TdsDriver").newInstance(); // For JDBC-SQL*Server TDS Driver Connection conn=DriverManager.getConnection(url,"scott","needful"); return conn;
}

2000.9.4

 
     
Q.14 »ç¿ëÁßÀÎ JDBC¹öÀüÀ» ¾Ë ¼ö ÀÖ´Â ¹æ¹ýÀÌ ÀÖÀ¸¸é Á» ¾Ë·ÁÁÖ¼¼¿ä... ´äº¯º¸±â
     
Q.15 ResulteSet ClassÀÇ getInt(int or String) Method ¹®Á¦ Àú´Â Áö±Ý WAS & DB2¸¦ ÀÌ¿ëÇØ¼­ ÇÁ·ÎÁ§Æ®¸¦Çϰí ÀÖ½À´Ï´Ù. ±×·¡¼­ DB2¿¡¼­ ÀڷḦ SelectÇØ ¿À´Â °øÅë ºóÀ» ÀÛ¼ºÇÏ¿´½À´Ï´Ù. ±×·±µ¥ ¹®Á¦´Â ResulteSet classÀÇ getInt(int or String) Method¸¦ »ç¿ëÇÒ¶§ ¼ø¼öÇÏ°Ô ÀÌ Method ¸¸ »ç ¿ëÇÏ´Â °æ¿ì¿¡´Â ¹®Á¦°¡ ¾ø´Âµ¥ ÀÌ method¸¦ ÂüÁ¶ÇÏ¸é ¹®Á¦°¡ »ý±é´Ï´Ù. ´äº¯º¸±â
 

¿¹) new Integer(getInt(1)) ==> ¸ðµç °ªÀÌ '0'À¸·Î ÃʱâÈ­ µÊ

2000.8.14

 
Q.16 JSP¸¦ Ȱ¿ë ÇÏ°í ½ÍÀºµ¥¡¦... Àú´Â tomcatÀ» ±ò·Á°í Çϸé build.shÀ» ½ÇÇà Çϸé..±×³É À߸øÇÑ ¿É¼Ç ó·³ ±×³É ¹®ÀÚ¸¸.. ±×¸®°í JDK1.1.8¸¦ INSTALLÇߴµ¥¿ä.. ¿©±â¿£ import.javax.servlet.* ÀÌ·±°ÍÀÌ ¾ø¾î¿ä.. ¾î¶»°Ô ÇØ¾ß Çϳª¿ä. ±×¸®°í AIXÀÇ DB2¿¡¼­ JSP°¡ µÇ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù. ´äº¯º¸±â
  2000.7.17  
Q.17 ClassPath ¿¡´Â SQLLIB\lib\db2java.zip ÀÌ Æ÷ÇԵǾîÀÖ½À´Ï´Ù. ±×¸®°í Application ¿¡¼­´Â DB query °¡ Àß µÇ´Âµ¥, °°Àº ·çƾÀ» °®´Â ¼­ºí¸´¿¡¼­´Â classNotFoundException ÀÌ ¹ß»ýÇÕ´Ï´Ù.
try { Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newIntance(); } catch ¡¦ ÀÌ ºÎºÐ¿¡¼­ catch ·Î ÂïÀ¸¸é ..±×·± ¿¡·¯°¡ ¹ß»ýÇÕ´Ï´Ù. ¾î¶»°Ô ÇØ¾ßÇϳª¿ä? ±×¸®°í ÄÜ¼Ö ¿¡¼­´Â µÇ´Âµ¥ ¼­ºí¸´¿¡¼­ ¾ÈµÇ´Â ÀÌÀ¯´Â ¹«¾ùÀΰ¡¿ä?
´äº¯º¸±â
  2000.7.16  
  SampleÀº ¾îµð¿¡ ¼³Ä¡µÇ´ÂÁö ¾Ë ¼ö ÀÖÀ»±î¿ä? ±×¸®°í Ȥ½Ã DB2Java.zip ³»ÀÇ Bean ¿¡ ´ëÇÑ Reference´Â ¾ø³ª¿ä? Àû¾îµµ, app.DB2Driver ¿Í net.DB2Driver ÀÇ Â÷ÀÌÁ¡À» ¾Ë°í ½Í±º¿ä. ´äº¯º¸±â
  2000.7.19  
Q.18 Array Fetch¿¡ °üÇØ... CÇÁ·Î±×·¥À¸·Î ÀÛ¼ºÇϴµ¥ Array Fetch¸¦ »ç¿ëÇÒ ¼ö ÀÖ³ª¿ä? »ç¿ë°¡´ÉÇÏ´Ù¸é ¾î¶² ¹æ¹ýÀ¸·Î ÇØ¾ß Çϳª¿ä? ´äº¯º¸±â
  2000.10.02  
Q.19 À¥¿¡¼­ Data Insert½Ã DB°¡ ’K¿© ¹ö¸³´Ï´Ù ´Ù¸§ÀÌ ¾Æ´Ï¶ó À¥¿¡¼­ ¾à 1000°ÇÀÇ µ¥ÀÌÅ͸¦ db¿¡ ÀúÀåÇÏ´Â ¾÷¹«°¡ Àִµ¥ ±×ºÎºÐ¸¸ ¼öÇàÇϸé DB°¡ ¸¶Ä¡ LockÀÌ °É¸°°Íó·³ µ¿ÀÛÀ» ÇÏÁö ¾Ê½À´Ï´Ù. °á±¹ db2 force application allÀ» ¼öÇàÇÑÈÄ DB¸¦ restart ½Ãŵ´Ï´Ù. logsizeµî parameter¹®Á¦ Àϼöµµ ÀÖ´Â°Í °°Àºµ¥.
1) À̰°Àº Àå¾Ö¹ß»ý½Ã process ÃßÀûÇϰųª Æ©´×ÇÏ´Â ¹æ¹ýÀ» ¾Ë°í ½Í½À´Ï´Ù
2) ÀÌ °°Àº Àå¾Ö¹ß»ý½Ã db¸¦ restartÇÏÁö ¾Ê°í Á¶Ä¡ÇÒ¼ö ÀÖ´Â ¹æ¹ýÀº ¾ø³ª¿ä ?
´äº¯º¸±â
  2000.10.20  
Q.20 DB2 UDB v5.2 for AIX¿¡¼­ Module ½ÇÇà ½Ã ¹ß»ýÇÏ´Â ¿¡·¯ÀÇ ¿øÀÎÀ» ¾Ë·ÁÁÖ½Ä ¹Ù¶ø´Ï´Ù ... ´äº¯º¸±â
 

SQL0805 ERROR ¹ß»ý ½Ã SQL0805N ÆÐŰÁö ""ÀÌ ¾ø¾ú½À´Ï´Ù.

¿øÀÎ
: ÀÌ ¸Þ¼¼Áö(SQLCODE)ÀÇ °¡´ÉÇÑ ¿øÀÎÀº ´ÙÀ½°ú °°½À´Ï´Ù.

o ÁöÁ¤ÇÑ ÆÐŰÁö ¶Ç´Â ÇÁ·Î±×·¥ÀÌ µ¥ÀÌÅÍ º£À̽º¿¡¼­ Á¤ÀǵÇÁö ¾Ê¾Ò½À´Ï´Ù.
o ÇÁ·Î±×·¥ÀÌ ¹ÙÀεåµÇÁö ¾Ê¾Ò°Å³ª »èÁ¦(drop)µÇ¾ú½À´Ï´Ù.
o ¼öÇàµÇ´Â ÀÀ¿ëÇÁ·Î±×·¥Àº µ¥ÀÌÅÍ º£À̽º¿¡ ¹ÙÀεåµÇÁö ¾Ê½À´Ï´Ù.
o DB2 À¯Æ¿¸®Æ¼³ª CLI ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¼öÇàÀ» ½ÃµµÇϸé, DB2 À¯Æ¿¸®Æ¼¸¦ µ¥ÀÌÅÍ º£À̽º¿¡ ¸®¹ÙÀεåÇØ¾ß ÇÒ °ÍÀÔ´Ï´Ù. ¸í·É¹®À» ó¸®ÇÒ ¼ö ¾ø½À´Ï´Ù.

Á¶Ä¡
: ¿Ã¹Ù¸¥ ÆÐŰÁö¸íÀ» ÁöÁ¤Çϰųª ÇÁ·Î±×·¥À» ¹ÙÀεåÇϽʽÿÀ.
¼öÇàÇϰí ÀÖ´Â ÀÀ¿ëÇÁ·Î±×·¥ÀÌ µ¥ÀÌÅÍ º£À̽º ¿¡ ¹ÙÀεåµÇÁö ¾ÊÀº °æ¿ì, ÇÊ¿äÇÑ ¹ÙÀε带 ¼öÇàÇϵµ·Ï µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ¿¡°Ô ¹®ÀÇÇϽʽÿÀ.
DB2 À¯Æ¿¸®Æ¼ ÇÁ·Î±×·¥À» µ¥ÀÌÅÍ º£À̽º¿¡ ¸®¹ÙÀεåÇØ¾ß ÇÒ °æ¿ì, µ¥ÀÌÅÍ º£À̽º¿¡ ¿¬°áµÈ µ¿¾È ´ÙÀ½ÀÇ CLP ¸í·É Áß Çϳª¸¦ ¼öÇàÇÏ¿© µ¥ÀÌÅÍ º£À̽º °ü¸®ÀÚ°¡ À̸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù.

o DB2 À¯Æ¿¸®Æ¼ÀÇ °æ¿ì "DB2 bind @db2ubind.lst blocking all grant public".
o CLIÀÇ °æ¿ì "DB2 bind @db2cli.lst blocking all grant public".
o DataJoiner »ç¿ëÀÚ: DataJoiner¿¡ ÇÊ¿äÇÑ ÆÐŰÁö°¡ Àû¿ë °¡´ÉÇÑ ÀÚ·á ¼Ò½º¿¡¼­ ¹ÙÀεåµÇ¾úÀ½À» È®ÀÎÇϽʽÿÀ.

DataJoiner°¡ »ç¿ëÇÏ´Â ÆÐŰÁö¸¦ ÀÚ·á ¼Ò½º¿¡ ¹ÙÀεåÇÏ´Â µ¥ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¿øÇϸé IBM DataJoiner Planning, Installation, and Configuration Guide¸¦ ÂüÁ¶ÇϽʽÿÀ.
sqlcode: -805 sqlstate: 51002

 
 

2000.10.16

 
Q.21 DB2 UDB ¸Þ¸ð¸® °ü¸®ÀÚÀÇ ¸Þ¸ð¸® ´©Ã⠴亯º¸±â
     
Q.22 Lock escalation¿¡ ´ëÇÑ db2diag.logÀÇ ¸Þ½ÃÁö ÇØ¼® ´äº¯º¸±â
     
Q.23 Ư¼ö¹®ÀÚ¿Í ¸í¸í¹ý ´äº¯º¸±â
     
Q.24 Tivoli Storage Mananger¿¡ µÎ°³ÀÇ °°Àº À̸§ÀÇ ·Î±×¸¦ °¡Áö°í ÀÖÀ» ¶§ rollforward°¡ µ¿ÀÛÇϳª¿ä? ´äº¯º¸±â
     
Q.25 DB2 UDB¿Í Legato Ŭ¶óÀÌ¾ðÆ®¸¦ AIX¿¡ ÀνºÅçÀ» Çß½À´Ï´Ù. Legato¸¦ »ç¿ëÇØ¼­ DB2ÀÇ DB¸¦ ¹é¾÷ ¹ÞÀ» ¼ö ÀÖ³ª¿ä? ´äº¯º¸±â
     
Q.26 SQLJ ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ ¹Ù¶÷Á÷ÇÑ lockÀÇ ÇüÅ ´äº¯º¸±â
     
Q.27 DB2 SQL¿¡¼­ ÀÀ¿ëÇÁ·Î±×·¥ ¼¼À̺êÆ÷ÀÎÆ®ÀÇ ÀÕÁ¡ »ì¸®±â ´äº¯º¸±â
     
Q.28 Embedded SQL Stored Procedure process(db2dari)°¡ Ŭ¶óÀ̾ðÆ®ÀÇ Ä¿³Ø¼ÇÀÌ ²÷¾îÁ®µµ ³¡³ªÁö ¾Ê½À´Ï´Ù. ´äº¯º¸±â
     
Q.29 ÀÀ¿ëÇÁ·Î±×·¥ ½ÇÇ൵Áß SQL0024N(µ¥ÀÌÅͺ£À̽º¸íÀÌ ÁöÁ¤µÇÁö ¾Ê¾Ò½À´Ï´Ù.) ¹ß»ý ´äº¯º¸±â
     
Q.30 Lock escalation¿¡ ´ëÇÑ db2diag.logÀÇ ¸Þ½ÃÁö ÇØ¼® ´äº¯º¸±â
     
Q.31 Tivoli Storage Mananger¿¡ µÎ°³ÀÇ °°Àº À̸§ÀÇ ·Î±×¸¦ °¡Áö°í ÀÖÀ» ¶§ rollforward°¡ µ¿ÀÛÇϳª¿ä? ´äº¯º¸±â
     
Q.32 DB2 UDB¿Í Legato Ŭ¶óÀÌ¾ðÆ®¸¦ AIX¿¡ ÀνºÅçÀ» Çß½À´Ï´Ù. Legato¸¦ »ç¿ëÇØ¼­ DB2ÀÇ DB¸¦ ¹é¾÷ ¹ÞÀ» ¼ö ÀÖ³ª¿ä? ´äº¯º¸±â
     
Q.33 db2diag.log ÆÄÀÏ¿¡ "Prefetch Queue Full" À̶ó´Â ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù. ÀÌ°Ç ¹«½¼ ÀǹÌÁÒ ´äº¯º¸±â
     
Q.34 REORG Áß¿¡ Log full ÀÌ ³³´Ï´Ù. ´äº¯º¸±â
     
Q.35 DB2¿¡¼­ Á¦°øÇÏ´Â JDBC µå¶óÀ̹ö¿¡¼­ Áö¿øÇÏÁö ¾Ê´Â ¸Þ¼­µå, µ¥ÀÌÅÍ Å¸ÀÔ µîÀ» ¾Ë·ÁÁÖ¼¼¿ä. ´äº¯º¸±â
     
Q.36 ¾î¶² DB2 JDBC µå¶óÀ̹ö¸¦ »ç¿ëÇØ¾ß Çմϱî? ´äº¯º¸±â
     
Q.37 AIX 4.3.3 ¸Ó½ÅÀÇ JDBC ¾îÇø®ÄÉÀ̼ÇÀÌ ½ÇÇàµÇÁö ¾Ê½À´Ï´Ù. ´äº¯º¸±â
     
Q.38 JDBC 2.0 Áö¿ø ´äº¯º¸±â
     
Q.39 Websphere ¾îÇø®ÄÉÀ̼ǿ¡¼­ Áö¿ª DB·Î ¿¬°á½ÃµµÁß SQL1013N ¿À·ù ¹ß»ý ´äº¯º¸±â
     
Q.40 JDBC ¾îÇø®ÄÉÀ̼ÇÀÌ CLI0615E ¿À·ù¿Í ÇÔ²² ÀÚÁÖ ²÷±é´Ï´Ù. ´äº¯º¸±â
     
Q.41 DB2 C API ¿¡¼­ Å×À̺í Á¤º¸ Àоî¿À´Â ÇÔ¼ö°¡ ¹º°¡¿ä? ´äº¯º¸±â
     
Q.42 DB2 JDBC Class path ´Â ¾î¶²½ÄÀ¸·Î µÇ¾î ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù. ´äº¯º¸±â
     

 



A.1
db2jstrt 6790 ÈÄ¿¡ db2cc 6790À¸·Î command line»ó¿¡¼­ Æ÷Æ® ³Ñ¹ö¸¦ ¸ÂÃç¼­ ´Ù½Ã ½ÇÇàÇØ º¸¼¼¿ä. ±×¸®°í, ¼³Ä¡µÈ JDK¿¡ ´ëÇÑ classpath´Â ¼³Á¤ÀÌ µÇ¾î ÀÖ°ÚÁÒ? JDK¿¡ ´ëÇÑ versionÀº ¾î¶»°Ô µÇ³ª¿ä? Personal editionÀ» »ç¿ëÇϽŴٸé process»ó¿¡¼­ db2jd, db2jds°¡ »ì¾Æ ÀÖ´ÂÁöµµ Çѹø È®ÀÎÇØ º¸½Ã±â ¹Ù¶ø´Ï´Ù.

µ¹¾Æ°¡±â



A.2
DB2¿¡¼­ÀÇ Stored Procedure¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀº ¿©·¯ °¡Áö°¡ ÀÖ½À´Ï´Ù. Oracle¿¡¼­Ã³·³ PL/SQL ÀÌ ¶ó´Â º°µµÀÇ Procedure Language ¸¸À¸·Î ÀÛ¼ºÇÏ´Â °ÍÀÌ ¾Æ´Ï¶ó, 3GL (C,C++,Cobol,Fortran µî), Java, OLE ·Î ÀÛ¼ºÇÒ ¼ö ÀÖ½À´Ï´Ù. ¶ÇÇÑ DB2 UDB v7¿¡¼­´Â SQL/PLÀ̶ó´Â º°µµÀÇ SQL Procedure Language·Î ÀÛ¼ºÇÒ ¼ö°¡ ÀÖ½À´Ï´Ù. ¶ÇÇÑ ÀÏ¹Ý SQL ¹®¿¡¼­ UDF (User Defined Function)À» Æ÷ÇÔÇÑ ¿©·¯ ´Ù¾çÇÑ FunctionÀ» »ç¿ëÇÒ ¼ö ÀÖÀ¸¸ç, UDF ¶ÇÇÑ ¿©·¯ ´Ù¾çÇÑ ¾ð¾î·Î ÀÛ¼ºµÉ ¼ö ÀÖ½À´Ï´Ù.

3GL ƯÈ÷ C,C++·Î Stored Procedure¸¦ ÀÛ¼ºÇÒ °æ¿ì, Áö±Ý ÇöÀç »ç¿ëÁßÀÎ DB°¡ v5.2 ÀÌÇÏÀÎ °æ¿ì¿¡ ´Â Stored Procedure ¼±¾ðÀ» SQLDA structure·Î »ç¿ëÇØ¾ß Çϰí, DB v6.1ÀÌÈĺÎÅÍ´Â SQLDA°¡ ¾Æ´Ñ Parameter List ¹æ½ÄÀ¸·Î »ç¿ëÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.

ÀÌ¿Í °ü·ÃµÈ »ùÇà ÇÁ·Î±×·¥µéÀº DB2ÀÇ Developer EditionÁß SDK¸ðµâÀ» ¼³Ä¡ÇϽøé, RS/6000ÀÇ AIX ȯ°æ¿¡¼­´Â $HOME/sqllib/samples µð·ºÅ丮¿¡, NT ȯ°æ¿¡¼­´Â sqllib\samples µð·ºÅ丮¿¡ ÇØ´ç Language¿¡ ¸Â´Â »ùÇà ÇÁ·Î±×·¥µéÀÌ Á¦°øµË´Ï´Ù. ¶ÇÇÑ OLE ¹æ½ÄÀ¸·Î Stored Procedure¸¦ ÀÛ¼ºÇÏ´Â °æ¿ì¿¡´Â DB2 v6.1¿¡¼­ Á¦°øµÇ´Â sqllib\samples\ole µð·ºÅ丮ÀÇ readme.txt ³»¿ëÀ» Âü°íÇϽðí, Java·Î ÀÛ¼ºÇϰíÀÚ ÇÏ´Â °æ¿ì´Â Java Stored Procedure Builder¸¦ ÅëÇØ ¸Å¿ì ¿ëÀÌÇÏ°Ô ÀÛ¼ºÇÏ½Ç ¼ö ÀÖÀ¸¸ç, »ùÇà ÇÁ·Î±×·¥Àº sqllib\samples\java µð·ºÅ丮¿¡ Á¦°øµÇ¸ç, readme ³»¿ëÀ» Âü°íÇϽʽÿä.

´ÙÀ½Àº 3GL Áß C·Î RS/6000 AIX¿¡¼­ Stored Procedure¸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ýÀÔ´Ï´Ù.

  1. samples/c directory¿¡ ¿©·¯°³ÀÇ sample c sourceµîÀÌ Á¦°øµÇ°í ÀÖ½À´Ï´Ù. ¸ÕÀú client, server(stored procedure) programÀÇ embedded c programÀ» ÀÛ¼ºÇϽʽÿä. => outcli.sqc (client program) / outsrv.sqc (stored procedure)
  2. outcli.sqc¸¦ Precompile, Compile °úÁ¤À» °ÅÃÄ Excutable ModuleÀ» ÀÛ¼ºÇϽʽÿä. => make outcli
  3. outsrv.sqc¸¦ Precompile, Compile °úÁ¤À» °ÅÃÄ Object ModuleÀ» ÀÛ¼ºÇϽʽÿä. À̶§ DB Server¿¡¼­ ½ÇÇàµÉ¼ö ÀÖµµ·Ï export file (outsrv.exp)¸¦ »ý¼ºÈÄ ¼öÇà ÇϽʽÿä => bldxlcsrv outsrv
  4. Stored Procedure »ý¼ºÀÌ ¼º°øÇßÀ¸¸é, DB2 CLP ȯ°æ³»¿¡¼­, Create Procedure·Î µ¥ÀÌŸº£À̽º¿¡ µî·ÏÇϽʽÿä. => db2 create procedure outsrv (inout salary integer) external name 'outsrv!outsrv' language c parameter style db2dari
  5. Stored Procedure¸¦ Å×½ºÆ®ÇϰíÀÚ ÇÒ¶§´Â Client ProgramÀ» È£ÃâÇϽʽÿä.
    => outcli sample user password

À̿ܿ¡ DB2 UDB v6¿¡¼­±îÁö´Â Column FunctionÀ¸·Î User Defined Function(UDF)¸¦ »ç¿ëÇÒ ¼ö ÀÖ°í, Stored Procedure´Â »ç¿ëÇÏ½Ç ¼ö ¾ø½À´Ï´Ù. ¶ÇÇÑ v6.1±îÁö´Â UDF¿¡ SQL ¹®ÀåÀÌ Æ÷Ç﵃ ¼ö ¾øÀ¸³ª, DB2 v7¿¡¼­´Â SQL ¹®ÀåÀÌ Æ÷ÇÔµÈ UDF¸¦ Áö¿øÇÕ´Ï´Ù.

µ¹¾Æ°¡±â

Àá±ñ!
DB2 Stored Procedure

v6¿¡¼­ÀÇ º¯°æ»çÇ×

1. Parameter List Enhancement
- Stored Procedure·Î PassÇÏ´Â Parameter¸¦ ÃßÃâÇϱâÀ§ÇØ ´õÀÌ»ó SQLDA¸¦ »ç¿ëÇÒ Çʿ䰡 ¾ø½¿.
- 2°¡Áö »õ·Î¿î ¿É¼Ç

. Parameter Passing¿¡ main(argc, argv) method¸¦ »ç¿ë
. Parameter List »ç¿ë, ´Ù¸¥ Subroutine¿¡ »ç¿ëµÇ´Â List¿Í °°À½.

- (¿¹)
Client Side: Server Side;
EXEC SQL BEGIN DECLARE ...;
int funsp(long *i1, float *i2, double *i3) long parm1=12; {
float parm2=3.14; long sp1;
double parm3=666.666; float sp2;
EXEC SQL END DECLARE ...; double sp3;
...
EXEC SQL CALL FUNSP memcpy((char *)&sp1,(char *) i1,sizeof(long));
(:parm1, :parm2, :parm3); memcpy((char *)&sp2,(char *) i2,sizeof(float));
if (SQLCODE == 0) memcpy((char *)&sp3,(char *)i3,sizeof(double));
... sp1 = sp2 * 4;

2. Java Stored Procedure Áö¿ø
- Static (SQLJ), Dynamic (JDBC) SQL Áö¿ø
- GUI °³¹ß ȯ°æ Áö¿ø
- »ç¿ëÀÚ´Â Stored ProcedureÀÇ Login¿¡¸¸ ÃÐÁ¡À» µÎ°í °³¹ßÇÒ ¼ö ÀÖÀ½.

v7¿¡¼­ÀÇ º¯°æ»çÇ×

1. SQL Stored Procedure Áö¿ø

  • DB2 for Windows, OS/2, Unix, DB2 UDB for OS/390, DB2 UDB for OS/400 ¸ðµÎ SQL Stored Procedure¸¦ »ç¿ëÇÒ ¼ö ÀÖÀ½.
  • ANSI SQL99 Ç¥ÁØÀÇ PSM (Persistent Stored Module) Á¤ÀǸ¦ äÅÃÇÔ.
  • DB2 UDB SPB (Stored Procedure Builder)´Â DB2 Stored ProcedureÀÇ ºü¸¥ °³¹ßÀ» Áö¿øÇÏ´Â ±×·¡ÇÈ ¾îÇø®ÄÉÀ̼ÇÀÓ.
  • SPB´Â Microsoft Visual C++, Microsoft Visual Basic, IBM VisualAge for Java, DB2 Control Center¿Í °°Àº °³¹ß ¾îÇø®ÄÉÀ̼ǿ¡¼­µµ È£ÃâÇÒ ¼ö ÀÖ½¿.
  • (¿¹)
    BEGIN ...... END
    Local Variables Declaration
    Assignments
    CASE statements
    IF statements
    Loops: WHILE, REPEAT, FOR, LEAVE RETURN statements

2. SQL User Defined Function Áö¿ø

SQL¹®ÀåÀ» »ç¿ëÇÏ¿© Scalar Function, Row Function, Table FunctionÀ» ÀÛ¼º. À̰ÍÀº High-level Language·Î UDF ÀÛ¼ºÇÏ´Â Çʿ伺À» °¨¼Ò½ÃÅ´.

µ¹¾Æ°¡±â


A.3
¹°·Ð °¡´ÉÇÕ´Ï´Ù. ´ÙÀ½ÀÇ ¿¹¿Í °°Àº SQL ProgrammingÀÌ °¡´ÉÇÕ´Ï´Ù.

connect to DB2A;
SQL;
connect to DB2B;
SQL;
commit; disconnect all; (¶Ç´Â release all, release current µî)

Remote DB ¿¬°áÀÇ °æ¿ì Platform¿¡ °ü°è¾øÀÌ °¡´ÉÇϳª IBM Host °è¿­ÀÇ Platform (OS/390, OS/400)°úÀÇ ¿¬°á½Ã¿¡´Â °ÔÀÌÆ®¿þÀÌ ¿ªÇÒÀ» ¼öÇàÇÏ´Â DB2 Connect¶ó´Â Á¦Ç°ÀÌ ÇÊ¿äÇÕ´Ï´Ù. ´ÙÀ½Àº AIX¿¡¼­ÀÇ User ProgramÀÌ Local DB (AIX)¿Í Mainframe(OS/390)ÀÇ DB ¸¦ ÇϳªÀÇ UOW ³»¿¡¼­ µ¿½Ã¿¡ Access ÇϰíÀÚ ÇÒ ½ÃÀÇ ÁÖÀÇ »çÇ×ÀÔ´Ï´Ù.

1. AIX S/W : DB2 UDB or DB2 Connect
2. OS/390 : DB2 V4 ÀÌ»ó (SNA ¿¬°á), DB2 V5 ÀÌ»ó (TCP/IP ¿¬°á)
3. Program Áغñ¼ø¼­
. User Program Pre-Complie
. db2 connect to aix db2
. db2 bind ....
. db2 connect to os/390 db2
. db2 bind .... Sqlerror continue validate bind »ç¿ë

µ¹¾Æ°¡±â

Àá±ñ!

UOW (Unit of Work)ÀÇ Á¾·ù

1. RUOW (Remote UOW)-ÇÑ Æ®·£Àè¼Ç¿¡ ÇϳªÀÇ DB ¸¸À» accessÇÑ´Ù.
-CONNECT 1 Type

- »ç¿ë¿¹) Connect to DB2A
Select, Insert, Update
Commit Work Connect to DB2B
Select, Insert, Update
Commit Work
- CONNECT 1 SYNCPOINT ONEPHASE
: Single-site Update, Single-site Read

2. DUOW (Distributed UOW)-ÇÑ Æ®·£Àè¼Ç¿¡ ¿©·¯ °³ÀÇ DB¸¦ accessÇÑ´Ù.
- CONNECT 2 Type

- »ç¿ë¿¹) Connect to DB2A
Select, Insert, Update
Connect to DB2B
Select, Insert, Update Commit Work
- DUOWÀÇ 2°¡Áö ÇüÅÂ
CONNECT 2 SYNCPOINT ONEPHASE : Multisite Read, Single-site Update
CONNECT 2 SYNCPOINT TWOPHASE : Multisite Read, Multisite Update

 
µ¹¾Æ°¡±â


A.4
SDK°¡ ¼³Ä¡µÇ¸é ¿©·¯°¡Áö »ùÇà ¼Ò½ºÄڵ尡 ÇÔ²² Áö¿øµË´Ï´Ù. ~sqllib\samples\c µð·ºÅ丮¿¡ º¸½Ã¸é È®ÀåÀÚ°¡ sqc·Î µÇ¾îÀÖ´Â ¿©·¯ »ùÇà ÄÚµåµé°ú makefile À̶õ ÀÌ ¸§ÀÇ make»ùÇà ȭÀϵµ Á¦°øµÈ ´ä´Ï´Ù. makefile¾ÈÀÇ ³»¿ëÀ» º¸½Ã¸é embprep ¶õ ¸í·É¾î´Â db¿¡ connectÇØ¼­ precompileÇÏ´Â ¹èÄ¡ È­ÀÏÀÌ¹Ç ·Î ÀÌ ´Ü°è¸¦ ½ÇÇàÇϼ̴ٸé skipÇϼŵµ µÉ°Å±¸¿ä, $(CC)¿Í $(LINK)¸¦ ½ÇÇàÇÏ¸é µÇ´Âµ¥ °¢°¢ ÇÊ¿©ÇÑ ¿É ¼Ç°ú Çì´õ includeÇÏ´Â ºÎºÐÀº makefileÀÇ À­ºÎºÐ¿¡ º¸½Ã¸é ¾î¶»°Ô ´ëüµÇ´ÂÁö º¸½Ç¼ö ÀÖ½À´Ï´Ù.

µ¹¾Æ°¡±â

 



A.5 ¿ì¼± ±âº»ÀûÀ¸·Î DB2¿¡¼­´Â Select ½Ã¿¡ Shared Lock (ÀϹÝÀûÀ¸·Î S Lock À̶ó°í ÇÕ´Ï´Ù.)À» °Ì´Ï´Ù. SelectÇÏ´Â °æ¿ì´Â °øÀ¯Çؼ­ »ç¿ëÇϰڴٴ Àǹ̰ÚÁÒ. ´Ù¸¥ ¾îÇø®ÄÉÀ̼ǿ¡¼­ LockÀÌ °É¸° Table ¶Ç´Â row¿¡ ´ëÇÑ Insert, Update, DeleteµîÀÇ Update Operation ÀÛ¾÷Àº ÇÏ½Ç ¼ö ¾ø°í, Select¸¸ °¡´ÉÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­´Â ºÐ¸® ·¹º§ (Isolation Level)·Î ÇØ´ç ¾îÇø®ÄÉÀ̼ÇÀÇ Data Á¶È¸½Ã Àû¿ë LockÀÇ ¹üÀ§¸¦ Á¤ÀÇÇÕ´Ï´Ù. ±âº»ÀûÀ¸·Î CS(Cursor Stability)¶ó´Â lockÀ» °É¾î¼­ ½ÇÁ¦ Ä¿¼­°¡ À§Ä¡ÇÑ ÇöÀç Çà¿¡ ´ëÇØ¼­¸¸ LockÀ» °É°í ÀÌ row°¡ fetch µÇ¸é¼­ Ǫ´Â ¹æ½ÄÀ̸ç, Default °ªÀÔ´Ï´Ù. Select ½Ã¿¡µµ LockÀ» °É°í ½ÍÁö ¾ÊÀ¸½Ã¸é ÀÌ ºÐ¸® ·¹º§À» UR(Uncommited Read)·Î ÇϽøé LockÀÌ °É ¸®Áö ¾Ê½À´Ï´Ù. À̿ܿ¡ RS (Read Stability), RR (Repeatable Read)µîÀÇ ºÐ¸® ·¹º§ÀÌ ÀÖÀ¸¸ç, ÀÌ¿Í °ü °èµÈ ÀÚ¼¼ÇÑ »çÇ×Àº ÀÌ FAQ °ü¸® ºÎºÐÀÇ ¡°Àá±ñ 13. Lock ? Isolation Level¡±À» Âü°íÇϽñ⠹ٶø´Ï´Ù.

µ¹¾Æ°¡±â

 



A.6

  1. PLAN BIND¿Í PACKAGE BINDÀÇ Â÷ÀÌÁ¡

    *
    PLAN BIND IBM¿¡¼­´Â ÃÖÃÊ¿¡ PLAN BIND¶ó´Â °ÍÀ¸·ÎºÎÅÍ ½ÃÀÛÇß½À´Ï´Ù. PACKAGE BIND¶ó´Â °³³äÀÌ ¾ø¾ú´Âµ¥ DB2 VERSIONÀÌ ¿Ã¶ó°¡¸é¼­ »õ·ÎÀÌ Ãß°¡µÈ °³³äÀ̶ó°í º¸ ½Ã¸é µË´Ï´Ù. PLANBIND¸¦ »ç¿ëÇÒ ¶§´Â ÇØ´ç PLAN¿¡ MAIN PROGRAM°ú SUB PROGRAMÀ» ¸ðµÎ Á¤ÀÇÇÏ¿© »ç¿ëÇÒ ¼ö ÀÖµµ·Ï ¼³°èµÇ¾î ÀÖ½À´Ï´Ù. ±×·¡¼­, SUB PROGRAMÀÇ ³»¿ëÀÌ ¹Ù²î¾úÀ» °æ¿ì ÀÌ ÇÁ·Î±×·¥À» »ç¿ëÇÏ´Â ¸ðµç PLANµéÀ» ´Ù½Ã PLAN BINDÇØ ÁÖ¾î¾ß »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.

    *
    PACKAGE BIND PACKAGE BIND¸¸À¸·Î´Â ÀÛ¾÷À» ÇÒ ¼ö°¡ ¾ø°í PLANÀÌ Á¤ÀÇµÈ »óÅ¿¡¼­ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. PLANÀ» Á¤ÀÇÇÒ ¶§ COLLECTIONÀ̶ó´Â °ÍÀ» »ç¿ëÇϴµ¥ COLLECTIONÀ̶ó´Â °ÍÀº Æú´õÀÇ °³³äÀ¸ ·Î »ý°¢ÇÏ½Ã¸é µÇ°í ¿©±â¿¡¼­ »ç¿ëÇÏ´Â PLANÀº PACKAGE¸¦ »ç¿ëÇϱâ À§ÇÑ PATH¸¦ ÁöÁ¤ÇÑ´Ù´Â °³ ³äÀ¸·Î »ý°¢ÇÏ½Ã¸é µË´Ï´Ù. PLAN¿¡¼­ÀÇ °æ¿ì¿Í °°ÀÌ SUB PROGRAMÀÇ ³»¿ëÀÌ ¹Ù²î¾úÀ» °æ¿ì PACKAGE BIND¿¡¼­´Â ÇØ´ç SUB PROGRAM¿¡ ´ëÇÏ¿© Çѹø¸¸ BIND¸¦ Çϸé À̰ÍÀ» »ç¿ëÇÏ´Â ¸ðµç ÇÁ·Î±×·¥¿¡¼­ »ç¿ëÀÌ °¡´ÉÇÕ ´Ï´Ù.

  2. VIEWÀÇ »ç¿ë VIEW´Â LOGICAL TABLEÀ̶ó°í »ý°¢ÇÏ½Ã¸é µÉ °ÍÀÔ´Ï´Ù.

µ¹¾Æ°¡±â

 


A.7
DB2 ÀÇ AUTOCOMMIT Àº COMMAND OPTIONS ·Î Á¶Á¤ÇÒ¼ö ÀÖ½À´Ï´Ù. DB2 LIST COMMAND OPTIONS ¸¦ ¹ßÇà ÇÏ¿© º¸½Ê½Ã¿À. DEFAULT ·Î AUTOCOMMIT ÀÌ ONÀ¸·Î µÇ¾î ÀÖÀ» °Ì´Ï´Ù. DB2 +c (SQL ¸í·É¹®) À¸·Î »ç¿ëÇÒ¼ö ÀÖÀ¸¸ç, ½Ã½ºÅÛ È¯°æ º¯¼ö¿¡ DB2OPTIONS=+c ¸¦ »ç¿ëÇϸé AUTOCOMMIT OPTION ÀÌ OFF µË´Ï´Ù....

µ¹¾Æ°¡±â

 



A.8

  1. Two-Phase Commit Process : Coordinator¿Í Participant ºÐ»ê ȯ°æ¿¡¼­ LUWÀÇ ÀÛ¿ëÀº ÇÑ ½Ã½ºÅÛ¿Ü ´Ù¸¥ ½Ã½ºÅÛ¿¡µµ ¿µÇâÀ» ¹ÌÄ¥¼ö ÀÖ½À´Ï´Ù. º¹±¸ °¡´ÉÇÑ ResourceµéÀ» Update ÇÒ ¶§ System³»ÀÇ ¿©·¯ Àå¾Ö¿¡ ´ëÇØ¼­ LUW º¯È­¸¦ ¹Þ¾ÆµéÀÏÁö, ¾Æ´Ï¸é Ãë¼Ò¸¦ ÇÒÁö °áÁ¤ÇÏ´Â °úÁ¤ÀÌ ¹Ù·Î 'Commit' ÀÔ´Ï´Ù.
    DB2´Â Subsystem°£ÀÇ Communication¿¡ µÎ ´Ü°èÀÇ Commit Process¸¦ ÀÌ¿ëÇÕ´Ï´Ù.
    ÀÌ °úÁ¤Àº Coordinator¶ó°í ºÒ¸®´Â SubsystemÀÌ Á¦¾î¸¦ Çϰí, Participant¿Í °°ÀÌ ¿î¿µµË´Ï´Ù. IMS¿Í CICS´Â DB2¿ÍÀÇ °ü°è¿¡¼­ ¾ðÁ¦³ª CoordinatorÀÇ ¿ªÇÒÀ» Çϸç, À̶§ DB2´Â Participant°¡ µË´Ï´Ù. TSO¿Í DB2¿ÍÀÇ °ü°è¿¡¼­´Â DB2°¡ ¾ðÁ¦³ª CoordinatorÀ̸ç, Commit °úÁ¤À» Á¦¾îÇÕ´Ï´Ù. ±× ¹ÛÀÇ DB2µé, ¶Ç ´Ù¸¥ DBMSµé°úÀÇ °ü°è¿¡¼­´Â DB2°¡ Coordinator³ª ParticipantÁß ÇÑÂÊÀÇ ¿ªÇÒÀ» ¼öÇàÇÕ´Ï´Ù.
  2. MULTIPLE UPDATE »ç¿ë½Ã BIND OPTION ¹× STATEMENT DRDA ¸¦ »ç¿ëÇÏ¿© MULTI RDBMS ¸¦ »ç¿ëÇϽ÷Á¸é REMOTE PACKAGE ¸¦ ÀÛ¼ºÇÏ¼Å¾ß ÇÕ´Ï´Ù.

    A. ´ÙÀ½Àº BIND ½ÃÀÇ SYSTSIN DD CARD ÀÇ STATEMENT ÀÔ´Ï´Ù
    BIND PACKAGE(ES53PGM) MEMBER(ES53PGM) - RETAIN ACT(REP) ISOLATION(CS) VALIDATE(BIND) EXPLAIN(NO) BIND PACKAGE(HMCSTEST.ES53PGM) MEMBER(ES53PGM) - RETAIN ACT(REP) ISOLATION(CS) VALIDATE(BIND) EXPLAIN(NO) BIND PLAN(ES53PGM) PKLIST(HMCSTEST.ES53PGM.ES53PGM,ES53PGM.ES53PGM) or PKLIST(*.ES53PGM.*) - RETAIN ACT(REP) ISOLATION(CS) VALIDATE(BIND) EXPLAIN(NO)

    B
    . BIND ½ÃÀÇ OPTION Àº SQLERROR(CONTINUE) ¸¦ ÁöÁ¤ÇϽʽÿÀ.
µ¹¾Æ°¡±â



A.9
¸ÕÀú C API·Î DB ProgrammingÀ» ÇÒ °æ¿ì¿£ 2°¡Áö ¹æ½ÄÀÌ ÀÖ½À´Ï´Ù.

¿ì¼± Embedded SQL ·Î Á÷Á¢ CodingÀ» ÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù.
EXEC SQL PREPARE EXEC SQL ¡¦ µî°ú °°ÀÌ Á÷Á¢ codingÀÌ °¡´ÉÇϸç ÃßÈÄ, precompile, bind (Static SQLÀÇ °æ¿ì) µîÀÇ °úÁ¤À» °ÅÄ¡¼Å¾ß ÇÕ´Ï´Ù.

¶ÇÇϳªÀÇ ¹æ¹ýÀº CLI (Call Level Interface)¸¦ ÀÌ¿ëÇÑ ÇÁ·Î±×·¡¹ÖÀ¸·Î, CLI Function Call ÇüÅ·ΠÇÁ·Î±×·¥À» ÀÛ¼ºÇÏ½Ç ¼ö ÀÖ½À´Ï´Ù. ÀÌ·² °æ¿ì precompile ÇÏ´Â µîÀÇ °úÁ¤ÀÌ ÇÊ¿ä¾ø½À´Ï´Ù.
ODBC¸¦ ÀÌ¿ëÇÑ ProgrammingÀº ÀÏ¹Ý Language°¡ ¾Æ´Ñ 4GL Tool¿¡¼­ ODBC Data Source·Î DB¸¦ µî·ÏÇÏ¿© ODBCÀÇ Function CallÀ» »ç¿ëÇÏ´Â °ÍÀÔ´Ï´Ù. Áï, CLI ¿Í´Â Fuction CallÀÇ Çü½ÄÀº °°Áö¸¸ FunctionÀÇ ³»¿ë ¹× ¹æ½ÄÀÌ ´Ù¸£´Ù°í ¸»ÇÒ ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. DB2 UDBÀÇ °æ¿ì ODBC Driver·Î DB2CLI¸¦ »ç¿ëÇϱ⠶§¹®¿¡ È¥µ¿ÀÇ ¿©Áö´Â ÀÖ½À´Ï´Ù¸¸, ¹æ½Ä ÀÚü´Â ¼­·Î ´Ù¸£´Ù°í ÇÒ ¼ö ÀÖ°Ú½À´Ï´Ù.

Âü°í·Î CLIÀÇ Àå/´ÜÁ¡¿¡ ´ëÇØ¼­ °£´ÜÈ÷ Á¤¸®ÇÏ¸é ´ÙÀ½°ú °°½À´Ï´Ù.

ÀåÁ¡
- PrecompileÀÌ ÇÊ¿äÇÏÁö ¾Ê´Ù.
- Application Package¿¡ ´ëÇØ ¹ÙÀεùÀÌ ÇÊ¿äÇÏÁö ¾Ê´Ù.
- ÇöÀç »ç¿ëÇϰí ÀÖ´Â DBÀÇ statistics¸¦ »ç¿ëÇÑ´Ù.
- ÀÀ¿ë ÇÁ·Î±×·¥ÀÌ ¸ÖƼ ½º·¹µùÀÌ °¡´ÉÇÏ´Ù.
´ÜÁ¡
- C/C++¿¡ ´ëÇÑ ½ºÅ³ÀÌ ÇÊ¿äÇÏ´Ù.
- Embedded SQLÀ» »ç¿ëÇÒ ¼ö ¾ø´Ù.

µ¹¾Æ°¡±â


A.10 Áö±Ý »ç¿ëÇϽô DB2 VersionÀÌ ¾î¶»°Ô µÇ½Ã´Â Áö¿ä...?
DB2 UDB V 7¿¡¼­´Â Declare temporary table À̶ó´Â °ÍÀ» »ç¿ëÀÚÀÇ connection ³»¿¡ temp tableÀ» »ý¼ºÇؼ­ »ç¿ëÇÏ½Ç ¼ö°¡ ÀÖ½À´Ï´Ù. ¸¸¾à V7ÀÌ ¾Æ´Ï¶ó¸é ¾Æ·¡ÀÇ ¹æ¹ýÀ» »ç¿ëÇØ º¸¼¼¿ä...

  1. with ¹®À» »ç¿ëÇÏ¿© ¸¸µå´Â ¹æ¹ý
    db2 with [temp_tab_name] as (select Àý) [½ÇÁ¦·Î temp table¿¡¼­ select ÇÒ ³»¿ë]
    EX> db2 "with table_1 as (select * from table1) select * from table_1;
  2. View¸¦ »ç¿ëÇÏ´Â ¹æ¹ý
    db2 create view [view_name] as (select Àý) select ÇÒ ³»¿ë
    EX> db2 "create view table_1 as ( select * from table1)"; db2 "select * from table_1";
  3. Insert into¸¦ »ç¿ëÇÏ´Â ¹æ¹ý
    Ex> db2 ¡°insert into Table1 select * from Table2¡±
µ¹¾Æ°¡±â

 


A.11
DB2 DB ±¸¼º ÆÄ¶ó¸ÞÅÍ(db cfg) ¸¦ º¸¸é µ¥ÀÌŸº£À̽º¿¡ Á¢±ÙÇÒ ¼ö ÀÖ´Â ÀÀ¿ë ÇÁ·Î±×·¥ÀÇ ¼ö (MAXAPPLS)ÀÇ °ªÀ» Á¤ÀÇÇØÁÖ°Ô µÇ¾îÀÖ½À´Ï´Ù. ±× ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¼ö°¡ Á¤ÀÇµÈ °ªÀ» ÃʰúÇÏ¿´À» °æ¿ì °æÇèÇϼ̴ø ¿¡·¯°¡ ¹ß»ýÇÏ°Ô µË´Ï´Ù. ÇØ°áÇϽ÷Á¸é DB CFGÀÇ MAXAPPLSÀÇ °ªÀ» Áõ°¡½ÃÄÑ ÁÖ¸é µË´Ï´Ù. DB2 Á¦¾î ¼¾ÅÍÀÇ DB ¡°±¸¼º¡±¿¡ ¼­ °ªÀ» º¯°æÇϽðųª command line (DB2 CLP)¿¡¼­ ´ÙÀ½°ú °°ÀÌ ¸í·ÉÀ» ¼öÇàÇÏ½Ã¸é µË´Ï´Ù.

  1. db2 get db cfg for dbname (MAXAPPLS¿¡ °ªÀ» È®ÀÎÇϽʽÿä.. default = 40)
  2. db2 update db cfg for dbname using maxappls 50 (¿¬°á°¡´É ÇÁ·Î±×·¥ÀÇ ¼ö¸¦ 50À¸·Î Áõ°¡½ÃÅ´)
  3. db2 force application all (¿¬°áµÈ ÇÁ·Î±×·¥ÀÇ ¿¬°áÀ» ²÷½À´Ï´Ù.)
  4. dbstop
  5. db2start
µ¹¾Æ°¡±â

 


A.12 ÀÀ¿ëÇÁ·Î±×·¥ÀÌ Çà ¼¼Æ®¸¦ °Ë»öÇϵµ·Ï Çϱâ À§ÇØ SQLÀº Ä¿¼­¶ó´Â ¸ÞÄ«´ÏÁòÀ» »ç¿ëÇÕ´Ï´Ù. Ä¿¼­¶ó´Â °³³äÀÇ ÀÌÇØ¸¦ µ½±â À§ÇØ, µ¥ÀÌÅÍ º£À̽º °ü¸® ÇÁ·Î±×·¥Àº SELECT¹®À» ½ÇÇàÇÏ¿© °Ë»öµÇ ´Â ¸ðµç ÇàµéÀ» º¸À¯ÇÒ °á°ú Å×À̺íÀ» ±¸ÃàÇÑ´Ù°í °¡Á¤ÇÕ´Ï´Ù. Ä¿¼­´Â ÀÌ Å×À̺íÀÇ ÇöÀç ÇàÀ» °¡¸®Å° °Å³ª ½Äº°ÇÔÀ¸·Î½á ÀÀ¿ëÇÁ·Î±×·¥ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´Â °á°ú Å×À̺í·ÎºÎÅÍ ÇàÀ» ÀÛ¼ºÇÕ´Ï´Ù. Ä¿¼­°¡ »ç ¿ëµÉ ¶§ ÀÀ¿ëÇÁ·Î±×·¥Àº µ¥ÀÌÅÍ Á¶°ÇÀÇ ³¡, Áï NOT FOUND Á¶°Ç, SQLCODE +100(SQLSTATE 02000)¿¡ µµ´ÞÇÒ ¶§±îÁö °á°ú Å×À̺í·ÎºÎÅÍ ¼øÂ÷ÀûÀ¸·Î °¢ ÇàÀ» °Ë»öÇÒ ¼ö ÀÖ½À´Ï´Ù. SELECT¹® ½Ç Çà °á°ú ȹµæµÈ Çà ¼¼Æ®µéÀº °Ë»ö Á¶°ÇÀ» ÃæÁ·½ÃŰ´Â Çà ¼ö¿¡ µû¶ó 0°³, 1°³ ¶Ç´Â ±× ÀÌ»óÀÇ Çàµé·Î ±¸ ¼ºµÉ ¼ö ÀÖ½À´Ï´Ù.

Ä¿¼­ ó¸® ´Ü°è´Â ´ÙÀ½°ú °°½À´Ï´Ù.

  1. DECLARE CURSOR¹®À» »ç¿ëÇÏ¿© Ä¿¼­¸¦ ÁöÁ¤ÇÕ´Ï´Ù.
  2. Á¶È¸¸¦ ¼öÇàÇϰí OPEN¹®À» »ç¿ëÇÑ °á°ú Å×À̺íÀ» ±¸ÃàÇÕ´Ï´Ù.
  3. FETCH¹®À» »ç¿ëÇÏ¿© ÇÑ ¹ø¿¡ ÇÑ ÇàÀ» °Ë»öÇÕ´Ï´Ù. (ÇÊ¿äÇÑ °æ¿ì) DELETE¹® ¶Ç´Â UPDATE¹®ÀÌ ÀÖ´Â ÇàÀ» ó¸®ÇÕ´Ï´Ù.
  4. CLOSE¹®À» »ç¿ëÇÏ¿© Ä¿¼­¸¦ Á¾·áÇÕ´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥Àº µ¿½Ã¿¡ ¿©·¯ Ä¿¼­¸¦ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù. Ä¿¼­¸¶´Ù °íÀ¯ÀÇ DECLARE CURSOR, OPEN, CLOSE ¹× FETCH¹® ¼¼Æ®°¡ ÇÊ¿äÇÕ´Ï´Ù.
µ¹¾Æ°¡±â

 


A.13
´ÙÀ½ÀÇ ¿¹Á¦¸¦ ÂüÁ¶Çϼ¼¿ä. (App DriverÀÏ °æ¿ì)

try
{ Class.forName ("COM.ibm.db2.jdbc.app.DB2Driver").newInstance ();
}
catch (Exception e)
{ System.out.println ("\n Error loading DB2 Driver...\n"); System.out.println (e); System.exit(1);
}
Connection con = null;
String url = "jdbc:db2:sample";
con = DriverManager.getConnection(url);

À§¿Í °°Àº ¿¹Á¦´Â sqllib/samples/java directoryÀÇ ´Ù¾çÇÑ java program sample¿¡ ³ª¿Í ÀÖ½À´Ï´Ù. ±×·¯¹Ç·Î ¿¬°áÇϽ÷Á´Â ÄÚµå´Â ´ÙÀ½°ú °°ÀÌ ÀÛ¼ºµÇ¾î¾ß °Ú³×¿ä.

String url = "jdbc:db2:MPROJECT" // FOR DB2 APP JDBC DRIVER Class.forName("COM.ibm.db2.jdbc.app.DB2Driver").newInstance(); Connection conn=DriverManager.getConnection(url,"ADMIN","PASSWORDl");

ÀÌ·±½ÄÀ¸·Î ÀÛ¼ºÇÏ½Ã¸é µË´Ï´Ù. Âü°í·Î DB2ÀÇ Net Driver (COM.ibm.db2.jdbc.net.DB2Driver)¸¦ »ç¿ë ÇÒ °æ¿ì¿£ urlÀÇ Ç¥Çö½ÄÀÌ ¾à°£ ´Ù¸£¸ç, ´ÙÀ½°ú °°½À´Ï´Ù.

String server, port; String url = "jdbc:db2://"+server+":"+port+"/sample";

µ¹¾Æ°¡±â

 


A.14
ÇöÀç ¸í¹éÇÏ°Ô DB2 JDBC DriverÀÇ VersionÀ» listingÇÏ´Â ¹æ¹ýÀº ¾ø½À´Ï´Ù. ±×·¯³ª, JDBC Driver°¡ 1.22µç 2.0À̵ç DB2 ¿¡¼­´Â accessÇØ¼­ »ç¿ëÇÏ´Â file À̸§ÀÌ °°±â ¶§¹®¿¡ (db2java.zip) ÇØ´ç fileÀÇ replace¿©ºÎ¸¦ È®ÀÎÇÏ½Ã¸é °¡´ÉÇÕ´Ï´Ù.

Áï, ±âº»ÀûÀ¸·Î DB2 UDB¸¦ ¼³Ä¡ÇÑ ÈÄÀÇ JDBC Driver´Â 1.22ÀÔ´Ï´Ù. 2.0À» »ç¿ëÇϽñâ À§Çؼ­´Â ..\sqllib\java12\usejdbc2 ¶ó´Â script¸¦ ½ÇÇàÇÏ¸é µË´Ï´Ù. ¹Ý´ë·Î ´Ù½Ã JDBC 1.22¸¦ »ç¿ëÇÏ°í ½ÍÀ¸½Ç °æ¿ì´Â °°Àº µð·ºÅ丮ÀÇ "usejdbc1"À̶ó´Â script¸¦ ½ÇÇà ÇÏ¸é µË´Ï´Ù.±×·¯´Ï, login »ç¿ëÀÚÀÇ profile¿¡ ³Ö¾îµÎ¸é È¿°úÀûÀ̰ڱº¿ä.

Ãß°¡·Î JDBC 2.0À» »ç¿ëÇÏ½Ç ¶§ÀÇ Âü°íÇÏ½Ç »çÇ×À» °£´ÜÈ÷ ¸»¾¸µå¸®°Ú½À´Ï´Ù. (Platform¿¡ °ü°è¾øÀÌ)

¿ì¼±, ´ç¿¬ÇϰԵµ JDKÀÇ versionÀº 1.2 ÀÌ»óÀÌ µÇ¾î¾ß °ÚÁö¿ä. NT ¹× AIX platform »óÀÇ IBM JDKµµ 1.22 ÀÌ»óÀÇ versionÀÌ ¿Ã¶ó¿Í ÀÖ½À´Ï´Ù. ±×¸®°í, DB2¿¡¼­ JDBC 2.0À¸·Î Java Stored Procedure³ª Java·Î User Defined FuntionÀ» ÀÛ¼ºÇÏ¿© »ç¿ëÇϰíÀÚ ÇÒ °æ¿ì¿¡´Â "usejdbc2" script¸¦ ½ÇÇàÇÏ¿© driver¸¦ ±³Ã¼ÇϽðí, DB2 CLP¿¡¼­

db2set DB2_USE_JDK12=1

·Î settingÇÑ ÈÄ »ç¿ëÇÏ¼Å¾ß ÇÕ´Ï´Ù. ¾Ê±×·¯¸é, JDBC 1.22ÀÇ ±â´É¹Û¿£ Áö¿ø ¸øÇϰŵç¿ä.
¶Ç ÇÑ °¡Áö, ¾ÆÁ÷ DB2 UDB¿¡¼­ Á¦°øÇÏ´Â JDBC 2.0 Driver°¡ JDBC 2.0 SpecÀÇ ÀϺΠ±â´ÉÀ» Áö¿øÇÏÁö ¸øÇÏ´Â ºÎºÐÀÌ ÀÖÀ¸´Ï, ÀÌ¿¡ ÇØ´çÇÏ´Â ³»¿ëÀº http://www.ibm.com/software/data/db2/java/ ¿¡¼­ Âü°íÇÏ½Ã¸é µµ¿òÀÌ µÉ °Í °°½À´Ï´Ù.

µ¹¾Æ°¡±â

 


A.15
DB2¿¡¼­ rs.getInt(colnum)À» Çѹø ÇÑ ÈÄ, µÎ¹øÂ° ÇÒ ¶§´Â 0ÀÌ µé¾î ¿Ô´ø °ÍÀ¸·Î ±â¾ïµË´Ï´Ù. ±×·¯´Ï±î, else if ¹®À» ½ÇÇàÇÒ ¶§´Â (new Integer(rs.getInt(colnum))ÀÇ °ªÀÌ 0ÀÌ µÇ´Â °ÅÁö¿ä º¯¼ö¸¦ Àâ¾Æ¼­ getInt(colnum)ÇÑ °ªÀÌ ÀúÀåÇÑ ÈÄ if ... else if ... ÇÏ¸é µÇ°ÚÁö¿ä?

µ¹¾Æ°¡±â

 


A.16
ÀÏ´Ü TomcatÀÌ ¼³Ä¡°¡ ¾ÈµÇ´Â ¹®Á¦´Â ¸ð¸£°Ú´Âµ¥¿ä. Apache¸¦ ¾²½Ã¸é TomcatÀ» ¾î¶»°Ô´ø ¼³Ä¡¸¦ ÇÏ¼Å¾ß ÇÒ°Í °°³×¿ä. ±×¸®°í javax Package´Â JDK °¡ Áö¿øÇÏ´Â°Ô ¾Æ´Ï±¸ JSWDK¿¡¼­ Áö¿øµË´Ï´Ù. SUN¿¡¼­ ¹Þ¾Æ¼­ Ãß°¡·Î ¼³Ä¡ ÇÏ½Ã¸é µË´Ï´Ù. ±×¸®°í DB2¿¡¼­ JSP µÇ³Ä°í Çϼ̴µ¥ JSP¶û Servlet¿¡¼­´Â JDBC¸¸ Áö¿øµÇ´Â DB¸é °¡´ÉÇÕ´Ï´Ù. ±×·¯´Ï±ñ DB2°¡ ·ÎÄÿ¡ ÀÖ°Ç ¸®¸ðÆ®¿¡ ÀÖ°Ç NT´ø AIX´ø °ü°è°¡ ¾ø´Ù´Â °Ì´Ï´Ù. ¹°·Ð JDBCÀÇ Å¸ÀÔ¿¡ µû¶ó ¸®¸ðÆ®°¡ ¾ÈµÇ´Â °æ¿ìµµ ÀÖÁö¸¸ DB2´Â µÑ´Ù µÇ´Â°É·Î ¾Ë°í ÀÖ½À´Ï´Ù. ¿äÁò DB2¹öÀü¿¡¼­´Â ¾î¶²Áö ¸ð¸£°ÚÁö¸¸, DB2°¡ ¼³Ä¡µÈ ¼­¹ö¿¡¼­´Â JAVA¸¦ ó¸®ÇØ ÁÙ¼ö ÀÖ´Â db2jstrt ¸¦ °°ÀÌ ¿Ã·Á Áà¾ß ÇÏ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. ±×¸®°í ½ÇÁ¦ JSPÀÇ ÇØ¼®Àº WebBrowser°¡ ÇÏ´Â°Ô ¾Æ´Ï±¸ WebServer¿Í °°ÀÌ Web ApplicationServer(Servlet Engine)°¡ ÇÏ°Ô µË´Ï´Ù. ¾Æ¸¶µµ ½áº¸Áø ¾Ê ¾ÒÁö¸¸ ¼³Ä¡ ÇϽǷÁ´Â TomcatÀÌ Apache¿Í ¿¬µ¿µÇ´Â Servlet Engine ±â´ÉÀ» ÇÒ°Ì´Ï´Ù. IBM¿¡¼­´Â WebSphere ¶ó´Â Á¦Ç°ÀÌ Àִµ¥ Ãʱ⿡´Â Apache¶û EngineÀ̶û ºÐ¸®µÈ ÇüÅ ¿´´Ù°¡ ¿ä ÁòÀº ÇÕÃÄÁø °É·Î ¾Ë°í ÀÖ½À´Ï´Ù. °æÀïÁ¦Ç°À¸·Ð BEA WebLogic ÀÌ Àִµ¥ WebLogicµµ WebServer(HTTPServer)¿Í WebApplicationServer(ServletEngine)ÀÌ ÇÕÃÄÁø ÇüÅ ÀÔ´Ï´Ù.

Âü°í·Î JSP³ªServletÀ» ±¸ÇöÇÒ·Á¸é WebApplicationServer°¡ ¼³Ä¡µÇ´Â ¼­¹öÂÊ¿¡ JDBC°¡ ¼³Ä¡ µÇ¾î ¾ß ÇÕ´Ï´Ù. ¾Æ¸¶ DB2¼³Ä¡ ÇϼÌÀ¸¸é JDBC °°ÀÌ ÀÖÀ¸´Ï±ñ TomcatÀ» ÇϽôø WebSphere¸¦ ÇϽôø DB2¸¦ »ç¿ëÇÏ´Â µ¥¿¡´Â ÁöÀåÀÌ ¾øÀ» °Ì´Ï´Ù.

µ¹¾Æ°¡±â

 


A.17
DB2 Ŭ·¡½ºÆÐ½º°¡ À¥½ºÇǾ ȤÀº À¥¾îÇø®ÄÉÀÌ¼Ç ¼­¹ö¿¡ ¼³Á¤µÇ¾î ÀÖ´ÂÁö¿ä? WebsphereÀÇ °æ¿ì, 2.0.x¿Í 3.0.xÀÇ ¹æ¹ýÀÌ ¼­·Î ´Ù¸¨´Ï´Ù. ¾îÇø®ÄÉÀ̼ǿ¡¼­ µÇ¾ú´Âµ¥, ¼­ºí¸´¿¡¼­ ¾ÈµÈ´Ù¸é ÀÌ ¹®Á¦ÀÏ È®·üÀÌ ³ôÀº °Í °°½À´Ï´Ù. 3.0ÀÇ °æ¿ì´Â µû·Î ¼³Á¤ÇÏ½Ç Çʿ䰡 ¾ø½À´Ï´Ù. ±×¸®°í, 2.0ÀÇ °æ¿ì´Â ¾î¶»°Ô ¼³Á¤Çϼ̳Ŀ¡ µû¶ó ´Ù¸¨´Ï´Ù.

DB2°¡ »ç¿ëÇÏ´Â JDBC Driver¿¡ ´ëÇØ¼­ º¸Ãæ ¼³¸í µå¸®°Ú½À´Ï´Ù. ¸»¾¸ÇϽŠ´ë·Î DB2¿¡¼­´Â App ¿Í netÀ̶ó´Â 2°¡Áö ÇüÅÂÀÇ JDBC Driver¸¦ Áö¿øÇϱ¸¿ä. ¹æ½ÄÀº °¢°¢ Â÷À̰¡ ³³´Ï´Ù¸¸ ±âº»ÀûÀ¸·Î DB2ÀÇ CLI/ODBC FunctionÀ» »ç¿ëÇÕ´Ï´Ù.

App´Â type2, netÀº type3ÀÇ ÇüÅÂÀÔ´Ï´Ù. Áï, type2´Â Java ApplicationÀÌ ÀÌ¿ëÇÏ´Â JDBC Driver°¡ DBMS vendor¿¡¼­ Á¦°øÇÏ´Â º°µµÀÇ ¸ðµâ (º¸Åë Ŭ¶óÀÌ¾ðÆ®°¡ µÇ°ÚÁÒ)ÀÇ service¸¦ ÀÌ¿ëÇÏ¿© ÇØ´ç DB Server¿¡ accessÇÏ´Â ¹æ½ÄÀ̱¸¿ä (¹°·Ð Ŭ¶óÀÌ¾ðÆ®´Â Java Application°ú °°Àº local machine »ó¿¡¼­ ÀÖ¾î¾ß °ÚÁö¿ä.) net driver´Â type3·Î Java Applet ȤÀº Application¿¡¼­ÀÇ JDBC callÀÌ socket°ú °°Àº º°µµÀÇ netwokr Åë½ÅÀ» Ÿ°í DB ¼­¹öÃø¿¡¼­ÀÇ listner¸¦ ÅëÇØ DB ¼­¹ö¿¡ Á¢¼ÓÇÏ´Â ¹æ½ÄÀÔ´Ï´Ù. µû¶ó¼­ jdbc driver¸¦ ´Ù¿î¹Þ´Â applet°æ¿ì¿¡´Â applicationÀÌ ÀÖ´Â À§Ä¡¿¡ DB cliejnt°¡ ÇÊ¿ä¾ø°ÚÁÒ.

±×¸®°í java sampleÀÌ ÀÖ´Â À§Ä¡´Â .../sqllib/samples/java ¿¡ °¡½Ã¸é ÀÖ½À´Ï´Ù. Sample FileÀ̹ǷΠ´Ü¼øÇϱä ÇÏÁö¸¸, ¿©·¯ °æ¿ì¿¡¼­ÀÇ Sample programÀ» º¸½Ç ¼ö ÀÖÀ» °ÍÀÔ´Ï´Ù. Db2java.zip³»ÀÇ Bean¿¡ ´ëÇÑ reference´Â ¾ÆÁ÷ ã¾Æº¸Áø ¸øÇß½À´Ï´Ù. Âü°í·Î ÀÌ¿Í ºñ½ÁÇÑ Á¤º¸¿¡ ´ëÇØ¼­ ÀúÈñ ³»ºÎ team¿¡¼­µµ ´ÙÀ½ÀÇ url¿¡ ÀÖ´Â ³»¿ëÀ» ¸¹ÀÌ Âü°íÇÏ´Ï, ãÀ¸½Ã´Â Á¤º¸¿¡ µµ¿òÀÌ µÉ µí ÇÕ´Ï´Ù. http://www.software.ibm.com/data/db2/java

µ¹¾Æ°¡±â

 


A.18
embedded SQL ¹®¿¡¼­´Â »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù..

µ¹¾Æ°¡±â

 

 


A.19 Ȥ½Ã Lockwait°¡ °É¸®´Â °ÍÀÌ ¾Æ´Ò´ÂÁö¡¦ Lockwait ´Â default·Î ¹«ÇÑ´ë±âÀ̰ŵç¿ä. ¸¸¾à locktimeoutÀ» ÁÖ°í ½ÍÀ¸½Ã¸é ´ÙÀ½ °ªÀ» ¹Ù²Ù¼¼¿ä.Db2 get db cfg for dbname ¿¡¼­ locktimeout À̶ó´Â °ªÀ» º¸½Ã°í (¾Æ¸¶ -1·Î µÇ¾îÀÖÀ»µí) ±×°ÍÀ» ¿øÇÏ ´Â °ªÀ¸·Î ¹Ù²Ù½Ã·Á¸é À̰ÍÀº ÃÊ´ÜÀ§´Ï±î ¿øÇÏ´Â Ãʸ¦ ÁÖ½Ã¸é µË´Ï´Ù.

Áï db2 update db cfg for dbname using locktimeout 60 ( 60Ãʰ¡ µÇ¸é timeout¿¡ °É¸²) ±×·¸°Ô ÇÑ ÈÄ db2 force applications allÇÑ ÈÄ ´Ù½Ã db ¿¬°áÇϼ¼¿ä.

±×¸®°í db2diag.log¶ó´Â ÆÄÀÏÀ» »ìÆìº¸¼¼¿ä. lock°ü·ÃµÈ °Å¶ó¸é lock°ü·Ã ¸ð´ÏÅ͸¦ °É¾îº¸½ÉÀÌ ÁÁÀ» µíÇÕ´Ï´Ù. ´ÙÀ½°ú °°ÀÌ Çϼ¼¿ä.

Db2 get snapshot for locks on dbname > snap.out

µ¹¾Æ°¡±â

 


A.20
¾Æ·¡ÀÇ ¼³¸í°ú °°ÀÌ DBÀÇ µ¥ÀÌÅÍ¿¡ access planÀ» °áÁ¤ÇÏ´Â ³»¿ëÀÌÀÖ´Â ÆÐŰÁö°¡ ¾øÀ»¶§ ¹ß»ýÇÏ´Â errorÀÔ´Ï´Ù. ÇØ°á¹æ¹ýÀº ¹ÙÀε带 ÇÏ½Ã¸é µË´Ï´Ù.

  1. database¿¡ ¿¬°áÇϽʽÿä. db2 connect to test
  2. aixÀÇ °æ¿ì (cd /usr/lpp/db2_07_01/bnd) °æ·Î·Î À̵¿ÇϽʽÿä
  3. db2 bind @db2ubind.lst blocking all grant public ¸í·ÉÀ» ¼öÇàÇϽʽÿä.

µ¹¾Æ°¡±â



A.21

Àû¿ë¹öÀü :
Version 7, Version 6, Version 5
Àû¿ë Platform : All Platforms
°³°ý : DB2 UDB ¸Þ¸ð¸® °ü¸®ÀÚÀÇ ¸Þ¸ð¸® ´©Ãâ

Áõ»ó
DB2 ÀÀ¿ëÇÁ·Î±×·¥°ú DB2 ¼­¹ö ÇÁ·Î¼¼½º°¡ °úµµÇÑ ¸Þ¸ð¸®¸¦ »ç¿ëÇϰí, ¸Þ¸ð¸® »ç¿ë·®ÀÌ ½Ã°£ÀÌ Áö³¯¼ö·Ï Áõ°¡ÇÕ´Ï´Ù.

°¡´ÉÇÑ ¿øÀÎ
DB2 ¸Þ·Î¸® °ü¸®°¡ÀÇ ¹ö±×·Î ÀÎÇÑ ÇÒ´çµÈ ¸Þ¸ð¸®ÀÇ ºÎÀûÀýÇÑ Àç»ç¿ë

Á¶Ä¡
APAR JR15158 ¿¡¼­ ¼öÁ¤µÆ½À´Ï´Ù.
DB2 Version 5 FixPak 16, Version 6 FixPak6, Version 7 Fixpak2¿¡ ¼öÁ¤»çÇ×ÀÌ Æ÷ÇԵžî ÀÖ½À´Ï´Ù.

µ¹¾Æ°¡±â




A.22


Àû¿ë¹öÀü : Version 7, Version 6
Àû¿ë Platform : All Platforms
°³°ý : db2diag.log¿¡ ÀÖ´Â lock escalation¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ ¾î¶°Çí ÇØ¼®ÇÏÁÒ?

db2diag.log ÆÄÀÏ¿¡ ÀÖ´Â lock escalation¿¡ ´ëÇÑ ¸Þ½ÃÁö°¡ ´ÙÀ½ °°Àº ÇüÅ·Π³ª¿Ã ¶§
2001-02-08-08.18.05.109000 Instance:DB2 Node:000
PID:266(db2syscs.exe) TID:242 Appid:*LOCAL.DB2.010208131805
data_management sqldEscalateLocks Probe:2 Database:CMCADEVL

  • Lock Count, Target : 1829, 914
  • Table (ID) Name : (2;5) DBMDB2 .INBOX
  • Locks, Request Type : 1826, S
  • Result (0 = success): 0

Lock Count´Â ±× ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ÇöÀç À¯ÁöÇϰí ÀÖ´Â LockÀÇ °³¼öÀÔ´Ï´Ù.ÀÌ °æ¿ì¿£ 1829°³°¡ µË´Ï´Ù.. TargetÀº lock escalationÀÌ ¸ØÃß±â Àü¿¡ ÇÊ¿äÇÑ LockÀÇ °³¼öÀÌ°í ±× ¼ö´Â ±âº» ÃÑ ¶ô¼öÀÇ Àý¹ÝÀ¸·Î ¼³Á¤µË´Ï´Ù. Locks °ªÀº ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÇÇØ Å×ÀÌºí¿¡¼­ À¯ÁöµÇ´Â Row·¹º§ Lock(·¹Áö½ºÆ®¸® º¯¼ö°¡ DB2_RR_TO_RSÀÏ ¶§ÀÇ key value ¶ôÀ» Æ÷ÇÔ)ÀÇ ¼ö·Î À̰ÍÀº lock escalationÀÇ °á°ú·Î Å×À̺í lockÀ¸·Î ´ëüµÉ ¶ôÀÇ ¼öÀ̱⵵ ÇÕ´Ï´Ù. ¶ÇÇÑ ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÇÇØ¼­ À¯ÁöµÆ´ø ÃÑ ¶ôÀÇ °³¼öÁß¿¡ °¨¼Ò½Ãų ÃÑ ¶ôÀÇ °³¼öÀ̱⵵ ÇÕ´Ï´Ù. µû¶ó¼­ »õ·Î¿î ¶ôÀÇ °³¼ö´Â ÀÌÀü ¶ôÀÇ ¼ö¿¡¼­ Row·¹º§ ¶ôÀÇ ¼ö¸¦ »« ³ª¸ÓÁö ¼ö°¡ µË´Ï´Ù. Request TypeÀº ÇØ´ç Å×À̺íÀÇ ¶ô ŸÀÔÀ¸·Î ¸¸¾à NS ȤÀº S¶ôÀÌ °É·Á ÀÖ´Ù¸é, S·Î U, W, X ¶ôÀÌ °É·Á ÀÖ´Ù¸é X ·Î Ç¥½ÃµË´Ï´Ù. Result ´Â ¹ÝȯÄڵ带 Ç¥½ÃÇÏ°í ¹ÝȯÄڵ尡 0À̸é escalation ÇÁ·Î¼¼½º°¡ ¼º°ø, À½¼öÀ̸é lock timeout, dead lock, ÀÎÅÍ·´Æ® µîÀÌ ¹ß»ýÇß´Ù´Â ÀǹÌÀÔ´Ï´Ù. À½¼ö ¹ÝȯÄÚµå´Â ³»ºÎÄÚµå·Î½á sqlcode°¡ ¾Æ´Õ´Ï´Ù.

¸Þ½ÃÁö´Â ¾î¶»°Ô »ý¼ºµÇ´Â°¡?Database ¿¡ÀÌÀüÆ®°¡ lock escalationÀ» ¼öÇàÇÒ ¶§, ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¶ô ¸®½ºÆ®¸¦ °ËÅäÇÏ¿© Å×À̺í´ç ¶ôÀÇ ¼ö¸¦ °è»êÇÕ´Ï´Ù. Row lockÀº Table lockÀ¸·Î escalated µÇ°í db2diag.log¿¡ ±× °á°ú°¡ ³ªÅ¸³ª°Ô µË´Ï´Ù. EscalationÀÌ ¼º°øÀûÀ̰í Target °ª¿¡ µµ´ÞÇÏÁö ¸øÇß´Ù¸é, ´ÙÀ½À¸·Î ¸¹Àº ÃÑ row lockÀ» °¡Áö°í ÀÖ´Â Å×ÀÌºí¿¡¼­ ´ÙÀ½ÀÛ¾÷ÀÌ ¼öÇàµË´Ï´Ù. ¸®½ºÆ®µÈ °¢°¢ÀÇ Å×À̺íµéÀº row lockÀ» table lockÀ¸·Î escalate ½ÃŲ ÈÄ¿¡ »õ·Î¿î ¶ô ¼ö¸¦ °è»êÇÏ°Ô µË´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î ¶ô ¼ö°¡ °¨¼ÒµÇ°í, ƯÁ¤ ½ÃÁ¡¿¡ Target °ª¿¡ µµ´ÞÇÏ°Ô µÇ¸é escalationÀº ÁßÁöµË´Ï´Ù.ÀÌ ¸Þ½ÃÁö¸¦ db2diag.log¿¡¼­ º¸±âÀ§Çؼ± DIAGLEVELÀÌ 3À̳ª 4·Î ¼³Á¤ µÇ¾î¾ß ÇÕ´Ï´Ù. ´Ü lock escalationÀÌ ½ÇÆÐÇϸé DIAGLEVEL 2¿¡¼­µµ ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù.

µ¹¾Æ°¡±â




A.23


Àû¿ë¹öÀü : Version 7
Àû¿ë Platform : NUMA-Q
°³°ý : ¿Ö ´À³¦Ç¥(!)°¡ ÆÐ½º¿öµåÀÇ ÀϺηΠ»ç¿ëµÉ ¼ö ¾ø³ª¿ä?

ÆÐ½º¿öµåÀÇ ÀϺημ­ÀÇ ´À³¦Ç¥(!)´Â CLPâ¿¡¼± ¾µ ¼ö ÀÖÁö¸¸, ¸í·É¼¾ÅÍ¿¡¼­´Â ¾µ ¼ö ¾ø½À´Ï´Ù.
´À³¦Ç¥´Â ÆÐ½º¿öµåÀÇ ÀϺημ­ Áö¿øµÇÁö ¾Ê´Â ¹®ÀÚ ÀÔ´Ï´Ù. ¿Ã¹Ù¸¥ ÆÐ½º¿öµå ±¸¼º ¹®ÀÚ´Â 0-9ÀÇ ¼ýÀÚ, A-Z, @, #, $ ÀÔ´Ï´Ù. ! ´Â Áö¿øµÇÁö ¾Ê½À´Ï´Ù. ÀÌ ¸»Àº Á¦´ë·Î µ¿ÀÛÇÑ´Ù°í º¸ÁõÇÒ ¼ö ¾ø´Ù´Â ¸»ÀÔ´Ï´Ù. ´Ù¸¸ ¾ð±ÞÇÑ °æ¿ì¿£ ÀÛµ¿ÀÌ µÇ´Â°ÅÁÒ

µ¹¾Æ°¡±â

 




A.24

Àû¿ë¹öÀü :
Version 7
Àû¿ë Platform :
AIX
°³°ý :
TSM¿¡ µÎ°³ÀÇ °°Àº À̸§ÀÇ ·Î±×¸¦ °®°í ÀÖ´Â °æ¿ì rollforward°¡ Á¦´ë·Î µ¿ÀÛÇϳª¿ä?

°°Àº À̸§ÀÇ ¼­·Î ´Ù¸¥ ·Î±×°¡ À־ Á¦´ë·Î µ¿ÀÛÇÕ´Ï´Ù. °¡Àå Ãë±ÙÀÇ ½Ã°£¼ÒÀÎÀ» °®°í ÀÖ´Â ·Î±×¸¦ »ç¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù.
¸¸¾à °°Àº À̸§ÀÇ ´Ù¸¥ ·Î±×·Î ÀÎÇØ ¿¡·¯°¡ ¹ß»ýÇÑ´Ù¸é ´ÙÀ½°ú °°ÀÌ ¼öÇàÇϼ¼¿ä.

  1. ·Î±×ÆÄÀÏÁß Çϳª¸¦ ÃßÃâÇϰí, ¹é¾÷À» ¸¸µì´Ï´Ù.
  2. TSM¿¡¼­ ±× ·Î±×¸¦ Áö¿ó´Ï´Ù.
  3. Rollforward¸¦ ´Ù½Ã ¼öÇàÇÕ´Ï´Ù.


µ¹¾Æ°¡±â

 




A.25

Àû¿ë¹öÀü :
Version 7
Àû¿ë Platform : AIX
°³°ý :
DB2 UDB¿Í Legato Ŭ¶óÀÌ¾ðÆ®¸¦ AIX¿¡ ÀνºÅçÀ» Çß½À´Ï´Ù. Legato¸¦ »ç¿ëÇØ¼­ DB2ÀÇ DB¸¦ ¹é¾÷ ¹ÞÀ» ¼ö ÀÖ³ª¿ä?

¹é¾÷À» ¹Þ±â À§ÇØ ¸î°¡Áö set up À» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ´ÙÀ½ µÎ °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.
ù¹øÂ°

  1. Legato ȯ°æ¼¼ÆÃÀ» Export ¹Þ½À´Ï´Ù. (NSR_SERVER)
  2. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2 backup db sample load /u/db2inst/sqllib/lib/liblgto.a

µÎ¹øÂ°

  1. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2set DB2_VENDOR_INI=/u/db2inst/vendor.ini
    vendor.ini ÆÄÀÏÀº NSR_SERVER°ú °°Àº Legato ȯ°æ¼¼ÆÃÀ» °®°í ÀÖ½À´Ï´Ù.
  2. Legato¿¡¼­ Á¦°øµÈ ¶óÀ̺귯¸® ÆÄÀÏ(libxdb2.a)ÀÌ /usr/lib µð·ºÅ丮¿¡ ÀÖ´ÂÁö È®ÀÎÇÕ´Ï´Ù.
  3. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2set DB2_XBSA_LIBRARY=/usr/lib/libxdb2.a(bashr10.0)
  4. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2 backup db sample use XBSA
µ¹¾Æ°¡±â

 




A.26

Àû¿ë¹öÀü :
Version 7
Àû¿ë Platform : Windows NT
°³°ý : SQLJ ÀÀ¿ëÇÁ·Î±×·¥¿¡¼­ UPDATE¸¦ À§ÇÑ SELECT ¼öÇà½Ã lockÀÇ ÇüŸ¦ ¾î¶»°Ô ¾Ë ¼ö ÀÖ³ª¿ä?

CS ºÐ¸®·¹º§(µðÆúÆ®)ÀÇ °æ¿ì ¹Ù¶÷Á÷ÇÑ lockÀÇ ÇüŸ¦ ¾Ë±â À§Çؼ± Ä¿¼­°¡ ÀÖ´Â row¸¦ °»½ÅÇÒ Çʿ䰡 ÀÖ½À´Ï´Ù. "update where current of".
´Ù¸¥ ¶ôÀÇ ÇüŸ¦ ¾Ë±â À§Çؼ±, ºÐ¸®·¹º§À» Áõ°¡½ÃŰ°Å³ª °¨¼Ò½Ãų Çʿ䰡 ÀÖ½À´Ï´Ù.

SQLJ´Â Embedded SQLÀ̱⠶§¹®¿¡ ºÐ¸®·¹º§Àº Bind½Ã¿¡ °áÁ¤µË´Ï´Ù. ¸í½ÃµÇ¾î ÀÖÁö ¾ÊÀ¸¸é µðÆúÆ®·Î CS°¡ µË´Ï´Ù. ºÐ¸®·¹º§À» ¼¼ÆÃÇÏ·Á¸é ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇØ¾ß ÇÕ´Ï´Ù.
db2profc -url:jdbc:db2:dbname -prepoptions="isolation ??" my_SJProfile0.ser


µ¹¾Æ°¡±â

 




A.27


Àû¿ë¹öÀü : Version 7
Àû¿ë Platform : All Platform
°³°ý : ÀÀ¿ëÇÁ·Î±×·¥ ¼¼À̺êÆ÷ÀÎÆ®¸¦ »ç¿ëÇÔÀ¸·Î½á ¾ò´Â À̵æÀº ¹«¾úÀΰ¡¿ä?

ÀÀ¿ëÇÁ·Î±×·¥ ³»¿¡¼­ ¼¼À̺êÆ÷ÀÎÆ®¸¦ ¼³Á¤Çϰí ÈÄ¿¡ À̸¦ ÇØÁ¦Çϰųª ÇØ´ç ÀÛ¾÷À» roll back ½Ãų ¼ö µµ ÀÖ½À´Ï´Ù. ÇϳªÀÇ Æ®·£Àè¼Ç³»¿¡¼­ ¿©·¯ °³ÀÇ ¼¼À̺êÆ÷ÀÎÆ®¸¦ »ç¿ë ÇÒ ¼öµµ ÀÖ½À´Ï´Ù. ´ÙÀ½ ¿¹´Â ¼¼À̺êÆ÷ÀÎÆ®ÀÇ »ç¿ë¿¹¸¦ º¸¿©ÁÝ´Ï´Ù.

¿¹1)
INSERT INTO order ¡¦
INSERT INTO order_item ¡¦ lamp
--set ther first savepoint in the transaction
SAVEPOINT before_radio ON ROLLBACK RETAIN CURSORS
INSERT INTO order_item ¡¦ Radio
INSERT INTO order_item ¡¦ Power Cord
--Pseudo-SQL:
IF SQLSTATE="No Power Cord"
ROLLBACK TO SAVEPOINT before_radio
RELEASE SAVEPOINT before_radio
--set the second savepoint in the transaction
SAVEPOINT before_checkout ON ROLLBACK RETAIN CURSORS
INSERT INTO order ¡¦ Approval
--Pseudo-SQL:
IF SQLSTATE = "No approval"
ROLLBACK TO SAVEPOINT before_checkout
--commit the transaction, which releases the savepoint
COMMIT

µ¹¾Æ°¡±â

 




A.28

Àû¿ë¹öÀü : Version 5, Version 6, Version 7
Àû¿ë Platform : UNIX, Windows 20000, Windows NT
°³°ý : Embedded SQL Stored Procedure process (db2dari)°¡ Ŭ¶óÀ̾ðÆ®ÀÇ Ä¿³Ø¼ÇÀÌ ²÷¾îÁ®µµ ³¡³ªÁö ¾Ê½À´Ï´Ù.

Áõ»ó
db2dari process°¡ Á¤»óÀûÀ¸·Î Á¾·áµÇÁö ¾Ê½À´Ï´Ù.
¿¹¸¦ µé¾î Ŭ¶óÀÌ¾ðÆ®´Â AIX¼­¹ö¿¡ »õ·Î¿î db2dari ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÑ ÇÁ·Î½ÃÁ®¸¦ È£ÃâÇÕ´Ï´Ù. ÇÏÁö¸¸ Ŭ¶óÀÌ¾ðÆ®°¡ Á¢¼ÓÀ» ²÷¾îµµ db2dari ÇÁ·Î¼¼½º´Â °­Á¦·Î Á¾·á ½Ã۱â Àü¿£ Á×Áö ¾Ê°í °è¼Ó Á¸ÀçÇÏ°Ô µË´Ï´Ù.

°¡´ÉÇÑ ¿øÀÎ
Strored Procedure´Â ¼Ò½º ÄÚµåÀÇ Ã³À½ ºÎºÐ¿¡ "WHENEVER SQLERROR GOTO <label>;" ¹®ÀåÀ» Æ÷ÇÔÇϰí ÀÖ½À´Ï´Ù. <label> µÚ¿¡ ³ª¿À´Â ù ¹®ÀåÀº "WHENEVER SQLERROR CONTINUE;" ¸¦ Æ÷ÇÔÇϰí ÀÖ¾î¾ß ÇÕ´Ï´Ù. ÀÌ ¹®ÀåÀÌ ¾øÀ¸¸é ù¹øÂ° SQLERROR °¡ ¹ß»ý½Ã Stored Procedure´Â ¹«ÇÑ ·çÇÁ¿¡ ºüÁö°Ô µË´Ï´Ù.

Á¶Ä¡
Stored Procedure »ý¼º¹®¿¡ WHENEVER SQLERROR CONITNUE ;
¸í·ÉÀ» Ãß°¡Çϼ¼¿ä.


µ¹¾Æ°¡±â




A.29

Àû¿ë¹öÀü : Version 5, Version 6, Version 7
Àû¿ë Platform : Intel, UNIX
°³°ý : ÀÀ¿ëÇÁ·Î±×·¥ ½ÇÇ൵Áß SQL0024N ¿À·ù ¹ß»ý.

Áõ»ó
ÀÀ¿ëÇÁ·Î±×·¥ ½ÇÇ൵Áß SQL0024N ¿À·ù ¹ß»ý.

°¡´ÉÇÑ ¿øÀÎ
ÀÀ¿ëÇÁ·Î±×·¥ÀÌ µðÆúµå DB¿¡ ´ëÇÑ Á¤ÀÇ ¾øÀÌ ¹¬½ÃÀû ¿¬°áÀ» ½ÃµµÇÏ·Á°í ÇÕ´Ï´Ù. ¹¬½ÃÀû ¿¬°áÀº DB2DBDFT ·¹Áö½ºÆ®¸® °ªÀ» ÀÌ¿ëÇØ ¿¬°áÇÒ DB¸¦ ¾Ë¾Æ³À´Ï´Ù. DB2DBDFT °ªÀº ¹¬½ÃÀû ¿¬°á¿¡ ÀÌ¿ëµÉ DBÀÇ º°¸íÀ» ³ªÅ¸³À´Ï´Ù. ÀÀ¿ëÇÁ·Î±×·¥ÀÌ DB¿¡ ´ëÇÑ ¿¬°á¾øÀÌ SQL ¹®À» ¹ßÇàÇÏ°Ô µÇ¸é DB2DBDFT°ªÀ» ÀÌ¿ëÇÑ ¹¬½ÃÀû ¿¬°áÀÌ ÀÌ·ç¾î Áý´Ï´Ù. µû¶ó¼­ DB2DBDFT °ªÀÌ Á¤ÀÇ µÇÁö ¾Ê¾Ò´Ù¸é DB¿¡ ´ëÇÑ ¿¬°á¾øÀÌ ÀÀ¿ëÇÁ·Î±×·¥À» ½ÇÇàÇÏ°Ô µÇ¸é SQL0024N ¿À·ù°¡ ¹ß»ýÇÏ°Ô µË´Ï´Ù.

Á¶Ä¡
db2set ¸í·ÉÀ» ÀÌ¿ëÇØ µðÆúÆ® DB·Î »ç¿ëÇÒ DB¸íÀ» DB2DBDFT ·¹Áö½ºÆ®¸® º¯¼ö¿¡ ³Ö¾î ÁÖ¼¼¿ä.


µ¹¾Æ°¡±â

 




A.30


Àû¿ë¹öÀü : Version 7, Version 6
Àû¿ë Platform : All Platforms
°³°ý : db2diag.log¿¡ ÀÖ´Â lock escalation¿¡ ´ëÇÑ ¸Þ½ÃÁö¸¦ ¾î¶°Çí ÇØ¼®ÇÏÁÒ?

db2diag.log ÆÄÀÏ¿¡ ÀÖ´Â lock escalation¿¡ ´ëÇÑ ¸Þ½ÃÁö°¡ ´ÙÀ½ °°Àº ÇüÅ·Π³ª¿Ã ¶§
2001-02-08-08.18.05.109000 Instance:DB2 Node:000
PID:266(db2syscs.exe) TID:242 Appid:*LOCAL.DB2.010208131805
data_management sqldEscalateLocks Probe:2 Database:CMCADEVL

  • Lock Count, Target : 1829, 914
  • Table (ID) Name : (2;5) DBMDB2 .INBOX
  • Locks, Request Type : 1826, S
  • Result (0 = success): 0

Lock Count´Â ±× ÀÀ¿ëÇÁ·Î±×·¥ÀÌ ÇöÀç À¯ÁöÇϰí ÀÖ´Â LockÀÇ °³¼öÀÔ´Ï´Ù.ÀÌ °æ¿ì¿£ 1829°³°¡ µË´Ï´Ù.. TargetÀº lock escalationÀÌ ¸ØÃß±â Àü¿¡ ÇÊ¿äÇÑ LockÀÇ °³¼öÀÌ°í ±× ¼ö´Â ±âº» ÃÑ ¶ô¼öÀÇ Àý¹ÝÀ¸·Î ¼³Á¤µË´Ï´Ù. Locks °ªÀº ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÇÇØ Å×ÀÌºí¿¡¼­ À¯ÁöµÇ´Â Row·¹º§ Lock(·¹Áö½ºÆ®¸® º¯¼ö°¡ DB2_RR_TO_RSÀÏ ¶§ÀÇ key value ¶ôÀ» Æ÷ÇÔ)ÀÇ ¼ö·Î À̰ÍÀº lock escalationÀÇ °á°ú·Î Å×À̺í lockÀ¸·Î ´ëüµÉ ¶ôÀÇ ¼öÀ̱⵵ ÇÕ´Ï´Ù. ¶ÇÇÑ ÀÀ¿ëÇÁ·Î±×·¥¿¡ ÀÇÇØ¼­ À¯ÁöµÆ´ø ÃÑ ¶ôÀÇ °³¼öÁß¿¡ °¨¼Ò½Ãų ÃÑ ¶ôÀÇ °³¼öÀ̱⵵ ÇÕ´Ï´Ù. µû¶ó¼­ »õ·Î¿î ¶ôÀÇ °³¼ö´Â ÀÌÀü ¶ôÀÇ ¼ö¿¡¼­ Row·¹º§ ¶ôÀÇ ¼ö¸¦ »« ³ª¸ÓÁö ¼ö°¡ µË´Ï´Ù. Request TypeÀº ÇØ´ç Å×À̺íÀÇ ¶ô ŸÀÔÀ¸·Î ¸¸¾à NS ȤÀº S¶ôÀÌ °É·Á ÀÖ´Ù¸é, S·Î U, W, X ¶ôÀÌ °É·Á ÀÖ´Ù¸é X ·Î Ç¥½ÃµË´Ï´Ù. Result ´Â ¹ÝȯÄڵ带 Ç¥½ÃÇÏ°í ¹ÝȯÄڵ尡 0À̸é escalation ÇÁ·Î¼¼½º°¡ ¼º°ø, À½¼öÀ̸é lock timeout, dead lock, ÀÎÅÍ·´Æ® µîÀÌ ¹ß»ýÇß´Ù´Â ÀǹÌÀÔ´Ï´Ù. À½¼ö ¹ÝȯÄÚµå´Â ³»ºÎÄÚµå·Î½á sqlcode°¡ ¾Æ´Õ´Ï´Ù.

¸Þ½ÃÁö´Â ¾î¶»°Ô »ý¼ºµÇ´Â°¡?Database ¿¡ÀÌÀüÆ®°¡ lock escalationÀ» ¼öÇàÇÒ ¶§, ÀÀ¿ëÇÁ·Î±×·¥ÀÇ ¶ô ¸®½ºÆ®¸¦ °ËÅäÇÏ¿© Å×À̺í´ç ¶ôÀÇ ¼ö¸¦ °è»êÇÕ´Ï´Ù. Row lockÀº Table lockÀ¸·Î escalated µÇ°í db2diag.log¿¡ ±× °á°ú°¡ ³ªÅ¸³ª°Ô µË´Ï´Ù. EscalationÀÌ ¼º°øÀûÀ̰í Target °ª¿¡ µµ´ÞÇÏÁö ¸øÇß´Ù¸é, ´ÙÀ½À¸·Î ¸¹Àº ÃÑ row lockÀ» °¡Áö°í ÀÖ´Â Å×ÀÌºí¿¡¼­ ´ÙÀ½ÀÛ¾÷ÀÌ ¼öÇàµË´Ï´Ù. ¸®½ºÆ®µÈ °¢°¢ÀÇ Å×À̺íµéÀº row lockÀ» table lockÀ¸·Î escalate ½ÃŲ ÈÄ¿¡ »õ·Î¿î ¶ô ¼ö¸¦ °è»êÇÏ°Ô µË´Ï´Ù. ÀÌ·± ½ÄÀ¸·Î ¶ô ¼ö°¡ °¨¼ÒµÇ°í, ƯÁ¤ ½ÃÁ¡¿¡ Target °ª¿¡ µµ´ÞÇÏ°Ô µÇ¸é escalationÀº ÁßÁöµË´Ï´Ù.ÀÌ ¸Þ½ÃÁö¸¦ db2diag.log¿¡¼­ º¸±âÀ§Çؼ± DIAGLEVELÀÌ 3À̳ª 4·Î ¼³Á¤ µÇ¾î¾ß ÇÕ´Ï´Ù. ´Ü lock escalationÀÌ ½ÇÆÐÇϸé DIAGLEVEL 2¿¡¼­µµ ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù

 

µ¹¾Æ°¡±â





A.31

Àû¿ë¹öÀü : Version 7
Àû¿ë Platform : AIX
°³°ý : TSM¿¡ µÎ°³ÀÇ °°Àº À̸§ÀÇ ·Î±×¸¦ °®°í ÀÖ´Â °æ¿ì rollforward°¡ Á¦´ë·Î µ¿ÀÛÇϳª¿ä?

°°Àº À̸§ÀÇ ¼­·Î ´Ù¸¥ ·Î±×°¡ À־ Á¦´ë·Î µ¿ÀÛÇÕ´Ï´Ù. °¡Àå Ãë±ÙÀÇ ½Ã°£¼ÒÀÎÀ» °®°í ÀÖ´Â ·Î±×¸¦ »ç¿ëÇϱ⠶§¹®ÀÔ´Ï´Ù.
¸¸¾à °°Àº À̸§ÀÇ ´Ù¸¥ ·Î±×·Î ÀÎÇØ ¿¡·¯°¡ ¹ß»ýÇÑ´Ù¸é ´ÙÀ½°ú °°ÀÌ ¼öÇàÇϼ¼¿ä.

  1. ·Î±×ÆÄÀÏÁß Çϳª¸¦ ÃßÃâÇϰí, ¹é¾÷À» ¸¸µì´Ï´Ù.
  2. TSM¿¡¼­ ±× ·Î±×¸¦ Áö¿ó´Ï´Ù.
  3. Rollforward¸¦ ´Ù½Ã ¼öÇàÇÕ´Ï´Ù.

µ¹¾Æ°¡±â



A.32

Àû¿ë¹öÀü : Version 7
Àû¿ë Platform : AIX
°³°ý : DB2 UDB¿Í Legato Ŭ¶óÀÌ¾ðÆ®¸¦ AIX¿¡ ÀνºÅçÀ» Çß½À´Ï´Ù. Legato¸¦ »ç¿ëÇØ¼­ DB2ÀÇ DB¸¦ ¹é¾÷ ¹ÞÀ» ¼ö ÀÖ³ª¿ä?

¹é¾÷À» ¹Þ±â À§ÇØ ¸î°¡Áö set up À» ÇØÁÖ¾î¾ß ÇÕ´Ï´Ù. ´ÙÀ½ µÎ °¡Áö ¹æ¹ýÀÌ ÀÖ½À´Ï´Ù.

ù¹øÂ°

  1. Legato ȯ°æ¼¼ÆÃÀ» Export ¹Þ½À´Ï´Ù. (NSR_SERVER)
  2. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2 backup db sample load /u/db2inst/sqllib/lib/liblgto.a

µÎ¹øÂ°

  1. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2set DB2_VENDOR_INI=/u/db2inst/vendor.ini
    vendor.ini ÆÄÀÏÀº NSR_SERVER°ú °°Àº Legato ȯ°æ¼¼ÆÃÀ» °®°í ÀÖ½À´Ï´Ù.
  2. Legato¿¡¼­ Á¦°øµÈ ¶óÀ̺귯¸® ÆÄÀÏ(libxdb2.a)ÀÌ /usr/lib µð·ºÅ丮¿¡ ÀÖ´ÂÁö È®ÀÎÇÕ´Ï´Ù.
  3. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2set DB2_XBSA_LIBRARY=/usr/lib/libxdb2.a(bashr10.0)
  4. ´ÙÀ½ ¸í·ÉÀ» ¼öÇàÇÕ´Ï´Ù.
    db2 backup db sample use XBSA

µ¹¾Æ°¡±â





A.33

Àû¿ë ¹öÀü : Version 7, Version 6, Version 5
Àû¿ë Platform : All Platforms
°³°ý : db2diag.log ÆÄÀÏ¿¡ "Prefetch Queue Full" À̶ó´Â ¸Þ½ÃÁö°¡ ³ªÅ¸³³´Ï´Ù. ÀÌ ¸Þ½ÃÁö°¡ ÀǹÌÇÏ´Â°Ô ¹º°¡¿ä?

¸¹Àº °æ¿ì¿¡ DB2´Â ¿¡ÀÌÀüÆ®¿¡¼­ ÇÊ¿ä·Î ÇÏ´Â ÆäÀÌÁö¸¦ ¿¹ÃøÇÏ°í ½ÇÁ¦·Î À̵éÀ» ÇÊ¿ä·Î Çϱâ Àü¿¡ ¹Ì¸® ¹öÆÛÇ®¿¡ ÇÒ´çÇÒ ¼ö ÀÖ½À´Ï´Ù. µû¶ó¼­ ¿¡ÀÌÀüÆ®°¡ ÀÌ·± ÆäÀÌÁö¿¡ ¾ï¼¼½º ÇÒ Çʿ䰡 ÀÖÀ» ¶§ ÀÌ¹Ì ¹öÆÛÇ®¿¡ Àֱ⠶§¹®¿¡ I/O·Î ÀÎÇÑ ºÎÇϸ¦ ÁÙÀÏ ¼ö ÀÖ°Ô µË´Ï´Ù. À̸¦ ÇÁ¸®ÆäÄ¡¶ó°í ÇÕ´Ï´Ù.
DB2¿¡ ÀÇÇØ ÇÁ¸®ÆäÄ¡ ÇÏ°Ô µÇ´Â ¾çÀº ¹öÆÛÇ® »çÀÌÁî, ÇÁ¸®ÆäÄ¡ »çÀÌÁî, ¿ÉƼ¸¶ÀÌÀú¿¡ ÀÇÇÑ °èȹ µî ¿©·¯ ÀÎÀÚÀÇ ¿µÇâÀ» ¹Þ½À´Ï´Ù.
ÇÁ¸®ÆäÄ¡ Å¥ÀÇ »çÀÌÁî´Â µ¥ÀÌÅͺ£À̽º°¡ ½ÃÀÛÇÒ ¶§ Database Configuration ÆÄ¶ó¹ÌÅÍ Áß NUM_IOSERVERS °ªÀ» Åä´ë·Î °è»êµË´Ï´Ù. µ¥ÀÌÅͺ£À̽º°¡ Ȱµ¿ÁßÀ϶§´Â Å¥ »çÀÌÁîÀÇ º¯È­°¡ ¾ø½À´Ï´Ù. ±×·³ ÀÌ °ªÀ» ¾ÆÁÖ Å©°Ô Çϰųª ¹«Á¦ÇÑÀ¸·Î ¸¸µé¾î ¹ö¸®¸é ¾î¶²°¡ ÇϰÚÁö¸¸ ÀÌ °ªÀÌ Áö³ªÄ¡°Ô Ä¿Áö¸é ÇÁ¸®ÆäÃİ¡ ÆäÀÌÁö¸¦ ¹öÆÛÇ®·Î ÇÁ¸®ÆäÄ¡ ÇØ¿À±â Àü¿¡ ¿¡ÀÌÀüÆ®°¡ ÆäÀÌÁö¸¦ °®°Ô µÇ¹ö¸®´Â Çö»óÀÌ ¹ß»ýÇÏ°Ô µË´Ï´Ù. ÀÌ·¸°Ô µÇ¸é ´õ ÀÌ»ó ÇÁ¸®ÆäÄ¡°¡ Àǹ̰¡ ¾ø¾îÁö°Ô µÇ´Â°ÅÁÒ. µû¶ó¼­ ÀÌµé °ªµéÀ» ÀûÀýÈ÷ Á¶Á¤ÇÒ Çʿ䰡 »ý±â°Ô µË´Ï´Ù.
±×·³ ÇÁ¸®ÆäÄ¡ Å¥°¡ Ç®ÀÌ ³µ´Ù´Â Àǹ̴ ¹«¾ùÀϱî¿ä?

2001-04-07-19.07.44.089336 Instance:db2inst1 Node:000
PID:556(db2agent (SAMPLE)) Appid:94ADEB5D.BE0A.010106173536
buffer_pool_services sqlbpfAddToQ Probe:298 Database:SAMPLE
Prefetch Queue Full: request not queued. You may need to increase num_ioservers for optimal performance!

ÀÌ ¸Þ½ÃÁö´Â ÇÁ¸®ÆäÄ¡ ¿äûÀ» À¯ÁöÇÏ´ø Å¥°¡ Ç®ÀÌ ³µ´Ù´Â ÀÇ¹Ì ÀÔ´Ï´Ù. ÀÌ °æ¿ì¿¡ ¿¡ÀÌÀüÆ®´Â ÇÁ¸®ÆäÃİ¡ Çڵ鸵 ÇÒ Çʿ䰡 ¾ø´Â ÇÁ¸®ÆäÄ¡ ¿äûÀ» ÇÏ°Ô µÇ°í (µû¶ó¼­ ¿¡ÀÌÀüÆ®´Â ½º½º·Î µ¥ÀÌÅÍ¿¡ ¾ï¼¼½ºÇؼ­ ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ ÀÐ°Ô µË´Ï´Ù.) µû¶ó¼­ ¿äûÀÌ Å¥¿¡ À§Ä¡ÇÏÁö ¾Ê°Ô µË´Ï´Ù.

´ÙÀ½ ¸Þ½ÃÁö´Â ºñ½ÁÇϱä ÇÏÁö¸¸ ¾à°£ÀÇ Â÷À̰¡ ÀÖ½À´Ï´Ù.

2001-04-07-19.07.44.089336 Instance:db2inst1 Node:000
PID:556(db2agent (SAMPLE)) Appid:94ADEB5D.BE0A.010106173536
buffer_pool_services sqlbpfAddToQ Probe:299 Database:SAMPLE
Prefetch Queue Full: waiting for space. You may need to increase num_ioservers for optimal performance!

ÀÌ °æ¿ì ¿¡ÀÌÀüÆ®´Â ÇÁ¸®ÆäÃİ¡ Çڵ鸵 ÇÒ ÇÁ¸®ÆäÄ¡ ¿äûÀ» ÇÏ°Ô µË´Ï´Ù. ºó °ø°£ÀÌ »ý±â±æ ´ë±âÇϰí ÀÖ´Â »óÅÂÀ̱⠶§¹®¿¡ °ø°£ÀÌ »ý±â°Ô µÇ¸é Å¥°¡ ±× ºó °ø°£¿¡ ÀÇÄ¡ÇÏ°Ô µË´Ï´Ù.

À§ µÎ °æ¿ì ¸ðµÎ DB CFG ÆÄ¶ó¹ÌÅÍÀÎ NUM_IOSERVERS °ªÀ» Áõ°¡ ½ÃÅ´À¸·Î½á ÇØ°á ÇÒ ¼ö ÀÖ½À´Ï´Ù. ÀϹÝÀûÀ¸·Î ÀÌ °ªÀÇ Áõ°¡´Â ¼º´É Çâ»ó ¹× Queue Full »óŰ¡ ÀϾ´Â°É °¨¼Ò½Ãŵ´Ï´Ù. À̴ ť¸¦ ó¸®ÇÒ ÇÁ¸®ÆäÃÄ ¼ö°¡ ÃæºÐÇÏÁö ¸øÇØ ¹Ì°á Å¥ µéÀÌ °è¼Ó ½×¿©¼­ ÀϾ´Â Çö»óÀ̱⠶§¹®¿¡ Å¥¸¦ ó¸®ÇÒ ÇÁ¸®ÆäÃÄ ¼ö°¡ Áõ°¡ÇÏ¸é ±×¸¸Å­ÀÇ ¼º´ÉÇâ»óÀÌ ÀÖ´Â °ÅÁö¿ä.
ÇÏÁö¸¸ ¸î°¡Áö °æ¿ì¿¡ ÇÁ¸®ÆäÃÄ ¼öÀÇ Áõ°¡°¡ ÀÌ·± Çö»óÀ» ÇØ°áÇϴµ¥ µµ¿òÀÌ µÇÁö ¾Ê´Â °æ¿ì°¡ ÀÖ½À´Ï´Ù. ½Ã½ºÅÛÀÌ ÀÌ¹Ì I/O ¹Ù¿îµå µÇ¾ú´Ù¸é (½Ã½ºÅÛÀÇ I/O ¼º´ÉÀÌ ÇѰ迡 ´ÞÇ߱⠶§¹®¿¡) ÇÁ¸®ÆäÃÄ ¼öÀÇ Áõ°¡°¡ µµ¿òÀÌ µÇÁö ¾Ê½À´Ï´Ù.

µ¹¾Æ°¡±â




A.34

Àû¿ë ¹öÀü : Version 7, Version 6, Version 5