Oracle용 RMAN 압축 백업을 구성하고 사용하는 방법은?

Oracle 백업은 빠르게 증가하며, 압축은 저장 공간과 대역폭을 절감합니다. 이 문서에서는 RMAN의 내장된 BASIC, LOW, MEDIUM, HIGH 수준, 외부 방법, 설정 단계, 그리고 CPU와 저장 공간의 균형을 맞추는 최선의 방법들을 다룹니다.

download-icon
무료 다운로드
for VM, OS, DB, File, NAS, etc.
minjae-han

업데이트 한민재 현재 2025/08/21

목차
  • RMAN 백업이란?

  • 외부 압축이 RMAN 백업에 적합한가요?

  • RMAN 백업 압축 유형

  • RMAN 명령어로 Oracle 백업을 압축하는 방법은?

  • RMAN 백업 압축 모범 사례

  • Vinchin으로 오라클 백업을 압축하는 방법?

  • RMAN 백업 압축 FAQ

  • 결론

백업은 데이터를 안전하게 보호하지만 저장소 및 네트워크 리소스도 소비합니다. Oracle의 RMAN은 공간 절약과 CPU 사용 간 균형을 맞출 수 있는 내장 압축 기능을 제공하며, 필요시 OS 수준의 압축을 적용할 수도 있습니다. 이 문서에서는 RMAN 압축이 무엇인지, 외부 방법을 선택해야 할 시점, Oracle 버전별 압축 수준 설정 방법, 실제 성능 향상을 위한 모범 사례, 그리고 압축된 백업을 모니터링하고 문제를 해결하는 방법에 대해 알아보겠습니다.

RMAN 백업이란?

RMAN(Recovery Manager)은 전체, 증분 및 아카이브 로그 백업을 위한 Oracle의 기본 도구로, 컨트롤 파일 또는 복구 카탈로그에서 일관성 검사 및 메타데이터 카탈로그 작업을 자동화합니다. RMAN은 변경된 블록을 추적하여 이진 압축이 적용되기 전에 널-블록 및 사용되지 않은 블록 압축과 같은 블록 수준 작업을 수행할 수 있습니다. RMAN은 테이프 장치, Oracle Secure Backup, 클라우드 서비스와 통합되며 암호화 및 복구를 간소화하기 위한 보존 정책을 지원합니다.

가장 기본적으로는 RMAN에 연결하고 다음을 실행합니다:

RMAN> BACKUP DATABASE;

구성된 경우 데이터 파일, 제어 파일 및 보관 로그의 백업 세트를 생성하며, 자동으로 일관성을 처리합니다.

객체 또는 모드별로 백업을 맞춤화할 수도 있습니다. 예를 들어, 하나의 명령어로 특정 테이블스페이스 및 아카이브 로그를 백업할 수 있습니다:

RMAN> BACKUP TABLESPACE users, temp PLUS ARCHIVELOG;

이렇게 하면 불필요한 테이블스페이스를 제외시켜 저장공간을 절약할 수 있으며, 시점 복구에 필요한 로그들이 포함되도록 보장합니다.

고급 시나리오의 경우 다음을 사용하십시오:

  • BACKUP AS COMPRESSED BACKUPSET 바이너리 압축 시 사용

  • 사본으로 백업 - 이미지 사본의 경우

  • 백업 ... 장치 유형 sbt를 대상 테이프 라이브러리로 설정.
    복잡한 보관 기간 윈도우를 스크립트로 작성할 수 있으며, CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 7 DAYS 명령을 사용하고, 더 이상 필요하지 않은 백업의 자동 정리를 수행할 수 있습니다.

외부 압축이 RMAN 백업에 적합한가요?

외부 압축이란 gzip, bzip2 또는 zip과 같은 OS 도구를 통해 RMAN의 비압축 출력을 통과시키는 것을 의미합니다. 이 방법은 Oracle Advanced Compression 라이선스가 없거나 CPU 작업을 다른 호스트로 오프로드하려는 경우에 사용할 수 있습니다. 예를 들어, 다음과 같은 방법을 사용할 수 있습니다:

rman target / <<EOF | gzip > backup.rman.gz
BACKUP DATABASE;
EOF

그러나 파이핑은 복구 전에 압축 해제 단계를 추가하므로 복원이 지연되고 RMAN의 블록 인식 최적화가 빈 블록 축소를 방해받게 됩니다. 널 블록 및 사용되지 않은 블록 압축 기능을 상실하게 되며, 암호화 이후에 압축을 적용할 경우 네트워크 대역폭이 증가할 수도 있습니다.

RMAN 백업 압축 유형

RMAN은 두 가지 압축 범주를 지원합니다: 기본 BASIC 알고리즘(추가 라이선스 없음)과 고급 압축 옵션의 LOW, MEDIUM, HIGH 수준입니다. 압축을 영구적으로 활성화할 수 있습니다:

RMAN> CONFIGURE COMPRESSION ALGORITHM 'MEDIUM';
RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;

또는 단회성 백업의 경우:

RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG;

압축 수준 개요

다음 표는 각 수준을 요약합니다:

LevelLicense RequiredCPU ImpactCompression RatioBest For
BASIC아니요중간중간고급 압축 옵션이 없는 환경
LOW낮음낮음CPU 리소스가 제한된 시스템에서 빠른 백업
MEDIUM중간높음균형 잡힌 작업 부하 및 클라우드 백업
HIGH높음매우 높음비 peak 시간대의 저장 공간이 중요한 백업

사전 압축 블록 처리

바이너리 압축 이전에 RMAN은 조각화된 테이블스페이스에서 효율을 개선하기 위해 블록 내의 여유 공간을 0으로 초기화할 수 있습니다(OPTIMIZE FOR LOAD FALSE). 널-블록 압축은 한 번도 기록되지 않은 블록을 건너뛰고, 사용되지 않은 블록 압축은 할당되었으나 비어 있는 블록을 제외시킵니다. 두 작업 모두 선택된 바이너리 알고리즘 적용 전에 수행되어 추가 라이선스 비용 없이 최대한의 공간 절약 효과를 얻습니다.

RMAN 명령어로 Oracle 백업을 압축하는 방법은?

다양한 숙련도를 위한 단계별 안내 사항은 다음과 같습니다.

기본 Oracle 데이터베이스 압축

먼저, 기본 알고리즘을 설정하십시오:

RMAN> 압축 알고리즘 'BASIC'으로 구성;

그런 다음 디스크에서 활성화합니다:

RMAN> CONFIGURE DEVICE TYPE DISK BACKUP TYPE TO COMPRESSED BACKUPSET;

마지막으로 다음을 실행하십시오:

RMAN> BACKUP DATABASE;

기본적으로 BASIC 압축을 사용하여 고급 압축 라이선스 없이도 상당한 저장 공간 절약 효과를 얻을 수 있습니다.

단일 압축 백업

기본값을 변경하지 않고 단일 압축 백업을 실행하려면 다음을 실행하십시오:

RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE PLUS ARCHIVELOG;

MEDIUM 또는 HIGH를 지정하려면:

RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE COMPRESSED FOR MEDIUM;

(참고: COMPRESSED FOR 구문은 Oracle 12.2, 18c, 19c 및 이후 버전에서 지원됩니다).

고급 Oracle 데이터베이스 압축

여유 공간 제로화를 포함하려면:

RMAN> SET OPTIMIZE FOR LOAD FALSE;
RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE;

세션 중에 압축 수준을 변경하려면:

RMAN> SET COMPRESSION ALGORITHM 'HIGH';
RMAN> BACKUP AS COMPRESSED BACKUPSET DATABASE;

CPU 사용량과 시간을 고려하여 OLTP 또는 배치 작업에 적합한 최적의 수준을 선택하십시오.

RMAN 백업 압축 모범 사례

효율적인 압축은 테스트 및 모니터링을 통해 이루어집니다:

  • 운영 전 스테이징에서 각 레벨을 테스트하십시오.

  • 혼합 워크로드에는 MEDIUM을 사용하고, 비성수기 아카이브에는 HIGH를 예약하십시오.

  • 데이터 집약적인 부하에서는 LOW 사용을 피하십시오. 비율이 낮아 CPU 사용량이 적다 하더라도 정당화되지 않을 수 있습니다.

  • 사용자 활동이 적은 시간대에 HIGH로 실행 일정을 예약합니다.

  • 전체 백업 빈도를 제한하기 위해 증분 백업과 함께 사용하십시오.

    항상 다음을 사용하여 모니터링합니다:

    SELECT set_count,
           compression_level,
           compressed_bytes,
           uncompressed_bytes
      FROM V$BACKUP_SET
     WHERE compression_level = 'MEDIUM';
  • 높은 CPU 사용률을 V$SESSION_LONGOPStop, pidstat, iostat 같은 OS 도구로 진단하여 부하 급증을 유발하는 RMAN 채널을 확인하십시오.

암호화 전에 압축을 수행하면 전체 처리량이 향상됩니다. 압축을 설정한 후 CONFIGURE ENCRYPTION FOR DATABASE ON을 설정하십시오.

Vinchin으로 오라클 백업을 압축하는 방법?

이제 강력한 기업용 솔루션을 살펴보겠습니다. Vinchin는 Oracle, MySQL, SQL Server, MariaDB, PostgreSQL 및 PostgresPro를 포함한 오늘날 주요 데이터베이스를 지원하는 전문적인 기업용 데이터베이스 백업 솔루션입니다.

Vinchin의 데이터베이스 보호 기능에는 클라우드 백업 및 테이프 아카이빙, 전체 백업, 증분 백업 및 로그 백업, Oracle 및 PostgreSQL를 위한 아카이브 로그 백업, 소스 사이드 Oracle 데이터 압축 및 중복 제거 기능이 있는 예약 백업, 랜섬웨어 보호가 포함됩니다.

Vinchin 웹 콘솔은 간단하고 직관적입니다. Oracle 데이터베이스를 백업하려면 일반적으로 다음과 같이 진행합니다:

1. 백업할 데이터베이스 선택

Oracle 데이터베이스 선택

2. 백업 저장소 선택

백업 저장소 선택

3. 백업 전략 정의 (전체, 증분, 일정, Oracle 압축)

백업 전략 선택

4. 작업 제출

제출하기

Vinchin은 최고의 평가를 받으며 전 세계 고객에게 서비스를 제공합니다. 60일 동안 모든 기능을 무료로 체험해 보세요—버튼을 클릭하여 몇 분 안에 다운로드 및 설치가 가능합니다.

RMAN 백업 압축 FAQ

Q1. 압축된 백업을 어떻게 복원하나요?
CATALOG START WITH '/path/to/backup'; RESTORE DATABASE; RECOVER DATABASE; 명령을 RMAN에서 사용하여 백업을 등록하고 적용하십시오.

Q2. 압축 수준을 중간에 변경할 수 있나요?
아니요. RMAN은 백업 시 지정한 압축 수준을 적용하며 해당 백업 세트에 대해 그 수준을 유지합니다.

Q3. RMAN 압축이 복구 시간에 영향을 주나요?
네. 복구 시 더 높은 압축 수준일수록 CPU 사용량이 증가하므로 복구 시간 목표에 맞게 균형을 맞추어야 합니다.

Q4. 암호화된 백업과 함께 압축을 사용할 수 있나요?
예; 압축을 먼저 구성한 후 암호화를 활성화하여 암호화된 데이터 크기를 최소화합니다.

Q5. 압축 효과를 어떻게 확인합니까?
V$BACKUP_SET 또는 V$BACKUP_PIECE를 조회하여 COMPRESSED_BYTESUNCOMPRESSED_BYTES 비율을 비교하면 됩니다.

결론

RMAN의 내장 압축 기능은 BASIC부터 HIGH까지 저장 공간 절약과 CPU 사용 사이의 균형을 세밀하게 조정할 수 있게 해줍니다. 또한 블록 수준의 최적화 혜택도 받을 수 있습니다. 외부 압축은 라이선스가 없을 때 부족한 부분을 채울 수 있지만 복잡성이 증가합니다. 실제 부하 조건에서 각 단계별로 테스트를 수행하고 CPU 및 처리량 메트릭을 모니터링해야 하며, 효율 극대화를 위해 암호화 전에 압축을 적용해야 합니다. 이러한 방법을 통해 신뢰할 수 있고 공간 효율적인 백업을 구현하여 복구 목표에 부합할 수 있습니다.

공유하기:

카테고리: Database Backup