클라우드 스토리지는 손쉬운 접근성, 높은 중복성과 복제 기능, 비용 절감을 위한 다양한 스토리지 계층화 옵션 덕분에 최근 각광받고 있습니다. 이러한 장점을 고려할 때, 클라우드 스토리지를 활용해 Oracle® Database 백업을 보관할 수 있습니다. 특히 오프사이트(off-site)에 백업 사본을 보관하면 재해 복구 대비 측면에서도 큰 이점이 있으므로, Oracle 데이터베이스 백업을 클라우드 스토리지에 저장하는 것은 매우 합리적인 선택입니다.
개요
Oracle Recovery Manager(RMAN) 백업을 구성하여 Oracle 데이터베이스 백업을 클라우드 오브젝트 스토리지에 직접 저장할 수 있습니다. 이 글에서는 온프레미스 Oracle 데이터베이스의 RMAN 백업을 구성하여 백업을 생성하고 Oracle Cloud Infrastructure(OCI) Object Storage로 직접 전송하는 방법을 살펴봅니다.
ODBCS를 활용한 백업 수행
클라우드 스토리지에 Oracle Database 백업을 수행하려면 Oracle Database Backup Cloud Service(ODBCS)를 사용해야 합니다. ODBCS는 Oracle 데이터베이스를 Oracle Cloud에 백업하기 위한 안전하고 확장 가능한 온디맨드 스토리지 솔루션입니다. 이 글에서는 Oracle 데이터베이스 백업을 수행하고 Oracle Database Backup Cloud Service를 통해 클라우드 오브젝트 스토리지로 전송하는 다음 단계를 다룹니다.
- ODBCS 구독
- Oracle Database Cloud Backup 모듈 다운로드 및 설치
- 환경에 맞게 RMAN 설정을 구성하여 백업을 클라우드 오브젝트 스토리지로 전송
- RMAN 명령어를 사용하여 백업 수행
다음 이미지는 이러한 단계를 보여줍니다.
참고: ODBCS는 11g Release 2(11.2.0.4) 이상 버전에서 사용할 수 있습니다. Oracle 소프트웨어의 Enterprise Edition과 Standard Edition 모두 클라우드 백업을 지원하며, Linux®, Solaris® x86-64, SPARC®, Windows®, AIX®, HP-UX, zLinux 플랫폼에서 이용할 수 있습니다.
Oracle Database Backup Cloud Service 구독
다음 단계에 따라 Oracle Database Cloud 서비스를 구독합니다.
- Cloud Portal에서 Oracle Storage Cloud Service를 검색하여 Oracle Database Backup Cloud Service의 평가판을 신청하거나 유료 구독을 구매합니다.
- 서비스를 활성화하고 정상 동작 여부를 확인합니다.
- 서비스를 위한 데이터 센터 또는 리전을 선택하고, 필요한 경우 다른 리전으로의 복제를 설정합니다.
Oracle Database Cloud Backup 모듈 다운로드 및 설치
OCI용 Oracle Database Cloud Backup 모듈과 표준 RMAN 명령어를 사용하면 OCI 환경에서 백업 및 복원 작업을 수행할 수 있습니다. 이 모듈은 RMAN과 통합되는 SBT(System Backup to Tape) 인터페이스를 제공합니다.
Oracle Technology Network(OTN)에서 OCI용 Oracle Database Cloud Backup 모듈을 다운로드합니다.
-
OCI용 Oracle Database Cloud Backup 모듈을 설치하기 전에 다음 사항을 확인합니다.
- 지원되는 OS와 Oracle 데이터베이스 버전을 사용 중인지 확인
- OCI 오브젝트 스토리지에 액세스할 수 있는 Oracle Cloud 계정 보유
- JDK 1.7 이상 설치 완료
- 설치에 필요한 다음 파라미터 정보 준비:
- OCI 오브젝트 스토리지의 HTTPS 엔드포인트 URL
- 테넌시 OCID(tenancy OCID, 리소스의 Oracle Cloud Identifier)
- 컴파트먼트 OCID(선택 사항)
- 프라이빗 키 파일
- 월렛 위치
- 설치를 위한 SBT 라이브러리 위치
설치 과정에서 기본 스토리지 컨테이너가 자동으로 생성되므로, 별도로 스토리지 버킷이나 컨테이너를 만들 필요가 없습니다.
다운로드한 zip 파일의 압축을 해제합니다. 파일에는 oci_installer와 opc_installer 두 개의 디렉터리와 README 파일이 포함되어 있습니다.
-
데이터베이스 서버의 oci_installer 디렉터리에서 Oracle Cloud 자격 증명을 사용하여 설치 프로그램 oci_install.jar를 실행합니다. 다음 명령에 필요한 파라미터를 입력하여 OCI Cloud Backup 모듈을 설치합니다.
$ java -jar oci_install.jar -host https://objectstorage.REGION.oraclecloud.com -pvtKeyFile /home/oracle/install/privateKeyFile.pem -pubFingerPrint XX:XX:XX:XX -tOCID ocid1.tenancy.oc1..XXXX -uOCID ocid1.user.oc1..XXXX -cOCID ocid1.compartment.oc1..XXXX -walletDir $ORACLE_HOME/dbs/wallet -libDir $ORACLE_HOME/lib -configFile $ORACLE_HOME/dbs/opcSID.ora모듈 설치가 완료되면 시스템은 인증 키를 Oracle 월렛에 안전하게 저장하고, 이를 사용하여 OCI Object Storage와의 상호 작용을 인증합니다.
-
서버에 여러 RDBMS 홈이 있는 경우, 각 홈마다 이 모듈을 개별적으로 설치해야 해당 홈의 백업을 OCI 오브젝트 스토리지로 전송할 수 있습니다. 설치 과정에서 다음 파일들이 생성됩니다.
- $ORACLE_HOME/lib/libopc.so: OCI를 통한 클라우드 백업 및 복원을 가능하게 하는 운영체제별 SBT 라이브러리입니다.
- $ORACLE_HOME/dbs/opcSID.or: OCI Object Storage 버킷 URL, 자격 증명 월렛 위치, 버킷 이름 등 필수 정보를 담고 있는 구성 파일입니다.
- cwallet.sso: 설치 프로그램 실행 시
--walletDir파라미터로 지정한 위치에 생성되며, OCI Object Storage 자격 증명을 안전하게 저장하는 Oracle 월렛 파일입니다.
RMAN 설정 구성 및 OCI 오브젝트 스토리지로 백업 전송
다음 단계를 수행하여 OCI 오브젝트 스토리지로 성공적인 백업을 전송하기 위한 설정을 구성합니다.
-
Oracle Database Backup Cloud Service로 백업을 전송하려면 반드시 백업을 암호화해야 합니다. 백업 수행 시 다음 모드 중 하나를 사용하여 암호화를 지정할 수 있습니다.
- 패스워드 암호화
- TDE(Transparent Data Encryption)
- 듀얼 모드 암호화(패스워드와 TDE의 조합)
-
OCI 오브젝트 스토리지로 성공적인 백업을 수행하려면 데이터베이스에 대해 TDE 암호화가 이미 활성화되어 있어야 합니다. 그렇지 않은 경우 패스워드 암호화를 사용할 수 있습니다. 예를 들어, 다음 명령을 사용하여 백업 시 패스워드 암호화를 활성화합니다.
RMAN> SET ENCRYPTION ON IDENTIFIED BY 'my_pswd' ONLY; -
클라우드로 전송하기 전에 백업 크기를 줄이기 위해 ODBCS로 Oracle 데이터베이스를 백업할 때 선택적으로 압축을 사용할 수 있습니다. 예를 들어, 다음 RMAN 명령은 MEDIUM 알고리즘을 사용하여 압축을 구성합니다.
RMAN> CONFIGURE COMPRESSION ALGORITHM 'MEDIUM'; -
backup,restore,recover등 모든 RMAN 명령이 이 채널을 사용하도록 영구 구성을 위해 RMAN 채널을 구성합니다. Linux 및 UNIX 시스템에서는 다음 명령을 사용합니다.RMAN> CONFIGURE CHANNEL DEVICE TYPE sbt PARMS='SBT_LIBRARY=<ORACLE_HOME>/lib/libopc.so, SBT_PARMS=(OPC_PFILE=<ORACLE_HOME>/dbs/opcSID.ora)';
RMAN 명령어를 사용한 백업 및 복원 수행
RMAN 구성을 완료한 후에는 일반적으로 온프레미스 디스크에 백업할 때 사용하는 RMAN 명령어를 그대로 사용하여 클라우드 백업 및 복원을 수행할 수 있습니다. 구성이 완료되면 다음 예시와 같은 백업 스크립트를 실행하여 OCI 오브젝트 스토리지로 백업을 수행할 수 있습니다.
SET ENCRYPTION ON IDENTIFIED BY '<my_pswd>' ONLY;
run {
allocate channel ch1 device type sbt parms 'SBT_LIBRARY=<ORACLE_HOME>/lib/libopc.so,ENV=(OPC_PFILE=<ORACLE_HOME>/dbs/opcSID.ora)';
allocate channel ch2 device type sbt parms 'SBT_LIBRARY=<ORACLE_HOME>/lib/libopc.so,ENV=(OPC_PFILE=<ORACLE_HOME>/dbs/opcSID.ora)';
backup as compressed backupset database format '%d_DB_%U';
backup as compressed backupset archivelog all not backed up format '%d_ARCH_%U';
backup as compressed backupset current controlfile format '%d_CTRL_%U';
release channel ch1;
release channel ch2;
}
요약
이 글에서는 온프레미스 데이터베이스의 RMAN 백업을 OCI 오브젝트 스토리지로 수행하기 위한 필수 단계를 살펴보았습니다. 구성을 완료하면 OCI 오브젝트 스토리지를 또 다른 테이프 라이브러리처럼 활용하여 아카이브 로그 백업, 복원, 복구, 백업 삭제 등 온프레미스 데이터베이스와 유사한 모든 작업을 수행할 수 있습니다. 이를 통해 도입부에서 언급한 클라우드 스토리지의 다양한 장점을 그대로 누릴 수 있습니다.
의견이나 궁금한 점이 있다면 피드백 탭을 이용해 주세요. 언제든지 대화를 시작할 수 있습니다.