안녕하세요 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에 백업하는 방법을 알아봤습니다.
감사합니다.
'CLOUD > AWS' 카테고리의 다른 글
AWS Backup 서비스를 사용하여 AWS EFS Backup/Restore 하기 (0) | 2021.05.04 |
---|---|
AWS Chatbot 서비스로 Slack 메세지 받기 (0) | 2021.04.29 |
AWS CLI 사용 시 An error occurred 나올 경우 (0) | 2020.11.17 |