DB クラスターのスナップショットからの復元 - Amazon Aurora

DB クラスターのスナップショットからの復元

Amazon RDS により、DB クラスターのストレージボリュームのスナップショットが作成され、個々のデータベースだけではなく、その DB インスタンス全体がバックアップされます。DB スナップショットからの復元で、新しい DB クラスターを作成できます。復元の元となる DB クラスタースナップショットの名前を指定し、復元によって作成される新しい DB クラスターの名前を指定します。DB クラスタースナップショットから既存の DB クラスターに復元することはできません。復元すると新しい DB クラスターが作成されます。

ステータスが available になると、復元された DB クラスターを使用することができます。

AWS CloudFormation を使用して、DB クラスターのスナップショットから DB クラスターを復元できます。詳細については、AWS CloudFormation ユーザーガイドAWS::RDS::DBCluster を参照してください。

注記

手動 DB クラスタースナップショットを共有すると、暗号化されているかいないかに関係なく、権限を持つ AWS アカウントが DB クラスターをコピーしてそこから復元するのではなく、スナップショットから DB クラスターを直接復元できるようになります。詳細については、「DB クラスターのスナップショットの共有」を参照してください。

パラメータグループに関する考慮事項

復元された DB クラスターを適切なパラメータグループと関連付けることができるように、作成する DB クラスタースナップショットの DB パラメータグループと DB クラスターは保持しておくことをお勧めします。

異なるパラメータグループを選択しない限り、デフォルトの DB パラメータグループと DB クラスターのパラメータグループが、復元されたクラスターに関連付けられます。デフォルトのパラメータグループでは、カスタムのパラメータ設定を使用できません。

パラメータグループは、DB クラスターを復元する際に指定できます。

DB パラメータグループと DB クラスターのパラメータグループの詳細については、「パラメータグループを使用する」を参照してください。

セキュリティグループに関する考慮事項

DB クラスターを復元すると、仮想プライベートクラウド (VPC)、DB サブネットグループ、および VPC セキュリティグループはデフォルトのものが、(それらに別のものを選択しない限り) 復元されたインスタンスに関連付けられます。

  • Amazon RDS コンソールを使用している場合は、カスタムの VPC セキュリティグループを指定してクラスターに関連付けるか、新しい VPC セキュリティグループを作成できます。

  • AWS CLI を使用している場合、restore-db-cluster-from-snapshot コマンドで --vpc-security-group-ids オプションを指定することにより、カスタムの VPC セキュリティグループを指定して、それをクラスターに関連付けることができます。

  • Amazon RDS API を使用している場合、VpcSecurityGroupIds.VpcSecurityGroupId.N パラメータを RestoreDBClusterFromSnapshot アクションに含むことができます。

復元が完了し、新しい DB クラスターが使用可能になり次第、その DB クラスターを変更して VPC 設定を変更することもできます。詳細については、「Amazon Aurora DB クラスターの変更」を参照してください。

Amazon Aurora に関する考慮事項

Aurora では、DB クラスターのスナップショットを DB クラスターに復元します。

Aurora MySQL と Aurora PostgreSQL では、どちらも DB クラスターのスナップショットを Aurora Serverless DB クラスターに復元することが可能です。詳細については、「Aurora Serverless v1 DB クラスターの復元」を参照してください。

Aurora MySQL では、並行クエリのないクラスターから並行クエリのあるクラスターに DB クラスタースナップショットを復元できます。並行クエリは通常非常に大きいテーブルに使用されるため、スナップショットメカニズムは大量のデータを Aurora MySQL の並行クエリが有効なクラスターに取り込む最も速い方法です。詳細については、「Amazon Aurora MySQL のパラレルクエリの使用」を参照してください。

スナップショットからの復元

DB クラスタースナップショットから DB クラスターを復元するには、AWS Management Console、AWS CLI、または RDS API を使用します。

DB クラスターのスナップショットから DB クラスターを復元するには

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

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

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

  4. [Actions (アクション)]、[Restore snapshot (スナップショットの復元)] の順に選択します。

  5. [Restore snapshot] (スナップショットの復元) ページで、[DB instance identifier] (DB インスタンス識別子) に、復元された DB クラスターの名前を入力します。

  6. 他の設定を指定します。

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

  7. DB インスタンスの復元 を選択します。

DB クラスタースナップショットから DB クラスターを復元するには、AWS CLI の restore-db-cluster-from-snapshot コマンドを使用します。

この例では、「mydbclustersnapshot」という以前作成した DB クラスタースナップショットから復元します。mynewdbcluster という名前の新しい DB クラスターに復元します。

他の設定を指定することができます。各設定の詳細については、「Aurora DB クラスターの設定」を参照してください。

Linux、macOS、Unix の場合:

aws rds restore-db-cluster-from-snapshot \ --db-cluster-identifier mynewdbcluster \ --snapshot-identifier mydbclustersnapshot \ --engine aurora|aurora-mysql|aurora-postgresql

Windows の場合:

aws rds restore-db-cluster-from-snapshot ^ --db-cluster-identifier mynewdbcluster ^ --snapshot-identifier mydbclustersnapshot ^ --engine aurora|aurora-mysql|aurora-postgresql

DB クラスターが復元された後で、以前の DB クラスターと同じ機能が必要な場合は、DB クラスタースナップショットの作成に使用した DB クラスターによって使用されるセキュリティグループに、復元した DB クラスターを追加する必要があります。

重要

コンソールを使用して DB クラスターを復元する場合、Amazon RDS は自動的に使用する DB クラスターのプライマリインスタンス (ライター) を作成します。AWS CLI を使用して DB クラスターを復元する場合、使用する DB クラスターのプライマリインスタンスを明示的に作成する必要があります。プライマリ インスタンスは、DB クラスターで作成される初期の DB インスタンスです。DB クラスターのプライマリインスタンスを作成するには、create-db-instance AWS CLI コマンドを呼び出します。--db-cluster-identifier オプション値として DB クラスターの名前を含めます。

DB クラスターを DB クラスタースナップショットから復元するには、以下のパラメータを指定して RDS API オペレーション RestoreDBClusterFromSnapshot を呼び出します。

  • DBClusterIdentifier

  • SnapshotIdentifier

重要

コンソールを使用して DB クラスターを復元する場合、Amazon RDS は自動的に使用する DB クラスターのプライマリインスタンス (ライター) を作成します。RDS API を使用して DB クラスターを復元する場合は、DB クラスターのプライマリインスタンスを明示的に作成する必要があります。プライマリ インスタンスは、DB クラスターで作成される初期の DB インスタンスです。DB クラスターのプライマリインスタンスを作成するには、RDS API オペレーション CreateDBInstance を呼び出します。DBClusterIdentifier パラメータの値として DB クラスターの名前を含めます。