RDS Custom for Oracle 인스턴스를 특정 시점으로 복원 - Amazon Relational Database Service

RDS Custom for Oracle 인스턴스를 특정 시점으로 복원

DB 인스턴스를 특정 시점(PITR)으로 복원하여 새로운 DB 인스턴스를 생성할 수 있습니다. PITR을 지원하려면 DB 인스턴스의 백업 보존이 0이 아닌 값으로 설정되어 있어야 합니다.

RDS Custom for Oracle DB 인스턴스의 가장 빠른 복원 가능 시간은 여러 요소에 따라 달라지지만, 일반적으로 현재 시간에서 5분 이내입니다. DB 인스턴스의 최근 복원 가능 시간을 확인하려면 AWS CLIdescribe-db-instances 명령을 사용한 후 DB 인스턴스의 LatestRestorableTime 필드에 반환되는 값을 살펴봅니다. Amazon RDS 콘솔에서 각 DB 인스턴스의 복원 가능한 최신 시간을 보려면 [ 자동 백업을 선택합니다.

백업 보존 기간 중 어느 특정 시점으로든 복원할 수 있습니다. 각 DB 인스턴스의 복원 가능한 가장 빠른 시간을 보려면 Amazon RDS 콘솔에서 자동 백업을 선택합니다.

PITR에 대한 일반적인 정보는 Amazon RDS에서 DB 인스턴스를 지정된 시간으로 복원 섹션을 참조하세요.

RDS Custom for Oracle에 대한 PITR 고려 사항

RDS Custom for Oracle에서 PITR은 다음과 같은 중요한 면에서 Amazon RDS의 PITR과 다릅니다.

  • 복원된 데이터베이스의 이름은 소스 DB 인스턴스와 동일합니다. 다른 이름을 지정할 수 없습니다. 기본값은 ORCL입니다.

  • AWSRDSCustomIamRolePolicy는 새 권한이 필요합니다. 자세한 내용은 2단계: AWSRDSCustomInstanceRoleForRdsCustomInstance에 액세스 정책 추가 단원을 참조하세요.

  • Oracle DB 인스턴스용 모든 RDS Custom에는 백업 보존이 0이 아닌 값으로 설정되어 있어야 합니다.

  • 운영 체제 또는 DB 인스턴스 시간대를 변경하면 PITR이 작동하지 않을 수 있습니다. 시간대 변경에 대한 내용은 Oracle 시간대 섹션을 참조하세요.

  • 자동화를 ALL_PAUSED로 설정한 경우 RDS Custom은 복원 가능한 최근 시간(LRT) 이전에 생성된 로그를 포함하여 아카이브된 다시 실행 로그 파일의 업로드를 일시 중지합니다. 잠시 동안 자동화를 일시 중지하는 것이 좋습니다.

    예를 들어, LRT가 10분 전이라고 가정해 봅니다. 자동화를 일시 중지하면 일시 중지한 동안 RDS Custom은 아카이브된 다시 실행 로그를 업로드하지 않습니다. DB 인스턴스가 충돌하는 경우 일시 중지할 때 존재했던 LRT 이전 시간으로만 복구할 수 있습니다. 자동화를 재개하면 RDS Custom은 로그 업로드를 다시 시작합니다. LRT가 변경되며, 일반적인 PITR 규칙이 적용됩니다.

  • RDS Custom에서는 업로드 후 RDS Custom에서 삭제하기 전에 아카이브된 다시 실행 로그를 보존할 시간을 수동으로 지정할 수 있습니다. 다음과 같이 시간을 지정합니다.

    1. /opt/aws/rdscustomagent/config/redo_logs_custom_configuration.json라는 이름의 텍스트 파일을 만듭니다.

    2. {"archivedLogRetentionHours" : "num_of_hours"} 형식의 JSON 객체를 추가합니다. 번호는 1~840 범위의 정수여야 합니다.

  • CDB가 아닌 항목을 컨테이너 데이터베이스(CDB)에 PDB로 연결한 다음 PITR을 시도한다고 가정하겠습니다. 이전에 PDB를 백업한 경우에만 작업이 성공합니다. PDB를 만들거나 수정한 후에는 항상 백업하는 것이 좋습니다.

  • 데이터베이스 초기화 파라미터를 사용자 지정하지 않는 것이 좋습니다. 예를 들어, 다음 파라미터를 수정하면 PITR에 영향을 줍니다.

    • CONTROL_FILE_RECORD_KEEP_TIME은 로그 업로드 및 삭제 규칙에 영향을 줍니다.

    • LOG_ARCHIVE_DEST_n는 여러 대상을 지원하지 않습니다.

    • ARCHIVE_LAG_TARGET은 최신 복원 가능 시간에 영향을 줍니다. Recovery Point Objective(RPO)가 5분이기 때문에 ARCHIVE_LAG_TARGET300으로 설정됩니다. 이 목표를 달성하기 위해 RDS는 5분마다 온라인 다시 실행 로그를 전환하여 Amazon S3 버킷에 저장합니다. 로그 전환 빈도로 인해 RDS Custom for Oracle 데이터베이스의 성능 문제가 발생하는 경우, DB 인스턴스와 스토리지를 IOPS와 처리량이 더 높은 곳으로 확장할 수 있습니다. 복구 계획에 필요한 경우 ARCHIVE_LAG_TARGET 초기화 파라미터 설정을 60~7,200 사이의 값으로 조정할 수 있습니다.

  • 데이터베이스 초기화 파라미터를 사용자 지정하는 경우 다음 항목만 사용자 지정하는 것이 좋습니다.

    • COMPATIBLE

    • MAX_STRING_SIZE

    • DB_FILES

    • UNDO_TABLESPACE

    • ENABLE_PLUGGABLE_DATABASE

    • CONTROL_FILES

    • AUDIT_TRAIL

    • AUDIT_TRAIL_DEST

    다른 모든 초기화 파라미터의 경우 RDS Custom은 기본값을 복원합니다. 이전 목록에 없는 파라미터를 수정하면 PITR에 악영향을 미치고 예측할 수 없는 결과가 발생할 수 있습니다. 예를 들어, CONTROL_FILE_RECORD_KEEP_TIME은 로그 업로드 및 삭제 규칙에 영향을 줍니다.

AWS Management Console, AWS CLI 또는 RDS API를 사용하여 RDS Custom DB 인스턴스를 특정 시점으로 복원할 수 있습니다.

RDS Custom DB 인스턴스를 지정된 시간으로 복원하는 방법
  1. https://console.aws.amazon.com/rds/에서 AWS Management Console에 로그인한 후 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 자동 백업(Automated backups)을 선택합니다.

  3. 복원하려는 RDS Custom DB 인스턴스를 선택합니다.

  4. 작업에서 특정 시점으로 복구를 선택합니다.

    특정 시점으로 복구 창이 나타납니다.

  5. 최근 복원 가능 시간을 선택하여 가능한 최근 시간으로 복원하거나, 사용자 지정을 선택하여 시간을 선택합니다.

    사용자 지정(Custom)을 선택한 경우 인스턴스를 복원하려는 날짜와 시간을 입력합니다.

    시간은 현지 시간대로 표시됩니다. 즉, 협정 세계시(UTC)에서 오프셋으로 표시됩니다. 예를 들어 UTC-5는 동부 표준시/하절기 중부 표준시입니다.

  6. DB 인스턴스 식별자(DB instance identifier)에는 복원된 대상 RDS Custom DB 인스턴스의 이름을 입력합니다. 이름은 고유해야 합니다.

  7. 필요에 따라 DB 인스턴스 클래스와 같은 기타 옵션을 선택합니다.

  8. 특정 시점으로 복구를 선택합니다.

새로운 RDS Custom DB 인스턴스를 생성하려면 restore-db-instance-to-point-in-time AWS CLI 명령을 사용하여 DB 인스턴스를 지정된 시간으로 복원합니다.

다음 옵션 중 하나를 사용하여 복원 원본으로 사용할 백업을 지정합니다.

  • --source-db-instance-identifier mysourcedbinstance

  • --source-dbi-resource-id dbinstanceresourceID

  • --source-db-instance-automated-backups-arn backupARN

custom-iam-instance-profile 옵션은 필수입니다.

다음 예제는 지정된 시간을 기준으로 my-custom-db-instancemy-restored-custom-db-instance라는 새로운 DB 인스턴스로 복원합니다.

대상 LinuxmacOS, 또는Unix:

aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifier my-custom-db-instance\ --target-db-instance-identifier my-restored-custom-db-instance \ --custom-iam-instance-profile AWSRDSCustomInstanceProfileForRdsCustomInstance \ --restore-time 2022-10-14T23:45:00.000Z

Windows의 경우:

aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-identifier my-custom-db-instance ^ --target-db-instance-identifier my-restored-custom-db-instance ^ --custom-iam-instance-profile AWSRDSCustomInstanceProfileForRdsCustomInstance ^ --restore-time 2022-10-14T23:45:00.000Z