본문 바로가기
Database Learning Guide

노-아카이브와 아카이브 모드 변환

by Andrew's Akashic Records 2025. 3. 31.
728x90

아카이브 로그 모드를 활성화

아카이브 로그 모드(ARCHIVELOG mode)로 설정하면, 온라인 백업 및 포인트 인 타임 복구(Point-in-time recovery)가 가능해져서 운영 시스템에 필수적인 설정입니다.

Oracle 데이터베이스에서 아카이브 로그 모드를 활성화하려면 아래의 단계를 따르면 됩니다. 이 작업은 DBA 권한이 있는 사용자가 수행해야 합니다. 아래의 절차는 SQL*Plus 또는 SQL Developer와 같은 도구에서 실행할 수 있습니다.

1. 먼저, 데이터베이스 인스턴스를 중지해야 합니다.

sqlplus / as sysdba

SHUTDOWN IMMEDIATE;

 

2. 이제 데이터베이스를 마운트 상태로 시작합니다.

STARTUP MOUNT;

 

3. 다음으로, 아카이브 로그 모드를 활성화합니다.

ALTER DATABASE ARCHIVELOG;

4. 마지막으로, 데이터베이스를 다시 열어 정상 작동하도록 합니다.

ALTER DATABASE OPEN;

 

5. 아카이브 로그 위치 확인

SHOW PARAMETER log_archive_dest;

예시 결과)
log_archive_dest_1    string    LOCATION=/u01/app/oracle/archivelog

 

필요시 아카이브 로그 위치 바꾸기

ALTER SYSTEM SET log_archive_dest_1='LOCATION=/u02/oracle/archivelog' SCOPE=SPFILE;

6. 설정 확인

ARCHIVE LOG LIST;

예시 결과)
Database log mode              Archive Mode
Automatic archival             Enabled
Archive destination            /u02/oracle/archivelog

 

이제 Oracle 데이터베이스는 아카이브 로그 모드로 작동하게 됩니다. 이 모드에서는 모든 트랜잭션 로그가 아카이브되므로, 데이터 복구가 가능합니다. 아카이브 로그 모드는 장애 상황에서 데이터를 복구하는 데 필요하므로, 일반적으로 운영 환경에서는 이 모드를 사용하는 것이 좋습니다.

아카이브 로그 모드를 해지

Oracle 데이터베이스에서 아카이브 로그 모드를 해지하려면 아래의 단계를 따르면 됩니다. 이 작업은 DBA 권한이 있는 사용자가 수행해야 합니다. 아래의 절차는 SQL*Plus 또는 SQL Developer와 같은 도구에서 실행할 수 있습니다.

1. 먼저, 데이터베이스 인스턴스를 중지해야 합니다.

SHUTDOWN IMMEDIATE;

2. 이제 데이터베이스를 마운트 상태로 시작합니다.

STARTUP MOUNT;

3. 다음으로, 아카이브 로그 모드를 해지합니다.

ALTER DATABASE NOARCHIVELOG;

4. 마지막으로, 데이터베이스를 다시 열어 정상 작동하도록 합니다.

ALTER DATABASE OPEN;

이제 Oracle 데이터베이스는 아카이브 로그 모드가 아닌 NOARCHIVELOG 모드로 작동하게 됩니다.

그러나 이렇게 설정하면 트랜잭션 로그가 아카이브되지 않으므로, 데이터 복구가 불가능해질 수 있습니다. 따라서, 이 작업은 데이터 손실의 위험을 이해하고 수행해야 합니다.

 

728x90