Oracle RMAN  ->  AWS S3 백업하기
CLOUD/AWS

Oracle RMAN -> AWS S3 백업하기

안녕하세요 Y입니다.

오늘은 Oracle RMAN을 이용하여 AWS S3에 백업하는 방법을 알아보겠습니다.

 

Oracle RMAN 이란?

RMAN은 Recovery Manager의 약자로 Oracle 데이터베이스에 제공되는 백업 및 복구 설루션입니다.

 

 

 

 

0. 사전 작업

  -  Oracle DB 서버(리눅스) Oracle 계정으로 로그인 (root 계정 로그인 시 Oracle 계정으로 Switch User)

  -  서버에 java 설치 여부 확인 

  -  AWS S3 권한이 있는 IAM 생성 (ACCESS KEY, SECRET KEY) 및 백업 파일이 저장될 S3 Bucket 생성 (생략)

  -  Oracle Technical Network 가입 http://otn.oracle.com

  -  osbws_install.jar 파일 다운로드 https://www.oracle.com/database/technologies/secure-backup-s3.html

  -  Oracle DB 서버에 osbws_install.jar 파일 $ORACLE_HOME/lib 경로에 업로드(SFTP, SCP 등으로)

  -  $ORACLE_HOME/dbs에 osbws_wallet 디렉터리 생성

 

$ cd $ORACLE_HOME/dbs
$ mkdir osbws_wallet

 

 

 

1. osbws_install.jar 설치

 

 

$ java -jar osbws_install.jar -AWSID "AWS ACCESS KEY" -AWSKey "AWS SECRET KEY" -walletDir $ORACLE_HOME/osbws_wallet -libDir $ORACLE_HOME/lib -location ap-northeast-2 -awsEndPoint  s3-ap-northeast-2.amazonaws.com  -otnUser "OTN가입메일주소" -otnPass "OTN 패스워드"

 

 

 

 

2. osbwsORCL.ora 파일 정보 수정

위의 설치가 정상적으로 완료가 되었다면 $ORACLE_HOME/dbs 경로에 osbwsORCL.ora 파일이 있습니다.

 

 

vim $ORACLE_HOME/dbs/osbwsORCL.ora
OSB_WS_HOST=http://s3-ap-northeast-2.amazonaws.com
OSB_WS_LOCATION=ap-northeast-2
OSB_WS_WALLET='location=file:/oracle/app/oracle/product/11.2.0/osbws_wallet CREDENTIAL_ALIAS=s3_aws'
OSB_WS_BUCKET="aws 버킷명"

 

 

 

3. RMAN 백업 수행 

 - RMAN 접속

 

rman target=/

 

 

- 데이터베이스 백업 스크립트 실행

 

RUN 
{ 
 allocate channel ch1 device type sbt 
 parms='SBT_LIBRARY=/oracle/app/oracle/product/11.2.0/lib/libosbws11.so,ENV=(OSB_WS_PFILE=/oracle/app/oracle/product/11.2.0/dbs/osbwsORCL.ora)'; 
 backup database; 
}

 

 

* DB 용량에 따라 백업 시간이 달라질 수 있습니다.

 

4. S3 백업 정상 확인

 콘솔에서 확인

* file_chunk/ -> DB 백업 본을 Chunk로 쪼개져서 저장된다

* sbt_catalog/ -> sbt_catalog metadata가 저장된다.

 

 

이상으로 Oracle RMAN으로 AWS S3에 백업하는 방법을 알아봤습니다.

 

감사합니다.