ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Oracle] RMAN
    개발/데이터베이스 2022. 1. 17. 00:30

    RMAN이란

    recovery manager의 약자로써 오라클에서 제공하는 백업, 복원, 복구 작업을 수행하고 백업 전략 관리를 자동화 하는 솔루션을 말한다.
    RMAN 기능은 CLI와 GUI를 통해 사용할 수 있다.

     

    RMAN 특징

    • DB전체, Tablespace 단위, Datafile 단위, Archive log, Control files 들을 backup 할 수 있다.
    • 백업을 run 구문으로 script로 묶어서 실행할 수 있다.
    • 증분 백업을 할 수 있다.
    • 사용되어지지 않은 database block들은 skip 한다.
    • 운영중 백업 시 begin backup 구문을 사용 할 필요가 없다.
    • OS의 open file limit을 피하기 위해 open file limit을 지정할 수 있으며, backup의 사이즈의 limit을 줄 수 있다.
    • file당, second 당 reads를 지정해서 부하를 조정할 수 있다.
    • VALIDATE 명령을 통해 Corrupted block을 확인 할 수 있다.

     

    백업 방식

    1. IMAGE COPY 방식 : 현재파일을 그대로 1:1 백업하는 방식
        사용방법 : backup as copy database;

    2. BACKUP SET 방식 : 빈블록을 빼고 모아서 저장하는 방식
        사용방법 : backup as backupset database; 또는 backup database;

    backup files의 이미지화

     

    백업 방법

    백업 전 환경설정

     

    $ RMAN target "' / as sysbackup '"
    
    RMAN> CONFIGURE CONTROLFILE AUTOBACKUP ON;
    
    new RMAN configuration parameters:
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    new RMAN configuration parameters are successfully stored
     
    RMAN> CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/app/oracle/rman/db_ctl_%F';
     
    new RMAN configuration parameters:
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/app/oracle/rman/db_ctl_%F';
    new RMAN configuration parameters are successfully stored
     
    RMAN> CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT '/app/oracle/rman/%d_%U_%T.bk'; 
     
    new RMAN configuration parameters:
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/app/oracle/rman/%d_%U_%T.bk';
    new RMAN configuration parameters are successfully stored
    released channel: ORA_DISK_1

     

    설정된 내용 확인

    RMAN> show all;
     
    RMAN configuration parameters for database with db_unique_name ORCL are:
    CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # default
    CONFIGURE BACKUP OPTIMIZATION OFF; # default
    CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
    CONFIGURE CONTROLFILE AUTOBACKUP ON;
    CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO '/app/oracle/rman/db_ctl_%F';
    CONFIGURE DEVICE TYPE DISK PARALLELISM 1 BACKUP TYPE TO BACKUPSET; # default
    CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
    CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT   '/app/oracle/rman/%d_%U_%T.bk';
    CONFIGURE MAXSETSIZE TO UNLIMITED; # default
    CONFIGURE ENCRYPTION FOR DATABASE OFF; # default
    CONFIGURE ENCRYPTION ALGORITHM 'AES128'; # default
    CONFIGURE COMPRESSION ALGORITHM 'BASIC' AS OF RELEASE 'DEFAULT' OPTIMIZE FOR LOAD TRUE ; # default
    CONFIGURE RMAN OUTPUT TO KEEP FOR 7 DAYS; # default
    CONFIGURE ARCHIVELOG DELETION POLICY TO NONE; # default
    CONFIGURE SNAPSHOT CONTROLFILE NAME TO '/app/oracle/product/19c/dbs/snapcf_orcl.f'; # default

     

    RMAN 백업 (BACKUP SET 방식)

    RMAN> backup database;
     
    Starting backup at 15-JAN-22
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: SID=71 device type=DISK
    channel ORA_DISK_1: starting full datafile backup set
    channel ORA_DISK_1: specifying datafile(s) in backup set
    input datafile file number=00001 name=/app/oracle/oradata/ORCL/system01.dbf
    input datafile file number=00003 name=/app/oracle/oradata/ORCL/undotbs01.dbf
    input datafile file number=00002 name=/app/oracle/oradata/ORCL/sysaux01.dbf
    input datafile file number=00004 name=/app/oracle/oradata/ORCL/users01.dbf
    channel ORA_DISK_1: starting piece 1 at 15-JAN-22
    channel ORA_DISK_1: finished piece 1 at 15-JAN-22
    piece handle=/app/oracle/rman/ORCL_08v4vfou_1_1_20200710.bk tag=TAG20200710T164102 comment=NONE  
    channel ORA_DISK_1: backup set complete, elapsed time: 00:00:07
    Finished backup at 15-JAN-22
     
    Starting Control File and SPFILE Autobackup at 15-JAN-22
    piece handle=/app/oracle/rman/db_ctl_c-1572570942-20220115-02 comment=NONE
    Finished Control File and SPFILE Autobackup at 15-JAN-22

     

    백업 확인 (BACKUP SET 방식)

    RMAN> list backup;
     
     
    List of Backup Sets
    ===================
     
     
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ ---------------
    4       Full    1.62G      DISK        00:00:05     15-JAN-22      
            BP Key: 4   Status: AVAILABLE  Compressed: NO  Tag: TAG20220115T164102
            Piece Name: /app/oracle/rman/ORCL_08v4vfou_1_1_20220115.bk
      List of Datafiles in backup set 4
      File LV Type Ckp SCN    Ckp Time  Abs Fuz SCN Sparse Name
      ---- -- ---- ---------- --------- ----------- ------ ----
      1       Full 2505458    15-JAN-22              NO    /app/oracle/oradata/ORCL/system01.dbf
      2       Full 2505458    15-JAN-22              NO    /app/oracle/oradata/ORCL/sysaux01.dbf
      3       Full 2505458    15-JAN-22              NO    /app/oracle/oradata/ORCL/undotbs01.dbf
      4       Full 2505458    15-JAN-22              NO    /app/oracle/oradata/ORCL/users01.dbf
     
    BS Key  Type LV Size       Device Type Elapsed Time Completion Time
    ------- ---- -- ---------- ----------- ------------ ---------------
    5       Full    10.20M     DISK        00:00:00     15-JAN-22      
            BP Key: 5   Status: AVAILABLE  Compressed: NO  Tag: TAG20220115T164109
            Piece Name: /app/oracle/rman/db_ctl_c-1572570942-20220115-02
      SPFILE Included: Modification time: 15-JAN-22
      SPFILE db_unique_name: ORCL
      Control File Included: Ckp SCN: 2505469      Ckp time: 15-JAN-22

     

    RMAN 백업 (COPY 방식)

    RMAN> backup as copy database;
     
    Starting backup at 15-JAN-22
    using channel ORA_DISK_1
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00001 name=/app/oracle/oradata/ORCL/system01.dbf
    output file name=/app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-SYSTEM_FNO-1_0iv4vg5m_20220115.bk tag=TAG20200710T164750 RECID=12 STAMP=1045414074
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00003 name=/app/oracle/oradata/ORCL/undotbs01.dbf
    output file name=/app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-UNDOTBS1_FNO-3_0jv4vg5t_20220115.bk tag=TAG20200710T164750 RECID=13 STAMP=1045414081
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:07
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00002 name=/app/oracle/oradata/ORCL/sysaux01.dbf
    output file name=/app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-SYSAUX_FNO-2_0kv4vg64_20220115.bk tag=TAG20200710T164750 RECID=14 STAMP=1045414086
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:03
    channel ORA_DISK_1: starting datafile copy
    input datafile file number=00004 name=/app/oracle/oradata/ORCL/users01.dbf
    output file name=/app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-USERS_FNO-4_0lv4vg67_20220115.bk tag=TAG20200710T164750 RECID=15 STAMP=1045414087
    channel ORA_DISK_1: datafile copy complete, elapsed time: 00:00:01
    Finished backup at 15-JAN-22
     
    Starting Control File and SPFILE Autobackup at 15-JAN-22
    piece handle=/app/oracle/rman/db_ctl_c-1572570942-20220115-04 comment=NONE
    Finished Control File and SPFILE Autobackup at 15-JAN-22

     

    백업 확인 (COPY 방식)

    RMAN> list copy;
     
    specification does not match any control file copy in the repository
    specification does not match any archived log in the repository
    List of Datafile Copies
    =======================
     
    Key     File S Completion Time Ckp SCN    Ckp Time        Sparse
    ------- ---- - --------------- ---------- --------------- ------
    12      1    A 15-JAN-22       2511796    15-JAN-22       NO    
            Name: /app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-SYSTEM_FNO-1_0iv4vg5m_20220115.bk
            Tag: TAG20220115T164750
     
    14      2    A 15-JAN-22       2511802    15-JAN-22       NO    
            Name: /app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-SYSAUX_FNO-2_0kv4vg64_20220115.bk
            Tag: TAG20220115T164750
     
    13      3    A 15-JAN-22       2511799    15-JAN-22       NO    
            Name: /app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-UNDOTBS1_FNO-3_0jv4vg5t_20220115.bk
            Tag: TAG20220115T164750
     
    15      4    A 15-JAN-22       2511814    15-JAN-22       NO    
            Name: /app/oracle/rman/ORCL_data_D-ORCL_I-1572570942_TS-USERS_FNO-4_0lv4vg67_20220115.bk
            Tag: TAG20220115T164750

    '개발 > 데이터베이스' 카테고리의 다른 글

    [Oracle] 중복 데이터를 찾는 방법  (0) 2023.02.06
    [Oracle] Select 튜닝 순서  (0) 2022.01.24
    [Oracle] Lock에 대한 정리  (2) 2022.01.10
    [Oracle] Undo(언두)란  (0) 2022.01.03
    [데이터베이스] 집합연산자 정리  (0) 2021.12.16

    댓글

Designed by Tistory.