DB 인스턴스를 지정된 시간으로 복원 - Amazon Relational Database Service

DB 인스턴스를 지정된 시간으로 복원

소스 DB 인스턴스를 수정하지 않고 DB 인스턴스를 특정 시점으로 복원하여 새 DB 인스턴스를 생성할 수 있습니다.

특정 시점으로 DB 인스턴스를 복원할 때 기본 Virtual Private Cloud(VPC) 보안 그룹을 선택할 수 있습니다. 또는 DB 인스턴스에 사용자 정의 VPC 보안 그룹을 적용할 수 있습니다.

복원된 DB 인스턴스는 기본 DB 파라미터 및 옵션 그룹과 자동으로 연결됩니다. 하지만 복원 중에 사용자 지정 파라미터 그룹 및 옵션 그룹을 지정하여 적용할 수 있습니다.

원본 DB 인스턴스에 리소스 태그가 있는 경우 RDS는 복원된 DB 인스턴스에 최신 태그를 추가합니다.

RDS는 DB 인스턴스에 대한 트랜잭션 로그를 Amazon S3에 5분마다 업로드합니다. DB 인스턴스의 최근 복원 가능 시간을 확인하려면 AWS CLIdescribe-db-instances 명령을 사용한 후 DB 인스턴스의 LatestRestorableTime 필드에 반환되는 값을 살펴봅니다. Amazon RDS 콘솔에서 각 DB 인스턴스의 복원 가능한 최신 시간을 보려면 [ 자동 백업을 선택합니다.

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

자동 백업
참고

프로비저닝된 IOPS 스토리지를 원본 DB 인스턴스로 사용하는 경우 동일하거나 유사한 DB 인스턴스 크기와 IOPS로 복원하는 것이 좋습니다. 예를 들어, 호환되지 않는 IOPS 값이 있는 DB 인스턴스 크기를 선택하면 오류가 발생할 수 있습니다.

RDS 추가 지원 버전을 사용하여 DB 인스턴스를 복원하는 방법에 대한 자세한 내용은 Amazon RDS 추가 지원이 포함된 DB 인스턴스 또는 다중 AZ DB 클러스터 복원 섹션을 참조하세요.

Amazon RDS가 사용하는 몇몇 데이터베이스 엔진에는 특정 시점에서 복원할 때 특별히 고려할 사항이 있습니다.

  • Amazon RDS for Db2 DB 인스턴스에서 암호 인증을 사용하는 경우, rdsadmin.add_user를 포함한 사용자 관리 작업은 로그에 캡처되지 않습니다. 이러한 작업을 수행하려면 전체 스냅샷 백업이 필요합니다.

    BYOL 모델에서는 RDS for Db2 DB 인스턴스를 사용자 IBM Site ID 및 사용자 IBM Customer ID가 포함된 사용자 지정 파라미터 그룹과 연결해야 합니다. 그렇지 않으면 DB 인스턴스를 특정 시점으로 복원하려는 시도가 실패합니다. 자세한 내용은 Db2에 기존 보유 라이선스 사용rdsadmin.restore_database 단원을 참조하세요.

    AWS Marketplace를 통한 Db2 라이선스 모델을 사용하려면 사용하려는 특정 IBM Db2 에디션에 대한 활성 AWS Marketplace 구독이 필요합니다. 아직 구독이 없는 경우 해당 IBM Db2 에디션에 대해 AWS Marketplace에서 Db2를 구독합니다. 자세한 내용은 AWS Marketplace를 통한 Db2 라이선스 단원을 참조하십시오.

  • Oracle DB 인스턴스를 특정 시점으로 복원할 때, 새 DB 인스턴스가 사용할 다른 Oracle DB 엔진, 라이선스 모델 및 DBName(SID)을 지정할 수 있습니다.

  • Microsoft SQL Server DB 인스턴스를 특정 시점으로 복원할 때 그 인스턴스 내의 각 데이터베이스는 인스턴스 내에 있는 각각의 다른 데이터베이스와 1초 이내의 시점으로 복원됩니다. 인스턴스 내에 있는 여러 데이터베이스에 걸쳐 이루어지는 트랜잭션은 일관되게 복원되지 않을 수 있습니다.

  • SQL Server DB 인스턴스의 경우 OFFLINE, EMERGENCYSINGLE_USER 모드는 지원되지 않습니다. 데이터베이스를 이들 모드 중 하나로 설정하면 최근 복원 가능 시간이 전체 인스턴스를 앞서 가는 동작이 중지됩니다.

  • SQL Server 데이터베이스의 복구 모델 변경과 같은 동작으로 특정 시점으로 복구에 사용되는 로그 시퀀스가 중단될 수 있습니다. 경우에 따라 Amazon RDS는 이 문제를 감지하고 최근 복원 가능 시간이 앞으로 진행되지 않도록 합니다. SQL Server 데이터베이스에서 BULK_LOGGED 복구 모델을 사용하는 등의 경우에는 로그 시퀀스의 중단이 감지되지 않습니다. 로그 시퀀스가 중단될 경우 SQL Server DB 인스턴스를 특정 시점으로 복원하지 못할 수도 있습니다. 이런 이유로, Amazon RDS는 SQL Server 데이터베이스의 복구 모델 변경을 지원하지 않습니다.

또한 AWS Backup을 사용해 Amazon RDS DB 인스턴스의 백업을 관리하는 방법도 있습니다. DB 인스턴스가 AWS Backup의 백업 계획에 연결되어 있는 경우, 해당 백업 계획이 특정 시점으로 복구에 사용됩니다. AWS Backup으로 생성된 백업은 이름이 awsbackup:AWS-Backup-job-number로 끝납니다. AWS Backup에 대한 자세한 내용은 AWS Backup 개발자 안내서를 참조하세요.

참고

이 주제의 정보는 Amazon RDS에 적용됩니다. Amazon Aurora DB 클러스터 복원에 대한 자세한 내용은 지정된 시간으로 DB 클러스터 복원을 참조하세요.

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

참고

DB 인스턴스 복원 시 스토리지 양을 줄일 수 없습니다. 할당된 스토리지를 늘릴 경우, 10% 이상 늘려야 합니다. 이 값을 10% 미만으로 늘리면 오류가 발생합니다. RDS for SQL Server DB 인스턴스를 복원할 때는 할당된 스토리지를 늘릴 수 없습니다.

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

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

    자동 백업은 현재 리전(Current Region) 탭에 표시됩니다.

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

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

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

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

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

    참고

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

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

  7. 필요에 따라 DB 인스턴스 클래스, 스토리지, 스토리지 자동 크기 조정 사용 여부 등의 다른 옵션을 선택합니다.

    각 설정에 대한 자세한 내용은 DB 인스턴스에 대한 설정 단원을 참조하세요.

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

지정된 시간으로 DB 인스턴스를 복원하려면 AWS CLI 명령 restore-db-instance-to-point-in-time을 사용하여 새로운 DB 인스턴스를 만듭니다. 또한 이 예에서는 할당된 스토리지 크기를 설정하고 스토리지 AutoScaling을 활성화합니다.

이 작업에는 리소스 태깅이 지원됩니다. --tags 옵션을 사용하면 소스 DB 인스턴스 태그가 무시되고 제공된 태그가 사용됩니다. 이 옵션을 사용하지 않으면 소스 인스턴스의 최신 태그가 사용됩니다.

다른 설정을 지정할 수 있습니다. 각 설정에 대한 자세한 내용은 DB 인스턴스에 대한 설정 단원을 참조하세요.

대상 LinuxmacOS, 또는Unix:

aws rds restore-db-instance-to-point-in-time \ --source-db-instance-identifier mysourcedbinstance \ --target-db-instance-identifier mytargetdbinstance \ --restore-time 2017-10-14T23:45:00.000Z \ --allocated-storage 100 \ --max-allocated-storage 1000

Windows의 경우:

aws rds restore-db-instance-to-point-in-time ^ --source-db-instance-identifier mysourcedbinstance ^ --target-db-instance-identifier mytargetdbinstance ^ --restore-time 2017-10-14T23:45:00.000Z ^ --allocated-storage 100 ^ --max-allocated-storage 1000

DB 인스턴스를 특정 시간으로 복원하려면, Amazon RDS API RestoreDBInstanceToPointInTime 작업을 다음 파라미터와 함께 호출합니다.

  • SourceDBInstanceIdentifier

  • TargetDBInstanceIdentifier

  • RestoreTime