特定の時点への DB インスタンスの復元 - Amazon Relational Database Service

特定の時点への DB インスタンスの復元

DB インスタンスを特定の時点に復元し、新しい DB インスタンスを作成できます。

DB インスタンスを特定の時点に復元する場合、デフォルトの仮想プライベートクラウド (VPC) のセキュリティグループを選択できます。また、DB インスタンスにカスタム VPC セキュリティグループを適用することもできます。

復元された DB インスタンスは、デフォルトの DB パラメータグループとオプショングループに自動的に関連付けられます。ただし、カスタムパラメータグループとオプショングループは、復元中に指定することで適用できます。

RDS は、DB インスタンスのトランザクションログを 5 分ごとに Amazon S3 にアップロードします。DB インスタンスの復元可能な直近の時間を確認するには、AWS CLI の describe-db-instances コマンドを使用し、DB インスタンスの [LatestRestorableTime] フィールドに返される値を参照します。Amazon RDS コンソールで各 DB インスタンスの復元可能な直近の時間を表示するには、自動バックアップ を選択します。

バックアップ保持期間の任意の時点に復元できます。各 DB インスタンスの復元可能な最も早い時間を表示するには、Amazon RDS コンソールで [自動バックアップ] を選択します。


            自動バックアップ
注記

出典 DB インスタンスとしてプロビジョンド IOPS ストレージを使用する場合は、同じ、または類似の DB インスタンスサイズと IOPS に復元することをお勧めします。例えば、互換性のない IOPS 値を持つ DB インスタンスのサイズを選択した場合、エラーが発生することがあります。

Amazon RDS で使用されるいくつかのデータベースエンジンには、特定の時点から復元する際の特別な考慮事項があります。

  • 特定の時点に Oracle DB インスタンスを復元するとき、新しい DB インスタンスで使用する異なる Oracle DB エンジン、ライセンスモデル、DBName (SID) を指定できます。

  • 特定の時点に Microsoft SQL Server DB インスタンスを復元する際、そのインスタンス内の各データベースは、インスタンス内の他のデータベースからそれぞれ 1 秒以内の時点に復元されます。インスタンス内の複数のデータベースにまたがるトランザクションは、復元後の整合性がない可能性があります。

  • SQL Server DB インスタンスの場合、OFFLINEEMERGENCYSINGLE_USER のモードはサポートされていません。任意のデータベースをこれらのモードの 1 つに設定すると、復元可能な直近の時間がインスタンス全体で前に進まなくなります。

  • 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 クラスターの復元についての詳細は、「DBinstance を指定した時点へ復元する」を参照してください。

AWS Management Console、AWS CLI、または RDS API を使用して、DB インスタンスを特定の時点に復元できます。

特定の時点に DB インスタンスを復元するには

  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、「自動バックアップ」を選択します。

    [Current Region] (現在のリージョン) タブに自動バックアップが表示されます。

  3. 復元する DB インスタンスを選択します。

  4. アクション」 で、「特定時点への復元」 を選択します。

    [Restore to point in time] (特定時点への復元) ウィンドウが表示されます。

  5. Latest restorable time」 を選択してできるだけ最新の時点に復元するか、「カスタム」 を選択して時刻を選択します。

    カスタム」 を選択した場合、インスタンスクラスターを復元する日時を入力します。

    注記

    時刻は、協定世界時 (UTC) からのオフセットとしてローカルタイムゾーンで表示されます。例えば、UTC-5 は東部スタンダード時/中部夏時間です。

  6. [DB インスタンス識別子] に、ターゲットが復元された DB インスタンスの名前を入力します。名前は一意である必要があります。

  7. 必要に応じて、DB インスタンスクラス、ストレージ、ストレージのオートスケーリングを使用するかどうかなど、他のオプションを選択します。

    各設定の詳細については、「DB インスタンスの設定」を参照してください。

  8. [Restore to point in time (特定時点への復元)] を選択します。

DB インスタンスを特定の時間に復元するには、AWS CLI の restore-db-instance-to-point-in-time コマンドを使用して、新しい DB インスタンスを作成します。この例では、ストレージのオートスケーリングも有効にします。

他の設定を指定できます。各設定の詳細については、「DB インスタンスの設定」を参照してください。

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