Tibero

게시글 보기
작성자 유건데이타 등록일 2016-01-06
제목 백업기초
백업 형태논리적인 백업
데이터베이스의 논리적인 단위 백업
예) Table, Index, Constraint, Sequence 등으로 Export 툴로 백업
물리적인 백업
데이터베이스를 구성하는 파일을 운영체제 레벨에서 copy명령으로 백업
예) datafile, controlfile, archive logfile
백업 형태
백업 모드NOARCHIVELOG 모드에서의 백업 (Offline Backup / Cold Backup)
데이터베이스를 구성하는 전체 파일에 대해 운영을 멈춘 상태에서 백업
데이터베이스를 백업 받은 시점으로의 복구만 가능 ARCHIVELOG 모드에서의 백업 (Online Backup / Hot Backup))
데이터베이스 운영중에도 백업가능. Controlfile 생성문, Datafile, Archive logfile 백업)
백업된 archive logfile 의 시점에 따라 datafile 백업 시점 이전으로의 복구도 가능 Consistent 백업
정상적인 Shutdown 후의 Backup Inconsistent 백업
DB 운영중에 Backup 또는 정상종료 되지 않은 상태에서의 Backup
NOARCHIVELOG 모드에서는 권장하지 않음백업 모드
Backup Test
Controlfile Backup
Controlfile
데이터베이스의 구조를 이진 파일 형태로 저장 데이터베이스를 mount 할 때 반드시 필요 파일이 없으면 복구를 하거나 재 생성해야 함 두 개 이상의 controlfile로 구성을 권장하고 서로 다른 디스크에 위치시킬 것사용되는 동적 뷰
v$controlfile다중화 방법
데이터베이스를 down (tbdown) Control file을 다른 위치로 copy $TB_SID.tip 파일에서 CONTROL_FILES 파라미터 추가 데이터베이스를 기동 (tbboot)백업방법
Offline backup : O/S의 copy 명령을 통해 별도의 위치에 copy

SQL> ALTER DATABASE BACKUP CONTROLFILE TO TRACE AS
[백업할 파일 경로 및 이름] REUSE NORESETLOGS;

Online Backup
티베로 운영 중 백업(온라인 백업)
ALTER DATABASE 명령으로 테이블스페이스의 Datafile 백업한다.
ARCHIVELOG 모드에서만 사용 가능하다.
Tibero 데이터베이스에 온라인 백업 시작을 알림

SQL> ALTER TABLESPACE SYSTEM BEGIN BACKUP;
OS 명령으로 해당 테이블스페이스의 데이터파일 복사

SQL> !cp /home/tibero/tbdata/system001.tdf /home/tibero/tbdata_bak/system001.tdf
Tibero 데이터베이스에 온라인 백업 종료를 알림

Tibero 데이터베이스에 온라인 백업 종료를 알림
주의사항 : 온라인 백업 중에는 데이터베이스의 변경 사항에 대한 log의 양이 늘어나기 때문에 가능하면 신속하게 작업을 종료할 것
동적 뷰
V$BACKUP : 현재 begin backup으로 인해 backup mode인 상태를 확인한다.

SQL> ALTER TABLESPACE SYSTEM BEGIN BACKUP;

SQL> select * from v$backup;

FILE# STATUS CHANGE# TIME
---------- ---------- ---------- --------------------------------
0 NOT ACTIVE 0
1 NOT ACTIVE 0
2 NOT ACTIVE 0
3 NOT ACTIVE 0

Offline Backup
Tibero 종료 후 백업
Tibero를 정상 종료한 후 OS의 Copy 명령을 이용해 Datafile, Logfile, Controlfile, Tip file등을 백업한다. MOUNT 또는 OPEN 모드에서 v$datafile, v$logfile 뷰를 통해 백업할 파일 정보 조회할 수 있으며, ARCHIVELOG 모드에서는 archive 파일도 백업해야 한다.
V$DATAFILE에서 백업 대상 파일 조회

SQL> select name from v$datafile;

FILE# CREATE_TSN CREATE_DATE TS# RFILE#
---------- ---------- -------------------------------- ---------- ----------
STATUS ENABLED CKPT_TSN CKPT_DATE CREATE_BYTES
------- ---------- ---------- -------------------------------- ------------
NAME
--------------------------------------------------------------------------------
0 1 2009/08/17 0 0
ONLINE READ WRITE 154788 2009/10/14 268435456
/home/tibero/tbdata/system001.tdf

1 9 2009/08/17 1 1
ONLINE READ WRITE 154788 2009/10/14 536870912
/home/tibero/tbdata/undo001.tdf

2 32 2009/08/17 3 2
ONLINE READ WRITE 154788 2009/10/14 134217728
/home/tibero/tbdata/usr001.tdf

3 121654 2009/09/23 4 3
ONLINE READ WRITE 154788 2009/10/14 10485760
/home/tibero/tbdata/my_file001.tdf
V$LOGFILE에서 백업 대상 logfile 조회

SQL> select group#, member from v$logfile;

GROUP# STATUS TYPE
---------- ------- ------
MEMBER
--------------------------------------------------------------------------------
0 ONLINE
/home/tibero/tbdata/redo01.redo
0 ONLINE
/home/tibero/tbdata/redo02.redo
1 ONLINE
/home/tibero/tbdata/redo11.redo
1 ONLINE
/home/tibero/tbdata/redo12.redo
2 ONLINE
/home/tibero/tbdata/redo21.redo
2 ONLINE
/home/tibero/tbdata/redo22.redo
V$CONTROLFILE에서 백업 대상 controlfile 조회

SQL> select name from v$controlfile;

NAME
--------------------------
/home/tibero/tbdata/c1.ctl
/home/tibero/tbdata/c3.ctl
티베로를 정상 종료

$ tbdown
File copy (앞에서 조회한 모든 파일을 copy 한다.

$ cp /home/tibero/tbdata/*.tdf /home/tibero/tbdata_bak/
$ cp /home/tibero/tbdata/*.tdf /home/tibero/tbdata_bak/
$ cp /home/tibero/tbdata/*.redo /home/tibero/tb data_bak/
$ cp /home/tibero/tbdata/*.ctl /home/tibero/tbdata_bak/
또는
$ cp /home/tibero/tbdata/*.* /home/tibero/tbdata_bak/


출처 : 디비가이드넷
Comment
등록된 코멘트가 없습니다.