DB instance를 특정 시간으로 복원 - Amazon Relational Database Service

DB instance를 특정 시간으로 복원

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

DB를 복원 할 때 DB 인스턴스를 특정 시점으로 설정하는 경우 기본 VPC 보안 그룹을 선택하거나 사용자 지정 VPC 보안 그룹을 DB 인스턴스에 적용할 수 있습니다.

복원된 DB 인스턴스는 기본 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 인스턴스 크기를 선택하면 오류가 발생할 수 있습니다.

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

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

  • 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 개발자 안내서를 참조하세요.

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

DB instance를 특정 시간으로 복원

  1. AWS Management Console에 로그인한 후 https://console.aws.amazon.com/rds/에서 Amazon RDS 콘솔을 엽니다.

  2. 탐색 창에서 백업 자동화를 선택합니다.

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

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

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

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

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

    참고

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

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

  7. 필요에 따라 DB 인스턴스 클래스, 스토리지 및 스토리지 Auto Scaling 사용 여부와 같은 다른 옵션을 선택합니다.

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

DB 인스턴스를 특정 시점으로 복원하려면, AWS CLI CLI 명령 restore-db-instance-to-point-in-time을 사용하여 새 DB 인스턴스를 만듭니다. 이 예에서는 스토리지 Auto Scaling도 활성화합니다.

Linux, macOS 또는 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 \ --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 ^ --max-allocated-storage 1000

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

  • SourceDBInstanceIdentifier

  • TargetDBInstanceIdentifier

  • RestoreTime