Noarchivelog ¸ðµå¿¡¼­ µ¥ÀÌÅͺ£À̽º º¹¿ø
º¹¿øÇÒ ¶§ RMANÀº ¿ÏÀü ¹é¾÷À» ÇÒ °ÍÀÎÁö, ¶Ç´Â ÁõºÐ ¹é¾÷À» ÇÒ °ÍÀÎÁö, ¾ÆÄ«À̺êµÈ ·Î±×¸¦ »ç¿ëÇÒ °ÍÀÎÁö, ¶Ç´Â À̹ÌÁö »çº»À» »ç¿ëÇÒ °ÍÀÎÁö °áÁ¤Çϱâ À§ÇØ º¹±¸ Ä«Å»·Î±×(Recovery Catalog)³ª ´ë»ó µ¥ÀÌÅͺ£À̽º ÄÁÆ®·Ñ ÆÄÀÏÀ» »ç¿ëÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º°¡ noarchivelog ¸ðµå¿¡ ÀÖÀ¸¸é ¸ðµç µ¥ÀÌÅͺ£À̽º ÆÄÀÏÀÌ º¹¿øµÇ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ±â¾ïÇØ µÎ½Ê½Ã¿À.

Restore ±¸¹®
¡°restore¡±´Â º¸Åë ¡°run¡±À̳ª ¡°create script¡± ¸í·É ³»¿¡¼­ ½ÇÇàµË´Ï´Ù.

   restore <Object> <Options>;
      ´Ü:             Object          controlfile to <location>
                                           database
                                           datafile <quoted_string>
                                           tablespace <quoted_string>
                                           archivelog all;
                       Options        channel=<name>
                                           from tag=<name>
                                           parms=<quoted_string>
                                           from [backupset | datafilecopy]

Note
: ÀÌ°ÍÀÌ ¿Ïº®ÇÑ ±¸¹®ÀÎ °ÍÀº ¾Æ´Õ´Ï´Ù.

Recovery Manager °í·Á »çÇ×
noarchivelog ¸ðµåÀÇ µ¥ÀÌÅͺ£À̽º ÆÄÀÏÀ» º¹¿øÇÒ ¶§´Â ´ÙÀ½ »óȲÀ» ¾Ë°í ÀÖ¾î¾ß ÇÕ´Ï´Ù:

¿ÀÇ µ¥ÀÌÅͺ£À̽ºÀÇ Å×ÀÌºí½ºÆäÀ̽º º¹±¸

¿¡·¯ ¿­ÀÌ not nullÀÌ¸é µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇϰųª µ¥ÀÌÅÍ ÆÄÀÏÀ» ±× ÆÄÀÏÀÇ À̹ÌÁö »çº»À¸·Î ½ºÀ§Ä¡ÇÏ¿© Å×ÀÌºí½ºÆäÀ̽º¸¦ º¹±¸ÇØ¾ß ÇÒ °ÍÀ̶ó´Â ÀǹÌÀÔ´Ï´Ù.

Note: ¿ÀÇ µ¥ÀÌÅͺ£À̽º º¹±¸¸¦ À§Çؼ­´Â µ¥ÀÌÅͺ£À̽º°¡ archivelog ¸ðµåÀ̾î¾ß ÇÕ´Ï´Ù. ÇʼöÀûÀÎ °ÍÀº ¾Æ´ÏÁö¸¸ ÀÚµ¿ archivingÀ» È°¼ºÈ­ÇÏ´Â °ÍÀÌ ÁÁ½À´Ï´Ù.

µð½ºÅ© ½ÇÆи¦ ±Øº¹Çϱâ À§ÇÑ º¹±¸
µð½ºÅ© ½ÇÆзΠÀÎÇÏ¿© µ¥ÀÌÅÍ ÆÄÀÏÀ» ¾×¼¼½ºÇÒ ¼ö ¾ø´Ù¸é »õ À§Ä¡·Î º¹¿øµÇ°Å³ª ±âÁ¸ À̹ÌÁö »çº»À¸·Î ´ëüµÇ¾îÁ®¾ß ÇÕ´Ï´Ù.
»õ À§Ä¡·Î µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇÏ´Â ¿¹:
¿©·¯ºÐÀº µð½ºÅ© 2°¡ ÈѼյǾúÀ¸³ª µ¥ÀÌÅͺ£À̽º´Â ¾ÆÁ÷ ¿­·Á ÀÖ´Ù´Â °ÍÀ» ¹ß°ßÇÕ´Ï´Ù. »ç¿ëÀÚµéÀÌ µ¥ÀÌÅÍ ÆÄÀÏ 2ÀÇ Á¤º¸¸¦ ¾×¼¼½ºÇÒ ¼ö ¾ø´Ù°í Á¾Á¾ ºÒÆòÇÏ°í ÀÖ½À´Ï´Ù:
   ORA-00376: file 2 cannot be read at this time
   ORA-01110: data file 2: ¡®/disk2/data/df2.dbf¡¯

  1. ´ÙÀ½ ¸í·ÉÀ» »ç¿ëÇÏ¿© µð½ºÅ© 2 »óÀÇ µ¥ÀÌÅÍ ÆÄÀÏÀÇ À§Ä¡¸¦ È®ÀÎÇϽʽÿÀ.
       SQL> select file#, name, bytes from v$datafile;
       FILE# NAME                            BYTES
       ----- --------------------------   --------
           1  /disk1/data/system_01.dbf   31457280
           2  /disk2/data/df2.dbf         10485760
        ...
    ¿©·¯ºÐÀº µð½ºÅ© 1¿¡ µ¥ÀÌÅÍ ÆÄÀÏ 2¸¦ À§ÇÑ ÃæºÐÇÑ °ø°£ÀÌ ÀÖ´Ù°í ÆÇ´ÜÇÕ´Ï´Ù.

  2. ¡°restore¡± ¸í·ÉÀ» »ç¿ëÇÏ¿© ¼º°øÀûÀ¸·Î º¹¿øÇÒ ¼ö ÀÖµµ·Ï ÆÄÀÏ(ÇÊ¿äÇÏ´Ù¸é Å×ÀÌºí½ºÆäÀ̽º)À» ¿ÀÇÁ¶óÀÎ »óÅ·Π³õÀ¸½Ê½Ã¿À.

  3. (¡°set newname¡±À» »ç¿ëÇÏ¿©) ÆÄÀÏÀÌ »õ À§Ä¡·Î º¹»çµÇ¾úÀ¸¹Ç·Î ÆÄÀÏÀº ¡°switch¡± ¸í·ÉÀ»  »ç¿ëÇÏ¿© »õ ÆÄÀÏ À§Ä¡¸¦ ¿À¶óŬ¿¡°Ô ¾Ë·ÁÁÖ¹Ç·Î½á ¡°current¡± »óÅ°¡ µÇ¾î¾ß ÇÕ´Ï´Ù.

  4. ¡°recover¡± ¸í·ÉÀ» »ç¿ëÇÏ¿© º¹¿øµÈ ÆÄÀÏ¿¡ ¾ÆÄ«À̺ê, ÁõºÐ, ´©Àû, ±×¸®°í ¸®µÎ ·Î±×ÀÇ Á¶ÇÕÀ»   Àû¿ëÇϱ⠽ÃÀÛÇÏ¿© µ¥ÀÌÅͺ£À̽º¸¦ µ¿±âÈ­ ÇϽʽÿÀ.

  5. º¹±¸°¡ ³¡³ª¸é µ¥ÀÌÅÍ ÆÄÀÏÀ» ¿Â¶óÀÎ »óÅ·Π¸¸µå½Ê½Ã¿À.
    »ç¿ëÀÚ¿¡°Ô µ¥ÀÌÅͺ£À̽º°¡ »ç¿ë °¡´ÉÇÏ´Ù´Â °ÍÀ» ¾Ë·Á ÁÖ°í, ½Ã½ºÅÛ ½ÇÆÐ Àü¿¡ Ä¿¹ÔÇÏÁö ¾Ê¾Ò´ø µ¥ÀÌÅ͸¦ ÀçÀÔ·ÂÇϽʽÿÀ. ´ÙÀ½ ¸í·ÉÀ» ÀûÀýÈ÷ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
      run {
      allocate channel dev1 type ¡®sbt_tape¡¯:
      sql ¡°alter tablespace tbs1 offline immediate¡±;
      set newname for datafile ¡®/disk2/data/df2.dbf¡¯
      to ¡®disk1/data/df2.dbf¡¯;   # Specify where to restore the file
      restore (tablespace tbs1); # Restore the datafile from tape
      switch datafile 2;         # Update the control file and recovery catalog
      recover tablespace tbs1;   # Recover the tablespace
      sql ¡°alter tablespace tbs1 online¡±;
      release channel dev1;
      }

º¹¿øÇÒ ¶§ RMANÀº ¿ÏÀü ¹é¾÷À» ÇÒ °ÍÀÎÁö, ¾Æ´Ï¸é ÁõºÐ ¹é¾÷À» ÇÒ °ÍÀÎÁö, ¾ÆÄ«À̺êµÈ ·Î±×¸¦ »ç¿ëÇÒ °ÍÀÎÁö, ¾Æ´Ï¸é À̹ÌÁö »çº»À» »ç¿ëÇÒ °ÍÀÎÁö °áÁ¤Çϱâ À§ÇØ º¹±¸ Ä«Å»·Î±×(Recovery Catalog)³ª µ¥ÀÌÅͺ£À̽º ÄÁÆ®·Ñ ÆÄÀÏÀ» »ç¿ëÇÕ´Ï´Ù. µ¥ÀÌÅͺ£À̽º°¡ archivelog ¸ðµå¿¡ ÀÖÀ¸¸é ¼Õ»óµÈ ÆÄÀϸ¸ º¹¿øµÇ¾î¾ß ÇÑ´Ù´Â °ÍÀ» ±â¾ïÇØ µÎ½Ê½Ã¿À. ¡°restore¡± ±¸¹®Àº ¾Õ Àå¿¡ ³ª¿Í ÀÖ½À´Ï´Ù.

Note: 0º¸´Ù Å« ·¹º§¿¡¼­ÀÇ ÁõºÐ ¹é¾÷Àº ¡°restore¡± ¸í·ÉÀ¸·Î º¹¿øµÇ¾îÁöÁö ¾Ê½À´Ï´Ù.  º¹±¸ÇÏ´Â µ¿¾È ·¹º§ 0 ¹é¾÷À» Àû¿ëÇØ¾ß ÇÕ´Ï´Ù.

Set Newname ¸í·É
»õ À§Ä¡¿¡ ¸¹Àº µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇÒ ¶§ ¡°set newname¡± ¸í·ÉÀ» »ç¿ëÇϽʽÿÀ:
   set newname for datafile <name> to <newname>;

º¹¿øµÈ ÆÄÀÏÀ» ¡°current¡±ÇÏ°Ô ¸¸µå´Â µ¥´Â ¡°switch¡± ¸í·ÉÀÌ »ç¿ëµË´Ï´Ù.
   switch datafile <name>;

º¹±¸Çϱâ À§ÇÑ Recovery Manager »ç¿ë
ÀÏ´Ü º¹¿øµÈ ÆÄÀÏÀº º¹±¸µÇ¾î¾ß ÇÕ´Ï´Ù. ±×³É µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇÏ°í ¾ÆÄ«À̺긦 Àû¿ëÇÏ´Â °Íº¸´Ù RMANÀº ´õ ¸¹Àº ¼±ÅÃÀ» ÇÒ ¼ö ÀÖ½À´Ï´Ù. ¿øÇÑ´Ù¸é ÁõºÐ ¹é¾÷À» Àû¿ëÇÒ ¼öµµ ÀÖ½À´Ï´Ù.

archivelog ¸ðµåÀÎ µ¥ÀÌÅͺ£À̽ºÀÇ ÆÄÀÏÀ» º¹¿øÇÒ ¶§´Â ´ÙÀ½ »óȲÀ» ¾Ë¾Æ¾ß ÇÕ´Ï´Ù:

RMANÀ» »ç¿ëÇÑ µ¥ÀÌÅͺ£À̽ºÀÇ ºÒ¿ÏÀü º¹±¸
ºÒ¿ÏÀü º¹±¸¿¡ ´ëÇÑ º¹¿ø, º¹±¸ ÇÁ·Î¼¼½º´Â ¸ðµç µ¥ÀÌÅÍ ÆÄÀÏÀÌ ÀÌÀü ¹é¾÷À¸·ÎºÎÅÍ º¹¿øµÇ¾î¾ß ÇÑ´Ù´Â Á¡À» Á¦¿ÜÇÏ¸é ¿ÏÀü º¹±¸¿Í µ¿ÀÏÇÑ ÀýÂ÷¿Í ±¸¹®À» µû¸¨´Ï´Ù.

Recover ±¸¹®
¡°recover¡±´Â º¸Åë ¡°run¡±À̳ª ¡°create script¡± ¸í·É ¾È¿¡¼­ ½ÇÇàµË´Ï´Ù:
   recover <Object>;
      ´Ü:             Object          database <until_clause>
                                           tablespace <until_clause>

Note

RMAN ºÒ¿ÏÀü º¹±¸
97³â 12¿ù 9ÀÏ È­¿äÀÏ ¿ÀÈÄ 12½Ã, ¿©·¯ºÐÀº °í¿ëÀÚ Å×À̺íÀÌ »èÁ¦µÈ °ÍÀ» ¹ß°ßÇÏ°í´Â Áï½Ã µ¥ÀÌÅͺ£À̽º¸¦ Á¾·áÇÑ ÈÄ º¹±¸¸¦ ½ÃÀÛÇÕ´Ï´Ù. ¹®Á¦°¡ ¹ß»ýÇÑ ´ë·«ÀûÀÎ ½Ã°£Àº ¾Ë·ÁÁ® ÀÖÀ¸¸ç ¿ÀÀü 11:44 ÀÌÈÄ·Î µ¥ÀÌÅͺ£À̽º ±¸Á¶°¡ º¯°æµÇÁö´Â ¾Ê¾Ò½À´Ï´Ù. ¿©·¯ºÐÀº ¡°until time¡± ¹æ¹ýÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù:

  1. ´ë»ó µ¥ÀÌÅͺ£À̽º°¡ ¿ÀǵǾî ÀÖÀ¸¸é clean shut downÀ» ½ÇÇàÇÕ´Ï´Ù.

  2. ´ë»ó µ¥ÀÌÅͺ£À̽º¸¦ ¸¶¿îÆ®ÇÕ´Ï´Ù. º¹±¸ÇÏ´Â µ¿¾È µ¥ÀÌÅͺ£À̽º¸¦ ¹é¾÷ÇÏÁö´Â ¸¶½Ê½Ã¿À.

  3. Recovery Manager¸¦ ½ÃÀÛÇÏ¿© ´ë»ó µ¥ÀÌÅͺ£À̽º¿¡ Á¢¼ÓÇÕ´Ï´Ù. µÇµµ·ÏÀÌ¸é º¹±¸ Ä«Å»·Î±×¸¦ »ç¿ëÇÕ´Ï´Ù. RMANÀ» ½ÃÀÛÇϱâ Àü¿¡ NLS_LANG°ú NLS_DATE_FORMAT ȯ°æ º¯¼ö°¡ ÀûÀýÈ÷ ¼³Á¤µÇ¾ú´ÂÁö È®ÀÎÇϽʽÿÀ:
      $ NLS_LANG=american
      $ NLS_DATE_FORMAT=¡®YYYY-MM-DD:HH24:MI:SS¡¯
      $ rman target rman/rman@DB00 rcvcat rman/rman@RCVCAT

  4. º¹¿ø°ú º¹±¸¸¦ ¼öÇàÇÒ ¡°run¡± ¸í·ÉÀ» »ý¼ºÇϽʽÿÀ:
      RMAN> run { allocate channel c1 type DISK;

  5. ¼º°øÀûÀÎ ºÒ¿ÏÀü ¹é¾÷À» °¡´ÉÇÏ°Ô ÇØÁÙ ¹é¾÷À¸·ÎºÎÅÍ ¸ðµç µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇϽʽÿÀ. RMANÀº ¡°set until¡± ¸í·É¿¡ ±âÃÊÇÏ¿© À̵é ÆÄÀÏÀ» ¼±ÅÃÇÒ °ÍÀÔ´Ï´Ù:
      RMAN> . . . set until time = ¡®1997-12-09:11:44:00¡¯;
      RMAN> . . . restore database;

    Note: ¡°restore database¡± ¸í·ÉÀº µ¥ÀÌÅÍ ÆÄÀϸ¸À» º¹¿øÇÕ´Ï´Ù. ÄÁÆ®·Ñ ÆÄÀÏÀ̳ª ¸®µÎ ·Î±×, ¶Ç´Â ¾ÆÄ«À̺êµÈ ·Î±×´Â º¹¿øÇÏÁö ¾Ê½À´Ï´Ù.

  6. ¾ÆÄ«À̺êµÈ ·Î±×¸¦ º¹¿øÇØ¾ß ÇÒ ¶§µµ ÀÖ½À´Ï´Ù. »ç¿ë °¡´ÉÇÑ °ø°£ÀÌ ÃæºÐÈ÷ ÀÖÀ¸¸é LOG_ARCHIVE_DEST À§Ä¡·Î º¹¿øÇϰųª SQL ¡°alter system archive log start to <location>¡±, ¶Ç´Â RMAN ¡°set archivelog destination to <location>¡± ¸í·ÉÀ» »ç¿ëÇÏ¿© À§Ä¡¸¦ º¯°æÇϽʽÿÀ.

  7. µ¥ÀÌÅͺ£À̽º¸¦ ¡°set until¡± ¸í·É¿¡ ¸í½ÃµÈ ½Ã°£À¸·Î º¹±¸ÇϽʽÿÀ:
      RMAN> . . . recover database;

  8. ¡°resetlogs¡± ¿É¼ÇÀ» »ç¿ëÇÏ¿© µ¥ÀÌÅͺ£À̽º¸¦ ¿ÀÇÂÇϽʽÿÀ:
      RMAN> . . . sql ¡°alter database open resetlogs¡±; }

  9. Å×À̺íÀÌ Á¸ÀçÇÏ´ÂÁö È®ÀÎÇÑ ÈÄ ¹é¾÷À» ¼öÇàÇϽʽÿÀ.

  10. »ç¿ëÀڵ鿡°Ô µ¥ÀÌÅͺ£À̽º°¡ »ç¿ë °¡´ÉÇÔÀ» ¾Ë¸®°í ½Ã½ºÅÛ¿¡ ¹®Á¦°¡ ¹ß»ýÇϱâ Àü Ä¿¹Ô ÇÏÁö ¾ÊÀº µ¥ÀÌÅ͸¦ ÀçÀÔ·Â Ç϶ó°í ÇÕ´Ï´Ù.

  11. º¹±¸ Ä«Å»·Î±×(Recovery Catalog)¸¦ »ç¿ëÇÏ°í ÀÖÀ¸¸é µ¥ÀÌÅͺ£À̽ºÀÇ »õ incarnationÀ» µî·ÏÇϽʽÿÀ:
      RMAN> reset database;

Backup Manager
¿ÏÀü º¹±¸¿Í À¯»çÇÑ ´Ü°è¸¦ µû¶ó Backup Manager·Î archivelog ¸ðµåÀÎ µ¥ÀÌÅͺ£À̽º¿¡ ´ëÇØ µ¥ÀÌÅÍ ÆÄÀÏÀ» º¹¿øÇÏ°í ºÒ¿ÏÀû º¹±¸¸¦ ¼öÇàÇÒ ¼ö ÀÖ½À´Ï´Ù

ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º·Î µ¥ÀÌÅͺ£À̽º¸¦ º¹¿øÇÏ´Â ¹æ¹ý

ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽ºÀÇ ÀϺΠµ¥ÀÌÅÍ°¡ ÇʼöÀûÀÎ °æ¿ì µ¥ÀÌÅͺ£À̽º¸¦ ÀÌÀü

±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º·Î Àç¼³Á¤ÇÕ´Ï´Ù.

  1. ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º¸¦ ³ª¿­ÇÕ´Ï´Ù. ÇöÀç ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º¿¡ ÁÖ¸ñÇÕ´Ï´Ù.
    RMAN> list incarnation of database;
    List of Database Incarnations
    DB Key  IncKey  DB Name DB ID       CUR Reset  SCN     ResetTime
    ------  ------  ------- ----------  ---------  ------  ----------
         1       2      U37 2220934682  NO         33884   20-MAY-99
         1     165      U37 2220934682  YES        158443  25-MAY-99
     
  2. µ¥ÀÌÅͺ£À̽º¸¦ Á¾·áÇÏ°í ´Ù¸¥ À§Ä¡·Î ÇöÀç µ¥ÀÌÅÍ ÆÄÀÏ ¹× Á¦¾î ÆÄÀÏÀ» À̵¿ÇÕ´Ï´Ù.
    RMAN> shutdown immediate;
    RMAN> host;
    $> mv <datafile> BACKUP
    exit
    RMAN>
     
  3. NOMOUNT »óÅ·ΠÀνºÅϽº¸¦ ½ÃÀÛÇÕ´Ï´Ù.
    RMAN> startup nomount;
     
  4. ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º·Î µ¥ÀÌÅͺ£À̽º¸¦ Àç¼³Á¤ÇÕ´Ï´Ù.
    RMAN> reset database to incarnation 2;
     
  5. ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽º¿¡¼­ Á¦¾î ÆÄÀÏÀ» º¹¿øÇÕ´Ï´Ù.
    RMAN> run {
       2> allocate channel d1 type disk;
       3> restore controlfile; }
     
  6. µ¥ÀÌÅͺ£À̽º¸¦ ¸¶¿îÆ®ÇÕ´Ï´Ù.
    RMAN> alter database mount;
     
  7. µ¥ÀÌÅͺ£À̽º¸¦ º¹¿øÇÕ´Ï´Ù. ÇöÀç »ç¿ë ÁßÀÎ Á¦¾î ÆÄÀÏÀº ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽ºÀÇ Á¦¾î ÆÄÀÏÀ̸ç, ¿©±â¿¡´Â ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽ºÀÇ ¹é¾÷¿¡ ´ëÇÑ Á¤º¸°¡ Æ÷ÇԵ˴ϴÙ. ÀÌÀü ±¸Ã¼È­ µ¥ÀÌÅͺ£À̽ºÀÇ µ¥ÀÌÅÍ ÆÄÀÏ¿¡ ´ëÇÑ ¹é¾÷À» ¿Ã¹Ù¸£°Ô »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö ¿©ºÎ¸¦ È®ÀÎÇÕ´Ï´Ù.
    RMAN> run {
    allocate channel d1 type disk;
    restore database;}
     
  8. µ¥ÀÌÅͺ£À̽º¸¦ º¹±¸ÇÑ ´ÙÀ½ RESTLOGS·Î µ¥ÀÌÅͺ£À̽º¸¦ ¿±´Ï´Ù.
    RMAN> run{
    allocate channel d1 type disk;
    recover database;
    sql "alter database open resetlogs"; }
     
  9. ÇÊ¿äÇÑ µ¥ÀÌÅ͸¦ »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö ¿©ºÎ¸¦ È®ÀÎÇÏ°í »ç¿ëÀÚ¿¡°Ô ¾Ë¸³´Ï´Ù.