줄기세포

[Tibero] 백업 & 복구 본문

DB/Tibero

[Tibero] 백업 & 복구

줄기세포(Stem_Cell) 2022. 2. 7. 17:29

1. Tibero 파일 구성

- Control file (컨트롤 파일)

- Datafile (데이터 파일)

- Tempfile (임시 파일)

- Logfile (로그 파일)

 

2. Boot Mode

부트 모드 Nomount -> Mount -> Normal
오픈 파일  - 오픈된 파일 없음
 - 생성할 수 있음:
        Control file
        Database

- 언제나 복구 가능
- 부팅 중 Control file에 문제가
  있으면 Nomount로 기동

  - Control file 오픈상태
- Datafile, Online Redo Log file,
  Control file 간 상태 검사하여
  Tibero 기동 준비

- Mount 모드에서는
  미디어 복구 수행 가능

- MOUNT 모드는 제한된  제공
    V$LOGFILE
    V$CONTROLFILE
    V$LOG
    V$RECOVER_FILE
    V$RECOVERY_FILE_STATUS
  - 모든 파일 오픈
- Datafile, Control file,
Online Redo LogfILE
등 일관성 유지되면
Open 가능

 

3. 백업 (Backup)

백업의 종류

- 논리적 백업:  데이터베이스의 논리적 단위로 백업. Tibero에서는 'tbexport  / tbimport 유틸리티'를 제공중

- 물리적 백업:  OS의 cp명령어로 복사(백업). Cold Backup과 Hot Backup으로 나누어짐.

    ARCHIVELOG모드     -> Hot Backup (Online Backup, Inconsistent Backup)

    NOARCHIVELOG모드 -> Cold Backup (Offline Backup, Consistent Backup)

Hot Backup (Online Backup) - ARCHIVELOG Cold Backup (Offline Backup) - NOARCHIVELOG
  - 운영중에 백업
  - Controlfile 생성문, Datafile, ArchiveLog 파일
  - 정상 종료된 상태에서 백업
  - Datafile,  Control file, RedoLog file

3-1. Hot Backup 과정 요약

     * Tablespace와 해당되는 Datafile 조회

       SQL> select 

                 ts.name tablespace_name,

                 df.name datafile_name

                from v$tablespace as ts

                join v$datafile as df

                on ts.ts# = df.ts#

 

     * Tablespace에 백업시작을 알리고 해당되는 Datafile을 cp로 복사한다.

       Begin backup 시작전 / End backup 끝난 후 에 log switch를 진행해준다.

        SQL> alter system switch logfile;

        SQL> alter tablespace [tablespace_name] begin backup;

        SQL> !cp [datafile] [복사할 경로]

 

     * Datafile복사가 끝나면 신속시 End Backup을 찍는다.

       Begin Backup시 Online Redo Log가 급격히 늘어나기 때문에 작업이 끝나면 신속히 End Backup을 찍는다.

        SQL> alter tablespace [tablespace_name] end backup;

        SQL> alter system switch logfile;

 

      SQL> 

      SQL> 

      SQL> 

 

3-2. Cold Backup

 

 

4. 복구 (Recovery)

4-1. 복구 종류

    4-1-1. 파손 복구(Crash Recovery)

 

             Kill 당했을 때, DB server가 자동으로 복구하는 과정

 

    4-1-2. 미디어 복구(Media Recovery

 

       A. 완전 복구

           가장 최근 로그 파일 내용까지 모두 적용한 복구. (복구 시점을 정할 수 없음.)

 

       B. 불완전 복구 : 일반적으로 우리가 생각하는 복구

        -> 불완전 복구시에는 꼭 resetlogs 해야하며, 이전에 백업받은 것은 사용이 불가.

            복구 시점을 명시적으로 지정할 수 있음. TSN값 혹은 시간

            - Time Base Recovery

            - Change Base Recovery (TSN 기반 복구)

            - Cancel Base Recovery (redo log 기반 복구)

               * tbrmgr은 Time Base와 Change Base Reocvery 지원

           복구 방법은 DF, CF, REDO 등 여러 가지 가능성이 있고, 복구 방법도 많음

           티베로의 경우 아래 경로에서 명령어 참조:

          https://technet.tmaxsoft.com/upload/download/online/tibero/pver-20150504-000001/index.html

          [티베로 온라인 매뉴얼] - Tibero SQL 참조 안내서 - 7.데이터정의어 - 7.2. ALTER DATABASE

4-2. 자동복구 예시

alter database backup controlfile to trace as '[경로/파일명]' reuse resetlogs;
tbdown immediate

기존에 사용하던 컨트럴파일 이름변경
c1.ctl -> c1.ctl_bak

tbboot nomount
tbsql sys/tibero
@[백업받은 컨트럴파일]
tbdown immediate

tbboot mount
alter database recover automatic;
tbdown immediate

tbboot

 

 

Comments