

# 手動バックアップの管理
<a name="USER_ManagingManualBackups"></a>

このセクションでは、DB インスタンスと DB クラスターの手動バックアップを管理する方法について説明します。

Single-AZ DB インスタンスの DB スナップショットの作成について詳しくは、「[Amazon RDS のシングル AZ DB インスタンスの DB スナップショットの作成](USER_CreateSnapshot.md)」を参照してください。

マルチ AZ DB クラスターの DB スナップショットの作成については、「[Amazon RDS のマルチ AZ DB クラスターのスナップショットの作成](USER_CreateMultiAZDBClusterSnapshot.md)」を参照してください。

DB スナップショットの削除については、「[Amazon RDS の DB スナップショットの削除](USER_DeleteSnapshot.md)」を参照してください。

# Amazon RDS のシングル AZ DB インスタンスの DB スナップショットの作成
<a name="USER_CreateSnapshot"></a>

Amazon RDS は DB インスタンスのストレージボリュームのスナップショットを作成し、個々のデータベースだけではなく、その DB インスタンス全体をバックアップします。Single-AZ DB インスタンスでこの DB スナップショットを作成すると、I/O が短時間中断します。この時間は、DB インスタンスのサイズやクラスによって異なり、数秒から数分になります。MariaDB、MySQL、Oracle、PostgreSQL の場合、バックアップはスタンバイから取得されるため、マルチ AZ 配置のバックアップ中プライマリで I/O アクティビティは中断しません。SQL Server の場合、マルチ AZ 配置のバックアップ中 I/O アクティビティが一時中断します。

DB スナップショットを作成したら、バックアップする DB インスタンスを識別した後、DB スナップショットに名前を付けて後で復元できるようにする必要があります。スナップショットの作成にかかる時間は、データベースのサイズによって異なります。スナップショットにはストレージボリューム全体が含まれているため、テンポラリファイルなどのファイルのサイズも、スナップショットを作成するための時間に影響します。

**注記**  
DB スナップショットを行うには、DB インスタンスが `available` 状態になっている必要があります。  
PostgreSQL DB インスタンスの場合、ログに記録されていないテーブルのデータはスナップショットから復元されないことがあります。詳細については、「[PostgreSQL を使用するためのベストプラクティス](CHAP_BestPractices.md#CHAP_BestPractices.PostgreSQL)」を参照してください。

自動バックアップとは異なり、手動スナップショットはバックアップ保持期間の影響を受けません。スナップショットは期限切れになりません。

MariaDB、MySQL、および PostgreSQL データの非常に長期間のバックアップの場合、スナップショットデータを Amazon S3 にエクスポートすることをお勧めします。DB エンジンのメジャーバージョンがサポートされなくなった場合、スナップショットからそのバージョンに復元することはできません。詳細については、「[Amazon RDS の Amazon S3 への DB スナップショットデータのエクスポート](USER_ExportSnapshot.md)」を参照してください。

AWS マネジメントコンソール、AWS CLI、または RDS API を使用して DB スナップショットを作成できます。

## コンソール
<a name="USER_CreateSnapshot.CON"></a>

**DB スナップショットを作成するには**

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

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

   **手動スナップショット**リストが表示されます。

1. **[スナップショットの取得]** を選択します。

   **[Take DB snapshot]** (DB スナップショットの取得) ウィンドウが表示されます。  
![\[スナップショットを取得します。\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/take_db_snapshot.png)

1. **[DB インスタンス]** のリストで、スナップショットを取得する DB インスタンスを選択します。

1. **[スナップショット名]** を入力します。

1. **[スナップショットの取得]** を選択します。

**[スナップショット]** ページが表示され、新しい DB スナップショットのステータスが「`Creating`」として表示されます。ステータスが `Available` になると、その作成時間が表示されます。

## AWS CLI
<a name="USER_CreateSnapshot.CLI"></a>

AWS CLI を使用して DB スナップショットを作成したら、バックアップする DB インスタンスを識別した後、DB スナップショットに名前を付けて後で復元できるようにする必要があります。そのためには、以下のパラメータを指定して AWS CLI の [https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-snapshot.html) コマンドを使用します。
+ `--db-instance-identifier`
+ `--db-snapshot-identifier`

この例では、*mydbinstance* という DB インスタンスに *mydbsnapshot* という DB スナップショットを作成します。

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

```
1. aws rds create-db-snapshot \
2.     --db-instance-identifier mydbinstance \
3.     --db-snapshot-identifier mydbsnapshot
```
Windows の場合:  

```
1. aws rds create-db-snapshot ^
2.     --db-instance-identifier mydbinstance ^
3.     --db-snapshot-identifier mydbsnapshot
```

## RDS API
<a name="USER_CreateSnapshot.API"></a>

Amazon RDS API を使用して DB スナップショットを作成したら、バックアップする DB インスタンスを識別した後、DB スナップショットに名前を付けて後で復元できるようにする必要があります。そのためには、以下のパラメータを指定して Amazon RDS API の [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBSnapshot.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBSnapshot.html) コマンドを使用します。
+ `DBInstanceIdentifier`
+ `DBSnapshotIdentifier`

# Amazon RDS のマルチ AZ DB クラスターのスナップショットの作成
<a name="USER_CreateMultiAZDBClusterSnapshot"></a>

マルチ AZ DB クラスタースナップショットを作成したら、バックアップするマルチ AZ DB クラスターを特定してから、DB クラスタースナップショットに名前を付けて後で復元できるようにする必要があります。マルチ AZ DB クラスターのスナップを共有することもできます。手順については、[Amazon RDS の DB スナップショットを共有する](USER_ShareSnapshot.md) を参照してください。

AWS マネジメントコンソール、AWS CLI、または RDS API を使用して、マルチ AZ DB クラスター スナップショットを作成できます。

非常に長期間のバックアップの場合、スナップショットデータを Amazon S3 にエクスポートすることをお勧めします。DB エンジンのメジャーバージョンがサポートされなくなった場合、スナップショットからそのバージョンに復元することはできません。詳細については、「[Amazon RDS の Amazon S3 への DB スナップショットデータのエクスポート](USER_ExportSnapshot.md)」を参照してください。

## コンソール
<a name="USER_CreateMultiAZDBClusterSnapshot.CON"></a>

**DB クラスタースナップショットを作成するには**

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

1. ナビゲーションペインで、**データベース**を選択します。

1. リストで、スナップショットを作成したいマルチ AZ DB クラスターを選択します。

1. **[アクション]** で、**[スナップショットの取得]** を選択します。

   **[Take DB snapshot]** (DB スナップショットの取得) ウィンドウが表示されます。

1. **[スナップショット名]** に、スナップショットの名前を入力します。

1. **[スナップショットの取得]** を選択します。

**スナップショット**ページが表示され、新しい マルチ AZ DB スナップショットのステータスが`Creating`として表示されます。ステータスが `Available` になると、その作成時間が表示されます。

## AWS CLI
<a name="USER_CreateMultiAZDBClusterSnapshot.CLI"></a>

次のオプションを指定してAWS CLI[create-db-cluster-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/create-db-cluster-snapshot.html)コマンドを使用すると、マルチ AZ DB クラスタースナップショットを作成できます。
+ `--db-cluster-identifier`
+ `--db-cluster-snapshot-identifier`

この例では、*`mymultiazdbcluster`* という DB クラスターの *`mymultiazdbclustersnapshot`* というマルチ AZ DB クラスタースナップショットを作成します。

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

```
1. aws rds create-db-cluster-snapshot \
2.     --db-cluster-identifier mymultiazdbcluster \
3.     --db-cluster-snapshot-identifier mymultiazdbclustersnapshot
```
Windows の場合:  

```
1. aws rds create-db-cluster-snapshot ^
2.     --db-cluster-identifier mymultiazdbcluster ^
3.     --db-cluster snapshot-identifier mymultiazdbclustersnapshot
```

## RDS API
<a name="USER_CreateMultiAZDBClusterSnapshot.API"></a>

次のパラメータを指定して Amazon RDS API [CreateDBClusterSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_CreateDBClusterSnapshot.html)オペレーションを使用すると、マルチ AZ DB クラスタースナップショットを作成できます。
+ `DBClusterIdentifier`
+ `DBClusterSnapshotIdentifier`

## マルチ AZ DB クラスターのスナップショットの削除
<a name="USER_DeleteMultiAZDBClusterSnapshot"></a>

Amazon RDS によって管理されているマルチ AZ DB のスナップショットは、不要になったら削除できます。手順については、[Amazon RDS の DB スナップショットの削除](USER_DeleteSnapshot.md) を参照してください。

# Amazon RDS の DB スナップショットの削除
<a name="USER_DeleteSnapshot"></a>

Amazon RDS で管理されている DB のスナップショットは、不要になったら削除することができます。

**注記**  
AWS Backup で管理されているバックアップを削除するには、AWS Backup コンソールを使用します。AWS Backup の詳細については、「[https://docs.aws.amazon.com/aws-backup/latest/devguide](https://docs.aws.amazon.com/aws-backup/latest/devguide)」を参照してください。

## DB スナップショットの削除
<a name="USER_DeleteRDSSnapshot"></a>

手動、共有、またはパブリックの DB スナップショットを削除するには、AWS マネジメントコンソール、AWS CLI、または RDS API を使用します。

共有またはパブリックのスナップショットを削除するには、そのスナップショットを所有する AWS アカウントにサインインする必要があります。

DB インスタンスを削除せずに削除する自動 DB スナップショットがある場合は、DB インスタンスのバックアップ保持期間を 0 に変更します。自動スナップショットは、変更適用時に削除されます。次回メンテナンス期間まで待機せずに、即時に変更を適用することもできます。変更が完了したら、バックアップ保持期間を 0 を超える値に設定することで、自動バックアップを再度有効にすることができます。DB インスタンスの変更については、[Amazon RDS DB インスタンスを変更する](Overview.DBInstance.Modifying.md)を参照してください。

自動バックアップと手動スナップショットを保持すると、削除されるまで請求が発生します。詳細については、「[保持コスト](USER_WorkingWithAutomatedBackups.Retaining.md#USER_WorkingWithAutomatedBackups.RetentionCosts)」を参照してください。

DB インスタンスを削除したら、その DB インスタンスの自動バックアップを削除することで、自動 DB スナップショットを削除することができます。自動バックアップの詳細については、「[バックアップの概要](USER_WorkingWithAutomatedBackups.md)」を参照してください。

### コンソール
<a name="USER_DeleteSnapshot.CON"></a>

**DB スナップショットを削除するには**

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

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

   **手動スナップショット**リストが表示されます。

1. 削除する DB スナップショットを選択します。

1. 「**アクション**」 で、「**スナップショットの削除**」 を選択します。  
![\[スナップショットを削除する\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/delete-snapshot.png)

1. 確認ページで、「**削除**」 を選択します。  
![\[スナップショットの削除を確認\]](http://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/images/delete-snapshot-confirm.png)

### AWS CLI
<a name="USER_DeleteSnapshot.CLI"></a>

DB スナップショットを削除するには、AWS CLI の [delete-db-snapshot](https://docs.aws.amazon.com/cli/latest/reference/rds/delete-db-snapshot.html) コマンドを使用します。

DB スナップショットを削除するには、以下のオプションを使用します。
+ `--db-snapshot-identifier` - DB スナップショットの識別子。

**Example**  
次のコードは、DB スナップショット `mydbsnapshot` を削除します。  
Linux、macOS、Unix の場合:  

```
1. aws rds delete-db-snapshot \
2.     --db-snapshot-identifier mydbsnapshot
```
Windows の場合:  

```
1. aws rds delete-db-snapshot ^
2.     --db-snapshot-identifier mydbsnapshot
```

### RDS API
<a name="USER_DeleteSnapshot.API"></a>

DB スナップショットを削除するには、Amazon RDS API オペレーションの [DeleteDBSnapshot](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DeleteDBSnapshot.html) を使用します。

DB スナップショットを削除するには、以下のパラメータを使用します。
+ `DBSnapshotIdentifier` - DB スナップショットの識別子。