가동 중지 시간을 최소화하고 데이터베이스 가용성을 높이는 것은 모든 비즈니스가 달성하고자 하는 필수 목표입니다. 데이터베이스 관리자(DBA)는 데이터 파일이나 완전한 데이터베이스 손상 오류가 발생한 경우 더 빠른 복구 솔루션을 제공할 수 있는 새로운 방법을 항상 찾고 있습니다. 버전 10g부터 Oracle® Recovery Manager(RMAN)는 IncrementalMerge Backups(IMB)라는 기능을 제공합니다. 이 기능은 특히 초대형 데이터베이스(VLDB)의 경우 복구 시간을 최소화하는 솔루션을 제공합니다.
소개
올바른 옵션으로 구성하면 IMB 기능을 통해 데이터베이스 복구 시간을 크게 줄일 수 있습니다. 널리 사용되지는 않지만 이 기능은 VLDB에 이상적인 백업 방법입니다. 데이터 파일의 이미지 복사본이 생성되고 각 백업 작업 후에 이미지 복사본을 롤포워드하는 증분 백업이 적용됩니다.
이 게시물은 IMB 사용에 대한 몇 가지 고려 사항을 강조하고 프로세스를 설명하는 샘플 코드를 제공하며 여러 복구 시나리오를 보여줍니다.
고려사항
이미지 복사본 백업 전략을 사용하기 전에 다음 고려 사항에 유의하십시오.
-
데이터베이스에서 블록 변경 추적(BCT)을 활성화해야 합니다.
-
데이터베이스 데이터 파일이 실제로 사용하고 있는 데이터베이스의 이미지 복사본을 저장하려면 동일한 양의 디스크 공간이 필요합니다.
-
특정 시점 복구(PITR)의 경우 최소 하나의 전체 백업이 있어야 하며 데이터베이스 복구가 완료될 때까지 로그를 아카이브해야 합니다.
-
데이터베이스의 이미지 복사본은 데이터베이스 복사본으로 전환하는 동안 성능에 영향을 미치지 않도록 입출력(I/O) 측면에서 동일한 유형의 저장소에 있어야 합니다.
다음 이미지는 증분 업데이트된 백업을 보여줍니다.
샘플 코드
다음 코드를 실행하여 매일 이미지를 복사하고 점진적으로 업데이트하십시오.
run
{
allocate channel c1 device type disk format ‘/home/oracle/backup/%U’;
recover copy of database with tag ‘IMG_COPY’;
backup incremental level 1 for recover of copy with tag ‘IMG_COPY’ database;
release channel c1;
}
첫 번째 실행 시 recover copy of database
명령은 아무 작업도 수행하지 않습니다. backup incremental
명령은 새로운 증분 level 0
을 생성합니다. 백업 태그 IMG_COPY
이 태그로 생성되는 첫 번째 백업이기 때문입니다.
두 번째 실행 시 recover copy of database
명령은 INC 1
을 찾을 때까지 아무 작업도 수행하지 않습니다. 백업. backup incremental
명령은 INC 1
을 생성합니다. 백업.
세 번째 및 후속 실행에서 recover command
마지막으로 사용 가능한 INC 1
적용 기존 이미지 복사본에 백업합니다. backup command
다음 INC 1
생성 백업.
복구 시나리오
다음 사용 사례는 증분 병합 백업이 무관한 복구 상황을 어떻게 지원하는지 설명합니다.
사례 1:데이터 파일 손상, 삭제 또는 덮어쓰기
다음 코드와 같이 테스트용 테이블을 만들고 앞의 스크립트를 사용하여 이미지 복사본을 만듭니다.
SQL> create table ImgCpyTab tablespace tbs2 as select * from dba_objects;
Table created.
FILE_NAME FILE_ID TABLESPACE_NAME
————————- ——————— ———————————————
/home/oracle/Sw/oradata/test/tbs02.dbf 5 TBS2
SQL> select count(1) from ImgCpyTab;
COUNT(1)
———-
72476
이 시나리오를 테스트하려면 다음 코드와 같이 물리적 데이터 파일을 의도적으로 이동하고 select
명령이 예상한 오류를 발생시킵니다.
mv /home/oracle/Sw/oradata/test/tbs02.dbf /home/oracle/Sw/oradata/test/tbs02.dbf_BKP
select count(1) from scott.IMGCPYTAB
*
ERROR at line 1:
ORA-01116: error in opening database file 5
ORA-01110: data file 5: ‘/home/oracle/Sw/oradata/test/tbs02.dbf’
ORA-27041: unable to open file
Linux Error: 2: No such file or directory
Additional information: 3
이 경우 물리적 파일을 복원할 필요가 없습니다. 대신 백업으로 전환하고 복구하십시오. 데이터 파일이나 데이터베이스 크기가 테라바이트인 경우에도 매우 빠릅니다.
다음 코드는 데이터 파일을 오프라인 모드로 전환합니다.
SQL> alter database datafile 5 offline;
Database altered.
다음으로 데이터 파일을 복사본으로 전환하고 복구합니다.
[oracle@localhost backup]$ rman target /
Recovery Manager: Release 11.2.0.2.0 – Production on Thu Jun 5 18:17:15 2014
Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved.
connected to target database: TEST (DBID=2122535405)
RMAN> switch datafile 5 to copy;
using target database control file instead of recovery catalog
datafile 5 switched to datafile copy “/home/oracle/backup/data_D-TEST_I-2122535405_TS-TBS2_FNO-5_6ppa3ev1”
RMAN> recover datafile 5;
Starting recover at 05-JUN-14
allocated channel: ORA_DISK_1
channel ORA_DISK_1: SID=19 device type=DISK
allocated channel: ORA_DISK_2
channel ORA_DISK_2: SID=149 device type=DISK
starting media recovery
media recovery complete, elapsed time: 00:00:01
Finished recover at 05-JUN-14
RMAN> sql ‘alter database datafile 5 online’;
sql statement: alter database datafile 5 online
RMAN> exit
다음 코드에서 볼 수 있듯이 날짜 파일이 돌아가고 테이블에 액세스할 수 있습니다.
FILE_NAME FILE_ID TABLESPACE_NAME
————————- ——————— ———————————————
TBS2 /home/oracle/backup/data_D-TEST_I-2122535405_TS-TBS2_FNO-5_6ppa3ev1 AVAILABLE
SQL> select count(1) from scott.IMGCPYTAB;
COUNT(1)
———-
72476
참고: file_name
열을 보면 데이터베이스가 이미지 복사 파일을 사용하고 있음을 알 수 있습니다.
사례 2:전체 데이터베이스 손상 또는 디스크 오류
데이터베이스가 완전히 손상되었거나 디스크 오류가 있는 경우 다음 단계를 사용하여 데이터베이스를 복사본으로 전환할 수 있습니다.
- 데이터베이스를 종료합니다.
- 제어 파일이 없으면 복원하십시오.
- 이미지 사본을 카탈로그화합니다.
- 데이터베이스를 복사본으로 전환합니다.
- 아카이브를 사용할 수 있을 때까지 복구한 다음 데이터베이스를 엽니다.
결론
이 게시물에서는 RMAN 이미지 복사본 백업 및 복구 기능을 사용하는 방법에 대해 설명했습니다. 또한 물리적 손상이 발생한 경우 데이터 파일 및 데이터베이스의 구현 및 복구를 위한 몇 가지 사용 사례를 제공했습니다. 증분 병합 백업 기능은 데이터베이스 백업을 단순화하고 빠르고 유연한 데이터 복구를 보장합니다.
피드백 탭을 사용하여 의견을 남기거나 질문하십시오.