

# DB クラスタースナップショットからの復元
<a name="aurora-restore-snapshot"></a><a name="restore_snapshot"></a>

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

**重要**  
Aurora 標準サポート終了日を過ぎた DB エンジンバージョンにスナップショットを復元することはできません。データベースには、サポートされているバージョンに正常にアップグレードされた後にのみアクセスできます。サポートされる Aurora DB エンジンバージョンの詳細については、「[Amazon Aurora の Amazon RDS 延長サポート](extended-support.md)」を参照してください。  
クラスターでサポートされているバージョンへのアップグレードが失敗した場合、クラスターのステータスは `upgrade-failed` に変わり、Aurora はプレフィックス `rds-final` を使用して最終スナップショットを作成します。アップグレードの失敗後に非推奨バージョンで復元されたデータベースにアクセスするには、AWS サポートにお問い合わせください。

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

CloudFormation を使用して、DB クラスターのスナップショットから DB クラスターを復元できます。詳細については、*AWS CloudFormation ユーザーガイド*の [AWS::RDS::DBCluster](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-rds-dbcluster.html) を参照してください。

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

RDS 延長サポートバージョンを使用した Aurora DB クラスターまたはグローバルクラスターの復元については、「[Amazon RDS 延長サポートでの Aurora DB クラスターまたはグローバルクラスターの復元](extended-support-restoring-db-instance.md)」を参照してください。

## パラメータグループに関する考慮事項
<a name="aurora-restore-snapshot.Parameters"></a>

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

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

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

DB パラメータグループと DB クラスターのパラメータグループの詳細については、「[Amazon Aurora のパラメータグループ](USER_WorkingWithParamGroups.md)」を参照してください。

## セキュリティグループに関する考慮事項
<a name="aurora-restore-snapshot.Security"></a>

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 クラスターの変更](Aurora.Modifying.md)」を参照してください。

## Amazon Aurora に関する考慮事項
<a name="aurora-restore-snapshot.Aurora"></a>

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

Aurora MySQL と Aurora PostgreSQL では、どちらも DB クラスターのスナップショットを Aurora Serverless DB クラスターに復元することが可能です。

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

## スナップショットからの復元
<a name="aurora-restore-snapshot.Restoring"></a>

DB クラスタースナップショットから DB クラスターを復元するには、AWS マネジメントコンソール、AWS CLI、または RDS API を使用します。

### コンソール
<a name="aurora-restore-snapshot.CON"></a>

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

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

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

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

1. **[アクション]**、**[スナップショットを復元]** の順に選択します。

   **[スナップショットを復元]** ページが表示されます。

1. DB クラスターを復元する先の DB エンジンのバージョンを選択します。

   デフォルトでは、スナップショットはソース DB クラスターと同じ DB エンジンバージョン (ある場合) に復元されます。

1. **[DB instance identifier]** (DB インスタンス識別子) として、復元された DB インスタンスの名前を入力します。Amazon RDS は、指定した DB インスタンス識別子から DB クラスター識別子を導出することに注意してください。

1. DB クラスターのストレージ設定など、その他の設定を指定します。

   各設定の詳細については、「[Aurora DB クラスターの設定](Aurora.CreateInstance.md#Aurora.CreateInstance.Settings)」を参照してください。

1. **[Restore DB Cluster]** (DB クラスターを復元) を選択します。

### AWS CLI
<a name="aurora-restore-snapshot.CLI"></a>

DB クラスタースナップショットから DB クラスターを復元するには、AWS CLI の [restore-db-cluster-from-snapshot](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/restore-db-cluster-from-snapshot.html) コマンドを使用します。

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

DB エンジンバージョンなど、他の設定も指定できます。エンジンバージョンを指定しない場合、DB クラスターはデフォルトのエンジンバージョンに復元されます。

各設定の詳細については、「[Aurora DB クラスターの設定](Aurora.CreateInstance.md#Aurora.CreateInstance.Settings)」を参照してください。

**Example**  
Linux、macOS、Unix の場合:  
   

```
1. aws rds restore-db-cluster-from-snapshot \
2.     --db-cluster-identifier {{mynewdbcluster}} \
3.     --snapshot-identifier {{mydbclustersnapshot}} \
4.     --engine {{aurora-mysql|aurora-postgresql}}
```
Windows の場合:  
   

```
1. aws rds restore-db-cluster-from-snapshot ^
2.     --db-cluster-identifier {{mynewdbcluster}} ^
3.     --snapshot-identifier {{mydbclustersnapshot}} ^
4.     --engine {{aurora-mysql|aurora-postgresql}}
```

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

**重要**  
コンソールを使用して DB クラスターを復元する場合、Amazon RDS は自動的に使用する DB クラスターのプライマリ DB インスタンス (ライター) を作成します。AWS CLI を使用して DB クラスターを復元する場合、使用する DB クラスターのプライマリインスタンスを明示的に作成する必要があります。プライマリインスタンスは、DB クラスターで作成される初期の DB インスタンスです。プライマリ DB インスタンスを作成しない場合、DB クラスターエンドポイントは `creating` ステータスのままです。  
DB クラスターのプライマリインスタンスを作成するには、[create-db-instance](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-instance.html) AWS CLI コマンドを呼び出します。`--db-cluster-identifier` オプション値として DB クラスターの名前を含めます。

### RDS API
<a name="aurora-restore-snapshot.API"></a>

DB クラスターを DB クラスタースナップショットから復元するには、以下のパラメータを指定して RDS API オペレーション [RestoreDBClusterFromSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_RestoreDBClusterFromSnapshot.html) を呼び出します。
+ `DBClusterIdentifier` 
+ `SnapshotIdentifier` 

**重要**  
コンソールを使用して DB クラスターを復元する場合、Amazon RDS は自動的に使用する DB クラスターのプライマリ DB インスタンス (ライター) を作成します。RDS API を使用して DB クラスターを復元する場合は、DB クラスターのプライマリインスタンスを明示的に作成する必要があります。プライマリインスタンスは、DB クラスターで作成される初期の DB インスタンスです。プライマリ DB インスタンスを作成しない場合、DB クラスターエンドポイントは `creating` ステータスのままです。  
DB クラスターのプライマリインスタンスを作成するには、RDS API オペレーション [CreateDBInstance](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBInstance.html) を呼び出します。`DBClusterIdentifier` パラメータの値として DB クラスターの名前を含めます。