メニュー
Amazon Relational Database Service
ユーザーガイド (API Version 2014-10-31)

チュートリアル: DB スナップショットからの DB インスタンスの復元

Amazon RDS を使用した作業でよくあるシナリオとして、ときどき DB インスタンスで作業をするが常に必要なわけではない、ということがあります。たとえば、四半期ごとに顧客調査を行い、顧客調査用のウェブサイトをホストする Amazon Elastic Compute Cloud (Amazon EC2) インスタンスと調査結果を保存する DB インスタンスを使用するとします。このようなシナリオで経費を節約する 1 つの方法は、調査が完了した後、DB インスタンスの DB スナップショットを作成して DB インスタンスを削除し、再び調査を行うときに DB インスタンスを復元することです。

次の図では、顧客調査ウェブサイトをホストする EC2 インスタンスが顧客調査データを保管する DB インスタンスと同じ Amazon Virtual Private Cloud (Amazon VPC) にある場合のシナリオを確認できます。各インスタンスには、独自のセキュリティグループがあることに注意してください。EC2 インスタンスのセキュリティグループはインターネットからのアクセスを許可しますが、DB インスタンスのセキュリティグループは EC2 インスタンスへのアクセスおよび EC2 インスタンスからのアクセスのみを許可します。調査が完了したら、EC2 インスタンスを停止し、最終的な DB スナップショットを作成した後に DB インスタンスを削除できます。別の調査を行う必要がある場合は、EC2 インスタンスを再起動して、DB スナップショットから DB インスタンスを復元できます。

 チュートリアル VPC 使用

このシナリオに必要な VPC セキュリティグループを、EC2 インスタンスが DB インスタンスを使用して接続できるようにセットアップする方法については、「VPC 内の DB インスタンスに同じ VPC 内の EC2 インスタンスがアクセスする」を参照してください。

DB スナップショットから DB インスタンスを復元する前に、DB スナップショットを作成する必要があります。DB インスタンスを復元するとき、復元の元となる DB スナップショットの名前を指定し、復元オペレーションから作成される新しい DB インスタンスの名前を指定します。DB スナップショットから既存の DB インスタンスに復元することはできません。復元すると新しい DB インスタンスが作成されます。

DB スナップショットから DB インスタンスを復元するための前提条件

復元された DB インスタンスの一部の設定はインスタンスが復元された際にリセットされるため、DB インスタンスを以前の設定に復元できるように、元のリソースを保持する必要があります。たとえば、DB スナップショットから DB インスタンスを復元した場合、デフォルトの DB パラメータおよびデフォルトのセキュリティグループは、復元されたインスタンスに関連付けられます。この関連づけは、デフォルトのセキュリティグループが DB インスタンスへのアクセスを許可しないこと、およびカスタムパラメータ設定はデフォルトのパラメータグループで使用できないことを意味します。DB スナップショットの作成に使用した DB インスタンスに関連付けられている DB パラメータグループおよびセキュリティグループを保持する必要があります。

DB スナップショットから DB インスタンスを復元する前に、以下が必要です:

  • DB スナップショットから DB インスタンスを復元するには、DB インスタンスの DB スナップショットを作成している必要があります。DB スナップショットの作成について詳しくは、「DB スナップショットの作成」を参照してください。

  • DB スナップショットを作成した DB インスタンスに関連付けられたパラメータグループおよびセキュリティグループを保持する必要があります。

  • DB スナップショットを作成した DB インスタンスが存在する VPC を保持する必要があります。

  • 復元された DB インスタンスの正しいオプショングループを決定する必要があります:

    • 復元に使用した DB スナップショットに関連付けられたオプショングループは、作成後に復元された DB インスタンスと関連付けられます。たとえば、復元の元となる DB スナップショットで Oracle Transparent Data Encryption (TDE) が使用されている場合、復元された DB インスタンスでも同じオプショングループが使用されます (TDE オプションあり)。

    • 別の VPC 内または別のプラットフォーム上に DB インスタンスを復元しようとしても、元のインスタンスに関連付けられているオプショングループは使用できません。この制限は、オプショングループが DB インスタンスに割り当てられている場合に発生します。DB インスタンスが存在するプラットフォーム、つまり VPC または EC2-Classic (VPC 以外) にもリンクされます。DB インスタンスが VPC 内にある場合、そのインスタンスに関連付けられているオプショングループはその VPC にリンクされます。

    • 別の VPC 内にまたは別のプラットフォーム上に DB インスタンスを復元する場合は、デフォルトのオプショングループをインスタンスに割り当てるか、その VPC またはプラットフォームにリンクされているオプショングループをインスタンスに割り当てるか、新しいオプショングループを作成してインスタンスに割り当てる必要があります。Oracle TDE などの永続または固定オプションを使用する場合は、別の VPC 内に DB インスタンスを復元するときに、永続または固定オプションを含む新しいオプショングループを作成する必要があります。オプショングループの操作方法の詳細については、「オプショングループを使用する」を参照してください。

DB スナップショットからの DB インスタンスの復元

次の手順に従って、AWS マネジメントコンソール のスナップショットから復元できます。

DB スナップショットから DB インスタンスを復元するには

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

  2. ナビゲーションペインで、[Snapshots] を選択します。

  3. 復元の元にする DB スナップショットを選択します。

     コンソール リストア スナップショット db
  4. [Restore Snapshot] を選択します。

    [Restore DB Instance] ウィンドウが表示されます。

  5. [DB Instance Identifier] には、復元された DB インスタンスに使用する名前を入力します。DB スナップショットの作成後に削除した DB インスタンスから復元する場合は、その DB インスタンスの名前を使用できます。

  6. [Restore DB Instance] を選択します。

復元された DB インスタンスの変更

復元オペレーションが完了し次第、復元元のインスタンスで使用していたカスタムセキュリティグループを適切なカスタム DB パラメータグループに関連付ける必要があります。デフォルトの DB パラメータとセキュリティグループのみ、復元済みインスタンスに関連付けられます。スナップショットが作成された DB インスタンスの DB インスタンス機能を復元する場合は、以前の DB インスタンスが使用するセキュリティグループおよびパラメータグループを使用するように、DB インスタンスを変更する必要があります。

DB インスタンスが使用可能になったら、RDS コンソールの Modify コマンド、ModifyDBInstance API、または aws rds modify-db-instance コマンドラインツールを使用して変更を明示的に適用する必要があります。復元されたインスタンスを適切なパラメータファイルと関連付けることができるように、存在する DB スナップショットのパラメータグループを保持することをお勧めします。

復元した DB インスタンスのそのほかの設定を変更できます。たとえば、ソース DB スナップショットとは異なるストレージタイプを使用できます。この場合、新しいストレージタイプにデータを移行するための追加作業が必要になるため、復元処理が遅くなります。磁気 (スタンダード) ストレージで復元する場合、磁気ストレージには Provisioned IOPS または汎用 (SSD) ストレージがないため、移行処理は最も遅くなります。

次のステップは、DB インスタンスが VPC 内にあることを前提としています。DB インスタンスが VPC 内にない場合は、AWS マネジメントコンソール を使用して、DB インスタンスに必要な DB セキュリティグループを見つけます。

復元済みの DB インスタンスを変更して元の DB インスタンスの設定を持たせる

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

  2. ナビゲーションペインで、[Instances] を選択します。

  3. DB スナップショットから復元したときに作成された DB インスタンスを選択します。ここで注意する点が 2 点あります。DB インスタンスに割り当てられたセキュリティグループはデフォルトのセキュリティグループでありアクセスが許可されていないこと、および現在インバウンドアクセスを許可するアクセス権限がないことを示す警告メッセージが示されることです。

     コンソール リストア スナップショット db
  4. [Instance Actions] を選択してから、[Modify] を選択します。

  5. DB インスタンスで使用するセキュリティグループを選択します。ルールを追加して EC2 インスタンスで使用する新しいセキュリティグループを作成する必要がある場合、詳細については「VPC 内の DB インスタンスに同じ VPC 内の EC2 インスタンスがアクセスする」を参照してください。

     コンソール リストア スナップショット db
  6. [Apply Immediately] (ページ下部にあります) を選択します。

  7. [Continue] を選択してから、[Modify DB Instance] を選択します。

    新しいセキュリティグループが適用され、DB インスタンスへのアクセスが承認されたことがわかります。

     コンソール リストア スナップショット db

関連トピック