이 마이그레이션 접근 방식을 사용하면 자체 관리형 Db2 데이터베이스(소스)에서 Amazon RDS for Db2로 Linux 기반 Db2 데이터베이스를 마이그레이션합니다. 이 접근 방식을 사용하면 애플리케이션 또는 사용자의 중단이나 가동 중지 시간이 최소화되거나 전혀 발생하지 않습니다. 이 접근 방식은 데이터베이스를 백업하고 로그 재생을 통해 복원하므로, 진행 중인 작업의 중단을 방지하고 데이터베이스의 고가용성을 제공합니다.
가동 중지 시간이 거의 없는 마이그레이션을 달성하기 위해 RDS for Db2는 로그 재생을 통한 복원을 구현합니다. 이 접근 방식은 자체 관리형 Linux 기반 Db2 데이터베이스의 백업을 가져와 RDS for Db2 서버에 복원합니다. Amazon RDS 저장 프로시저를 사용하면 후속 트랜잭션 로그를 적용하여 데이터베이스를 최신 상태로 유지합니다.
가동 중지 시간이 거의 없는 마이그레이션에 대한 제한 사항 및 권장 사항
가동 중지 시간이 거의 없는 마이그레이션을 사용하는 경우 다음과 같은 제한 사항과 권장 사항이 적용됩니다.
-
Amazon RDS는 가동 중지 시간이 거의 없는 마이그레이션을 위해 온라인 백업이 필요합니다. 아카이브된 트랜잭션 로그를 업로드할 때 Amazon RDS가 데이터베이스를 롤포워드 보류 상태로 유지하기 때문입니다. 자세한 내용은 Db2 데이터베이스 마이그레이션 단원을 참조하십시오.
-
RDS for Db2 DB 인스턴스가 위치한 리전과 다른 AWS 리전에서는 Amazon S3 버킷으로 복원할 수 없습니다.
-
Amazon S3는 S3 버킷에 업로드되는 파일 크기를 5TB로 제한합니다. 데이터베이스 백업 파일이 5TB를 초과하는 경우 백업 파일을 더 작은 파일로 분할하세요.
-
Amazon RDS는 울타리가 없는 외부 루틴, 증분 복원 또는 Delta 복원을 지원하지 않습니다.
-
암호화된 원본 데이터베이스에서 복원할 수 없지만 암호화된 Amazon RDS DB 인스턴스로 복원할 수 있습니다.
데이터베이스를 복원하면 Amazon RDS가 백업을 복사한 다음 RDS for Db2 DB 인스턴스에서 추출합니다. RDS for Db2 DB 인스턴스의 스토리지 공간을 백업 크기와 디스크의 원래 데이터베이스 크기의 합 이상으로 프로비저닝하는 것이 좋습니다.
복원된 데이터베이스의 최대 크기는 지원되는 최대 데이터베이스 크기에서 백업 크기를 뺀 값입니다. 예를 들어, 지원되는 최대 데이터베이스 크기가 64TiB이고 백업 크기가 30TiB인 경우 복원된 데이터베이스의 최대 크기는 34TiB입니다.
64 TiB - 30 TiB = 34 TiB
Amazon S3로 데이터베이스 백업
Amazon S3에 데이터베이스를 백업하려면 다음 AWS 구성 요소가 필요합니다.
-
백업 파일을 저장하는 Amazon S3 버킷: Amazon RDS로 마이그레이션하려는 모든 백업 파일을 업로드합니다. Amazon RDS는 가동 중지 시간이 거의 없는 마이그레이션을 위해 온라인 백업이 필요합니다. S3 버킷이 이미 있다면 해당 버킷을 사용할 수 있습니다. S3 버킷이 없는 경우 Amazon S3 사용 설명서의 버킷 생성을 참조하세요.
참고
데이터베이스가 크고 S3 버킷으로 전송하는 데 시간이 오래 걸리는 경우 AWS Snow Family 디바이스를 주문하고 AWS에 백업을 수행하도록 요청할 수 있습니다. 파일을 디바이스에 복사하여 Snow Family 팀에 반환하면 팀은 백업된 이미지를 S3 버킷으로 전송합니다. 자세한 내용은 AWS Snow Family 설명서를 참조하십시오.
-
S3 버킷에 액세스하기 위한 IAM 역할: 이미 AWS Identity and Access Management(IAM) 역할이 있다면 해당 역할을 사용할 수 있습니다. 역할이 없는 경우 2단계: IAM 역할 생성 및 IAM 정책 연결 섹션을 참조하세요.
-
IAM 역할에 연결된 신뢰 관계 및 권한이 포함된 IAM 정책: 자세한 내용은 1단계: IAM 정책 생성 섹션을 참조하세요.
-
RDS for Db2 DB 인스턴스에 추가된 IAM 역할: 자세한 내용은 3단계: RDS for Db2 DB 인스턴스에 IAM 역할 추가 섹션을 참조하세요.
기본 자동 스토리지 그룹 생성
소스 데이터베이스에 기본 자동 스토리지 그룹이 있어야 합니다. 데이터베이스에 기본 자동 스토리지 그룹이 없는 경우 새 자동 스토리지 그룹을 만들어야 합니다.
기본 자동 스토리지 그룹을 만들려면
-
소스 데이터베이스에 연결합니다. 다음 예제에서
source_database
를 데이터베이스 이름으로 바꿉니다.db2 connect to
source_database
-
자동 스토리지 그룹을 생성하고 이를 기본값으로 설정합니다. 다음 예제에서
storage_path
를 스토리지 그룹이 있는 절대 경로로 바꿉니다.db2 "create stogroup IBMSTOGROUP ON
storage_path
set as default" -
백엔드 프로세스를 종료합니다.
db2 terminate
Db2 데이터베이스 마이그레이션
Amazon S3에 데이터베이스를 백업하고 자동 스토리지 그룹을 만들고 나면 Db2 데이터베이스를 RDS for Db2 DB 인스턴스로 마이그레이션할 수 있습니다.
가동 중지 시간이 거의 없는 마이그레이션을 수행하려면
-
소스 데이터베이스를 온라인으로 백업합니다. 자세한 내용은 IBM Db2 설명서의 BACKUP DATABASE 명령
을 참조하세요. -
Amazon S3 버킷에 데이터베이스 백업을 복사합니다. Amazon S3 사용에 대한 자세한 내용은 Amazon Simple Storage Service 사용 설명서를 참조하세요.
-
RDS for Db2 DB 인스턴스의
master_username
및master_password
를 사용하여rdsadmin
서버에 연결합니다.db2 connect to rdsadmin user
master_username
usingmaster_password
-
(선택 사항) 데이터베이스가 복원 작업을 위한 최적의 설정으로 구성되었는지 확인하기 위해 rdsadmin.show_configuration을 직접적으로 호출하여
RESTORE_DATABASE_PARALLELISM
및RESTORE_DATABASE_NUM_BUFFERS
에 대한 값을 확인할 수 있습니다. 필요에 따라 이러한 값을 변경하려면 rdsadmin.set_configuration을 직접적으로 호출합니다. 이러한 값을 명시적으로 설정하면 대량 데이터가 있는 데이터베이스를 복원할 때 성능이 향상될 수 있습니다. -
rdsadmin.restore_database
를 호출하여 RDS for Db2 서버의 백업을 복원합니다.backup_type
를ONLINE
으로 설정합니다. 자세한 내용은 rdsadmin.restore_database 단원을 참조하십시오. -
소스 서버에서 S3 버킷으로 아카이브 로그를 복사합니다. 자세한 내용은 IBM Db2 설명서의 아카이브 로깅
을 참조하세요. -
rdsadmin.rollforward_database
를 호출하여 필요한 횟수만큼 아카이브 로그를 적용합니다. 데이터베이스를ROLL-FORWARD PENDING
상태로 유지하려면complete_rollforward
를FALSE
로 설정합니다. 자세한 내용은 rdsadmin.rollforward_database 단원을 참조하십시오. -
모든 아카이브 로그를 적용한 후
rdsadmin.complete_rollforward
를 호출하여 데이터베이스를 온라인 상태로 전환합니다. 자세한 내용은 rdsadmin.complete_rollforward 단원을 참조하십시오. -
데이터베이스의 애플리케이션 엔드포인트를 업데이트하거나 트래픽을 RDS for Db2 서버로 리디렉션하도록 DNS 엔드포인트를 업데이트하여 애플리케이션 연결을 RDS for Db2 서버로 전환합니다. RDS for Db2 데이터베이스 엔드포인트와 함께 자체 관리형 Db2 데이터베이스에서 Db2 자동 클라이언트 경로 변경 기능을 사용할 수도 있습니다. 자세한 내용은 IBM Db2 설명서의 자동 클라이언트 경로 변경 설명 및 설정
을 참조하세요. -
(선택 사항) 소스 데이터베이스를 종료합니다.