Linux에서 Amazon RDS for Db2의 Linux로 마이그레이션 - Amazon Relational Database Service

Linux에서 Amazon RDS for Db2의 Linux로 마이그레이션

이 마이그레이션 접근 방식을 사용하면 자체 관리형 Db2 데이터베이스를 Amazon S3 버킷으로 백업합니다. 그런 다음 Amazon RDS 저장 프로시저를 사용하여 Db2 데이터베이스를 Amazon RDS for Db2 DB 인스턴스로 복원합니다. Amazon S3 사용에 대한 자세한 내용은 Amazon RDS for Db2 DB 인스턴스와 Amazon S3 통합 섹션을 참조하세요.

RDS for Db2의 백업 및 복원은 IBM Db2가 지원되는 업그레이드 경로 및 제한 사항을 따릅니다. 자세한 내용은 IBM Db2 설명서의 Db2 서버의 지원되는 업그레이드 경로Db2 서버의 업그레이드 제한을 참조하세요.

기본 복원 사용에 대한 제한 및 권장 사항

기본 복원 사용 시 다음과 같은 제한 및 권장 사항이 적용됩니다.

  • Amazon RDS는 지원되는 RDS for Db2 버전과 일치하는 Db2의 온프레미스 버전 마이그레이션만 지원합니다. 지원되는 버전에 대한 자세한 내용은 Amazon RDS Db2 인스턴스에 대한 업그레이드 관리 섹션을 참조하세요.

  • Amazon RDS는 네이티브 복원을 위한 오프라인 및 온라인 백업만 지원합니다. Amazon RDS에서는 증분 백업이나 Delta 백업을 지원하지 않습니다.

  • RDS for Db2 DB 인스턴스가 위치한 리전과 다른 AWS 리전에서는 Amazon S3 버킷으로 복원할 수 없습니다.

  • Amazon S3는 Amazon S3 버킷에 업로드되는 파일 크기를 5TB로 제한합니다. 데이터베이스 백업 파일이 5TB를 초과하는 경우 백업 파일을 더 작은 파일로 분할하세요.

  • Amazon RDS는 울타리가 없는 외부 루틴, 증분 복원 또는 Delta 복원을 지원하지 않습니다.

  • 암호화된 원본 데이터베이스에서 복원할 수 없지만 암호화된 Amazon RDS DB 인스턴스로 복원할 수 있습니다.

복원 프로세스는 구성에 따라 다릅니다.

USE_STREAMING_RESTORETRUE로 설정하면 Amazon RDS는 복원 중에 S3 버킷에서 백업을 직접 스트리밍합니다. 스트리밍은 스토리지 요구 사항을 크게 줄입니다. 백업 크기 또는 원본 데이터베이스 크기 중 더 큰 크기와 같거나 더 큰 스토리지 공간만 프로비저닝하면 됩니다.

USE_STREAMING_RESTOREFALSE로 설정하면 Amazon RDS는 먼저 백업을 RDS for Db2 DB 인스턴스에 다운로드한 다음 백업을 추출합니다. 추출에는 추가 스토리지 공간이 필요합니다. 백업 크기와 원본 데이터베이스 크기를 합한 크기보다 크거나 같은 저장 공간을 프로비저닝해야 합니다.

복원된 데이터베이스의 최대 크기는 지원되는 최대 데이터베이스 크기에서 복원 프로세스 중 임시 스토리지에 필요한 공간을 뺀 값과 같습니다.

Amazon S3로 데이터베이스 백업

Amazon S3에 데이터베이스를 백업하려면 다음 AWS 구성 요소가 필요합니다.

  • 백업 파일을 저장하는 Amazon S3 버킷: Amazon RDS로 마이그레이션하려는 모든 백업 파일을 업로드합니다. 가동 중지를 처리할 수 있는 마이그레이션에는 오프라인 백업을 사용하는 것이 좋습니다. S3 버킷이 이미 있다면 해당 버킷을 사용할 수 있습니다. S3 버킷이 없는 경우 Amazon S3 사용 설명서의 버킷 생성을 참조하세요.

    참고

    데이터베이스가 크고 S3 버킷으로 전송하는 데 시간이 오래 걸리는 경우 AWS Snow Family 디바이스를 주문하고 AWS에 백업을 수행하도록 요청할 수 있습니다. 파일을 디바이스에 복사하여 Snow Family 팀에 반환하면 팀은 백업된 이미지를 S3 버킷으로 전송합니다. 자세한 내용은 AWS Snow Family 설명서를 참조하십시오.

  • S3 버킷에 액세스하기 위한 IAM 역할: 이미 IAM 역할이 있다면 해당 역할을 사용할 수 있습니다. 역할이 없는 경우 2단계: IAM 역할 생성 및 IAM 정책 연결 섹션을 참조하세요.

  • IAM 역할에 연결된 신뢰 관계 및 권한이 포함된 IAM 정책: 자세한 내용은 1단계: IAM 정책 생성 섹션을 참조하세요.

  • RDS for Db2 DB 인스턴스에 추가된 IAM 역할: 자세한 내용은 3단계: RDS for Db2 DB 인스턴스에 IAM 역할 추가 섹션을 참조하세요.

기본 자동 스토리지 그룹 생성

소스 데이터베이스에 기본 자동 스토리지 그룹이 있어야 합니다. 데이터베이스에 기본 자동 스토리지 그룹이 없는 경우 새 자동 스토리지 그룹을 만들어야 합니다.

기본 자동 스토리지 그룹을 만들려면
  1. 소스 데이터베이스에 연결합니다. 다음 예제에서 source_database를 데이터베이스 이름으로 바꿉니다.

    db2 connect to source_database
  2. 자동 스토리지 그룹을 생성하고 이를 기본값으로 설정합니다. 다음 예제에서 storage_path를 스토리지 그룹이 있는 절대 경로로 바꿉니다.

    db2 "create stogroup IBMSTOGROUP ON storage_path set as default"
  3. 백엔드 프로세스를 종료합니다.

    db2 terminate
  4. 데이터베이스를 비활성화하고 모든 데이터베이스 서비스를 중지합니다. 다음 예제에서 source_database를 스토리지 그룹을 만든 대상 데이터베이스의 이름으로 바꿉니다.

    db2 deactivate db source_database
  5. 데이터베이스를 백업합니다. 다음 예제에서 source_database를 스토리지 그룹을 만든 대상 데이터베이스의 이름으로 바꿉니다. file_system_path를 데이터베이스를 백업하려는 위치의 절대 경로로 바꿉니다.

    db2 backup database source_database to file_system_path

Db2 데이터베이스 복원

Amazon S3에 데이터베이스를 백업하고 자동 스토리지 그룹을 만들고 나면 Db2 데이터베이스를 RDS for Db2 DB 인스턴스로 복원할 수 있습니다.

Db2 데이터베이스를 Amazon S3 버킷에서 RDS for Db2 DB 인스턴스로 복원
  1. RDS for Db2 DB 인스턴스에 연결합니다. 자세한 내용은 DB 인스턴스에 연결 섹션을 참조하세요.

  2. (선택 사항) 데이터베이스가 최적의 설정으로 구성되어 있는지 확인하려면 rdsadmin.show_configuration을 직접적으로 호출하여 다음 파라미터의 값을 확인합니다.

    • RESTORE_DATABASE_NUM_BUFFERS

    • RESTORE_DATABASE_PARALLELISM

    • RESTORE_DATABASE_NUM_MULTI_PATHS

    • USE_STREAMING_RESTORE

    필요에 따라 rdsadmin.set_configuration을 사용하여 이러한 값을 수정합니다. 이러한 파라미터를 적절하게 구성하면 대량의 데이터로 데이터베이스를 복원할 때 성능이 크게 향상될 수 있습니다. 대부분의 마이그레이션 시나리오에서는 스토리지 요구 사항을 줄이고 복원 속도를 개선할 수 있으므로 USE_STREAMING_RESTORETRUE로 설정하는 것이 좋습니다.

  3. rdsadmin.restore_database를 호출하여 데이터베이스를 복원합니다. 자세한 내용은 rdsadmin.restore_database 섹션을 참조하세요.