본문 바로가기
Database Learning Guide

오라클 11에서 아카이브로그을 이용해 데이터 복구하는 방법 설명해줘

by Andrew's Akashic Records 2023. 3. 3.
728x90

오라클 데이터베이스에서는 아카이브 로그(Archive Log)를 이용하여 데이터 손실을 방지하고 데이터 복구를 지원합니다. 아카이브 로그는 데이터베이스 변경 작업이 수행될 때마다 생성되며, 이전에 생성된 로그 파일들은 아카이브 된 로그 파일로 저장됩니다. 이를 이용하여 장애 발생 시 마지막 아카이브 로그 파일부터 이전 로그 파일까지 순차적으로 읽어가며 데이터를 복구할 수 있습니다.

 

아래는 오라클 11에서 아카이브 로그를 이용해 데이터 복구하는 방법입니다.

 

1. 데이터베이스 종료
복구를 위해 우선적으로 데이터베이스를 종료합니다.

SHUTDOWN IMMEDIATE;

2. 아카이브 로그 파일 복사
아카이브 로그 파일은 보통 $ORACLE_HOME/dbs/arch 디렉토리에 저장됩니다. 복구를 위해 이전 아카이브 로그 파일들을 백업하고, 마지막 아카이브 로그 파일을 임시 디렉토리에 복사합니다.

$ cp $ORACLE_HOME/dbs/arch/* /tmp/archive_logs/

3. 복구 모드로 데이터베이스 시작
복구 모드로 데이터베이스를 시작합니다. 복구 모드에서는 아카이브 로그 파일들을 읽어오기 위해 임시 디렉토리를 설정합니다.

STARTUP MOUNT;

4. 아카이브 로그 파일 임시 디렉토리 설정
복구 모드에서 아카이브 로그 파일들을 읽어오기 위해 임시 디렉토리를 설정합니다.

ALTER SYSTEM SET LOG_ARCHIVE_DEST_1='LOCATION=/tmp/archive_logs';

5. 복구 작업 수행
복구 작업을 수행합니다. 아래는 마지막 아카이브 로그 파일부터 이전 로그 파일까지 순차적으로 읽어가며 데이터를 복구하는 명령어입니다.

RECOVER DATABASE;

6. 데이터베이스 열기
복구가 완료되면 데이터베이스를 열고 정상적으로 사용할 수 있도록 합니다.

ALTER DATABASE OPEN;

위와 같은 방법을 이용하여 아카이브 로그를 이용해 데이터 복구 작업을 수행할 수 있습니다. 단, 이 작업은 데이터베이스 관리자나 전문가 수준의 지식이 필요하므로 신중하게 수행해야 합니다.

728x90