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

DB クラスタースナップショットのコピー

DB クラスタースナップショットをコピーするには、このトピックの手順を使用します。コピー元のデータベースエンジンが Aurora である場合、スナップショットは DB クラスタースナップショットになります。コピー元のデータベースエンジンが MariaDB、Microsoft SQL Server、MySQL、Oracle、または PostgreSQL である場合、スナップショットは DB スナップショットになります。DB スナップショットのコピー方法については、「DB スナップショットのコピー」を参照してください。

AWS アカウントごとに、AWS リージョン間で同時に 5 つまでの DB クラスタースナップショットをコピーできます。暗号化されている DB クラスタースナップショットと暗号化されていない DB クラスタースナップショットのどちらのコピーもサポートされています。別の AWS リージョンに DB クラスタースナップショットをコピーする場合には、その AWS リージョンに保持されている手動 DB クラスタースナップショットを作成します。コピー元の AWS リージョンから DB クラスタースナップショットをコピーすると、Amazon RDS ではデータ転送料金が発生します。

データ転送料金の詳細については、「Amazon RDS の料金」を参照してください。

DB クラスタースナップショットのコピーが新しい AWS リージョンに作成されると、その DB クラスタースナップショットのコピーは、AWS リージョンにある他のすべての DB スナップショットと同じように動作します。

AWS マネジメントコンソール

この手順は、同じ AWS リージョン内またはリージョン間で、暗号化されている DB クラスタースナップショットや暗号化されていない DB クラスタースナップショットをコピーするために使用できます。

コピーオペレーションが進行中にキャンセルするには、DB クラスタースナップショットが [copying] ステータスの間にターゲット DB クラスタースナップショットを削除します。

DB クラスタースナップショットをコピーするには

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

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

  3. コピーする DB スナップショットのチェックボックスをオンにします。

  4. [Snapshot Actions] を選択してから、[Copy Snapshot] を選択します。[Make Copy of DB Snapshot] ページが表示されます。

     DB スナップショットのコピー
  5. (オプション) 別の AWS リージョンに DB クラスタースナップショットをコピーするには、[Destination Region] でその AWS リージョンを選択します。

  6. [New DB Snapshot Identifier:] に、DB クラスタースナップショットのコピーの名前を入力します。

  7. スナップショットからスナップショットのコピーにタグと値をコピーするには、[Copy Tags] を選択します。

  8. [Enable Encryption] で、次のいずれかのオプションを選択します。

    • DB クラスタースナップショットが暗号化されていなく、コピーを暗号化しない場合、[いいえ] を選択します。

    • DB クラスタースナップショットは暗号化されていないけれど、コピーを暗号化する場合、[はい] を選択します。この場合、[Master Key] で DB クラスタースナップショットのコピーを暗号化するために使用する KMS キー識別子を指定します。

    • DB クラスタースナップショットが暗号化されている場合は、[はい] を選択します。この場合、コピーを暗号化する必要があるため、[はい] がすでに選択されています。[Master Key] で、DB クラスタースナップショットの暗号化に使用する KMS キー識別子を指定します。

  9. [Copy Snapshot] を選択します。

AWS CLI または Amazon RDS API を使用して、暗号化されていない DB クラスタースナップショットをコピーする

AWS CLI または Amazon RDS API を使用して、暗号化されていない DB クラスタースナップショットをコピーするには、次のセクションの手順を使用します。

コピーオペレーションが進行中にキャンセルするには、DB クラスタースナップショットが [copying] ステータスの間に --target-db-cluster-snapshot-identifier または TargetDBClusterSnapshotIdentifier により識別されるターゲット DB クラスタースナップショットを削除します。

CLI

DB クラスタースナップショットをコピーするには、AWS CLI の copy-db-cluster-snapshot コマンドを使用します。スナップショットを別の AWS リージョンにコピーする場合、スナップショットのコピー先の AWS リージョンでコマンドを実行します。

暗号化されていない DB クラスタースナップショットのコピーには、以下のオプションが使用されます。

  • --source-db-cluster-snapshot-identifier – コピーする暗号化された DB クラスタースナップショットの識別子。別の AWS リージョンにスナップショットをコピーする場合、この識別子は元の AWS リージョンで ARN 形式である必要があります。

  • --target-db-cluster-snapshot-identifier – DB クラスタースナップショットの新しいコピーの識別子。

次のコードは、コマンドが実行される AWS リージョン内にある myclustersnapshotcopy という名前の DB クラスタースナップショット arn:aws:rds:us-east-1:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20130805 のコピーを作成します。コピーが作成されると、元のスナップショットのすべてのタグはコピーされたスナップショットにコピーされます。

Linux、OS X、Unix の場合:

Copy
aws rds copy-db-cluster-snapshot \ --source-db-cluster-snapshot-identifier arn:aws:rds:us-east-1:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20130805 \ --target-db-cluster-snapshot-identifier myclustersnapshotcopy \ --copy-tags

Windows の場合:

Copy
aws rds copy-db-cluster-snapshot ^ --source-db-cluster-snapshot-identifier arn:aws:rds:us-east-1:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20130805 ^ --target-db-cluster-snapshot-identifier myclustersnapshotcopy ^ --copy-tags

API

DB クラスタースナップショットをコピーするには、Amazon RDS API の CopyDBClusterSnapshot アクションを使用します。スナップショットを別の元の AWS リージョンにコピーする場合、スナップショットのコピー先の元の AWS リージョンでアクションを実行します。

暗号化されていない DB クラスタースナップショットのコピーには、以下のパラメーターが使用されます。

  • SourceDBClusterSnapshotIdentifier – コピーする暗号化された DB クラスタースナップショットの識別子。別の AWS リージョンにスナップショットをコピーする場合、この識別子は元の AWS リージョンで ARN 形式である必要があります。

  • TargetDBClusterSnapshotIdentifier – DB クラスタースナップショットの新しいコピーの識別子。

次のコードは、us-west-1 region で myclustersnapshotcopy という名前のスナップショット arn:aws:rds:us-east-1:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20130805 のコピーを作成します。コピーが作成されると、元のスナップショットのすべてのタグはコピーされたスナップショットにコピーされます。

Copy
https://rds.us-west-1.amazonaws.com/ ?Action=CopyDBClusterSnapshot &CopyTags=true &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-east-1%3A123456789012%3Acluster-snapshot%3Aaurora-cluster1-snapshot-20130805 &TargetDBSnapshotIdentifier=myclustersnapshotcopy &Version=2013-09-09 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20140429/us-west-1/rds/aws4_request &X-Amz-Date=20140429T175351Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=9164337efa99caf850e874a1cb7ef62f3cea29d0b448b9e0e7c53b288ddffed2

AWS CLI または Amazon RDS API を使用して、暗号化されている DB クラスタースナップショットをコピーする

AWS CLI または Amazon RDS API を使用して、暗号化されている DB クラスタースナップショットをコピーするには、次のセクションの手順を使用します。

コピーオペレーションが進行中にキャンセルするには、DB クラスタースナップショットが [copying] ステータスの間に --target-db-cluster-snapshot-identifier または TargetDBClusterSnapshotIdentifier により識別されるターゲット DB クラスタースナップショットを削除します。

CLI

DB クラスタースナップショットをコピーするには、AWS CLI の copy-db-cluster-snapshot コマンドを使用します。スナップショットを別の AWS リージョンにコピーする場合、スナップショットのコピー先の AWS リージョンでコマンドを実行します。

暗号化されている DB クラスタースナップショットのコピーには、以下のオプションが使用されます。

  • --source-region – スナップショットを別の AWS リージョンにコピーする場合、暗号化されている DB クラスタースナップショットのコピー元の AWS リージョンを指定します。

    スナップショットを別の AWS リージョンにコピーし、source-region を指定しない場合、代わりに pre-signed-url オプションを指定する必要があります。pre-signed-url 値は、DB クラスタースナップショットのコピー元の AWS リージョンで呼び出す CopyDBClusterSnapshot アクションのリクエストを含む署名バージョン 4 で署名された URL である必要があります。pre-signed-url の詳細については、「copy-db-cluster-snapshot」を参照してください。

  • --source-db-cluster-snapshot-identifier – コピーする暗号化された DB クラスタースナップショットの識別子。別の AWS リージョンにスナップショットをコピーする場合、この識別子は元の AWS リージョンで ARN 形式である必要があります。この場合、source-db-cluster-snapshot-identifier で指定した AWS リージョンは、--source-region で指定した AWS リージョンと一致している必要があります。

  • --target-db-cluster-snapshot-identifier – 暗号化された DB クラスタースナップショットの新しいコピーの識別子。

  • --kms-key-id – DB クラスタースナップショットのコピーを暗号化するのに使用するキーの KMS キー識別子。

    DB クラスタースナップショットが暗号化されており、同じ AWS リージョン内でスナップショットをコピーして、コピーの暗号化に使用する新しい KMS 暗号化キーを指定する場合は、オプションでこのオプションを使用できます。それ以外の場合、DB クラスタースナップショットのコピーがソース DB クラスタースナップショットと同じ KMS キーで暗号化されます。

    DB クラスタースナップショットが暗号化されており、スナップショットを別の AWS リージョンにコピーする場合は、このオプションを使用する必要があります。その場合、ターゲット AWS リージョンで KMS キーを指定する必要があります。

次のコード例では、us-west-2 リージョンから us-east-1 リージョンに暗号化された DB クラスタースナップショットをコピーします。このコマンドは、us-east-1 リージョンで呼び出されます。

Linux、OS X、Unix の場合:

Copy
aws rds copy-db-cluster-snapshot \ --source-db-cluster-snapshot-identifier arn:aws:rds:us-west-2:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20161115 \ --target-db-cluster-snapshot-identifier myclustersnapshotcopy \ --source-region us-west-2 \ --kms-key-id my-us-east-1-key

Windows の場合:

Copy
aws rds copy-db-cluster-snapshot ^ --source-db-cluster-snapshot-identifier arn:aws:rds:us-west-2:123456789012:cluster-snapshot:aurora-cluster1-snapshot-20161115 ^ --target-db-cluster-snapshot-identifier myclustersnapshotcopy ^ --source-region us-west-2 ^ --kms-key-id my-us-east-1-key

API

DB クラスタースナップショットをコピーするには、Amazon RDS API の CopyDBClusterSnapshot アクションを使用します。スナップショットを別の元の AWS リージョンにコピーする場合、スナップショットのコピー先の元の AWS リージョンでアクションを実行します。

暗号化されている DB クラスタースナップショットのコピーには、以下のパラメーターが使用されます。

  • SourceDBClusterSnapshotIdentifier – コピーする暗号化された DB クラスタースナップショットの識別子。別の AWS リージョンにスナップショットをコピーする場合、この識別子は元の AWS リージョンで ARN 形式である必要があります。

  • TargetDBClusterSnapshotIdentifier – 暗号化された DB クラスタースナップショットの新しいコピーの識別子。

  • KmsKeyId – DB クラスタースナップショットのコピーを暗号化するのに使用するキーの KMS キー識別子。

    DB クラスタースナップショットが暗号化されており、同じ AWS リージョン内でスナップショットをコピーして、コピーの暗号化に使用する新しい KMS 暗号化キーを指定する場合は、オプションでこのパラメーターを使用できます。それ以外の場合、DB クラスタースナップショットのコピーがソース DB クラスタースナップショットと同じ KMS キーで暗号化されます。

    DB クラスタースナップショットが暗号化されており、スナップショットを別の AWS リージョンにコピーする場合は、このパラメーターを使用する必要があります。その場合、ターゲット AWS リージョンで KMS キーを指定する必要があります。

  • PreSignedUrl – スナップショットを別の AWS リージョンにコピーする場合、PreSignedUrl パラメーターを指定する必要があります。PreSignedUrl 値は、DB クラスタースナップショットのコピー元の AWS リージョンで呼び出す CopyDBClusterSnapshot アクションのリクエストを含む署名バージョン 4 で署名された URL である必要があります。署名付き URL の詳細については、「CopyDBClusterSnapshot」を参照してください。

    署名付き URL を手動ではなく自動的に生成するには、--source-region オプションを使用して AWS CLI の copy-db-cluster-snapshot コマンドを使用します。

次のコード例では、us-west-2 リージョンから us-east-1 リージョンに暗号化された DB クラスタースナップショットをコピーします。このアクションは、us-east-1 リージョンで呼び出されます。

Copy
https://rds.us-east-1.amazonaws.com/ ?Action=CopyDBClusterSnapshot &KmsKeyId=my-us-east-1-key &PreSignedUrl=https%253A%252F%252Frds.us-west-2.amazonaws.com%252F %253FAction%253DCopyDBClusterSnapshot %2526DestinationRegion%253Dus-east-1 %2526KmsKeyId%253Dmy-us-east-1-key %2526SourceDBClusterSnapshotIdentifier%253Darn%25253Aaws%25253Ards%25253Aus-west-2%25253A123456789012%25253Acluster-snapshot%25253Aaurora-cluster1-snapshot-20161115 %2526SignatureMethod%253DHmacSHA256 %2526SignatureVersion%253D4 %2526Version%253D2014-10-31 %2526X-Amz-Algorithm%253DAWS4-HMAC-SHA256 %2526X-Amz-Credential%253DAKIADQKE4SARGYLE%252F20161117%252Fus-west-2%252Frds%252Faws4_request %2526X-Amz-Date%253D20161117T215409Z %2526X-Amz-Expires%253D3600 %2526X-Amz-SignedHeaders%253Dcontent-type%253Bhost%253Buser-agent%253Bx-amz-content-sha256%253Bx-amz-date %2526X-Amz-Signature%253D255a0f17b4e717d3b67fad163c3ec26573b882c03a65523522cf890a67fca613 &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBClusterSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-west-2%3A123456789012%3Acluster-snapshot%3Aaurora-cluster1-snapshot-20161115 &TargetDBClusterSnapshotIdentifier=myclustersnapshotcopy &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20161117/us-east-1/rds/aws4_request &X-Amz-Date=20161117T221704Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=da4f2da66739d2e722c85fcfd225dc27bba7e2b8dbea8d8612434378e52adccf

アカウント間での DB クラスタースナップショットのコピー

Amazon RDS API の ModifyDBClusterSnapshotAttribute アクションと CopyDBClusterSnapshot アクションを使用することで、他の AWS アカウントが、指定した DB クラスタースナップショットをコピーできるようにすることができます。DB クラスタースナップショットは、同じ AWS リージョンのアカウント間でのみコピーできます。クロスアカウントコピーは、アカウント A がコピー可能なスナップショットを作成した後、アカウント B がそれをコピーするというプロセスになります。

  1. アカウント A を使用し、ModifyDBClusterSnapshotAttribute パラメーターに restore を、AttributeName パラメーターにアカウント B の ID を指定して、ValuesToAdd を呼び出します。

  2. (スナップショットが暗号化されている場合) アカウント A を使用し、まずアカウント B の ARN を Principal として追加してから kms:CreateGrant アクションを許可し、KMS キーのキーポリシーを更新します。

  3. (スナップショットが暗号化されている場合) アカウント B を使用し、IAM ユーザーを選択するか作成してから、KMS キーを使用した暗号化されている DB スナップショットのコピーを許可する IAM ポリシーをそのユーザーにアタッチします。

  4. アカウント B を使用して CopyDBClusterSnapshot を呼び出し、SourceDBClusterSnapshotIdentifier パラメーターを使用して、コピーする DB クラスタースナップショットの ARN を指定します (アカウント A の ID を含める必要があります)。

DB スナップショットを復元する権限が付与されているすべての AWS アカウントをリストするには、DescribeDBSnapshotAttributes または DescribeDBClusterSnapshotAttributes API アクションを使用します。

AWS アカウントの共有アクセス権限を削除するには、AttributeNamerestore に設定して、ValuesToRemove パラメーターで削除するアカウントの ID を設定し、ModifyDBSnapshotAttribute アクションまたは ModifyDBClusterSnapshotAttribute アクションを使用します。

暗号化されていない DB クラスタースナップショットの別のアカウントへのコピー

暗号化されていない DB クラスタースナップショットを同じ AWS リージョン内の別のアカウントにコピーするには、以下の手順を使用します。

  1. DB クラスタースナップショットのソースアカウントで、ModifyDBClusterSnapshotAttribute パラメーターに restore を指定して AttributeName パラメーターにターゲットアカウントの ID を指定し、ValuesToAdd を呼び出します。

    アカウント 987654321 を使用して次の例を実行すると、2 つの AWS アカウント識別子 123451234512 および 123456789012manual-snapshot1 という名前の DB スナップショットを復元できるようになります。

    Copy
    https://rds.us-west-2.amazonaws.com/ ?Action=ModifyDBClusterSnapshotAttribute &AttributeName=restore &DBClusterSnapshotIdentifier=manual-snapshot1 &SignatureMethod=HmacSHA256&SignatureVersion=4 &ValuesToAdd.member.1=123451234512 &ValuesToAdd.member.2=123456789012 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150922/us-west-2/rds/aws4_request &X-Amz-Date=20150922T220515Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=ef38f1ce3dab4e1dbf113d8d2a265c67d17ece1999ffd36be85714ed36dddbb3
  2. ターゲットアカウントで、CopyDBClusterSnapshot を呼び出し、SourceDBClusterSnapshotIdentifier パラメーターを使用して、コピーする DB クラスタースナップショットの ARN を指定します (ソースアカウントの ID を含める必要があります)。

    アカウント 123451234512 を使用して次の例を実行すると、DB クラスターアカウント aurora-cluster1-snapshot-20130805 がアカウント 987654321 からコピーされ、dbclustersnapshot1 という名前の DB クラスタースナップショットが作成されます。

    Copy
    https://rds.us-west-2.amazonaws.com/ ?Action=CopyDBClusterSnapshot &CopyTags=true &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBClusterSnapshotIdentifier=arn:aws:rds:us-west-2:987654321:cluster-snapshot:aurora-cluster1-snapshot-20130805 &TargetDBClusterSnapshotIdentifier=dbclustersnapshot1 &Version=2013-09-09 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150922/us-west-2/rds/aws4_request &X-Amz-Date=20140429T175351Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=9164337efa99caf850e874a1cb7ef62f3cea29d0b448b9e0e7c53b288ddffed2

暗号化されている DB クラスタースナップショットの別のアカウントへのコピー

暗号化されている DB クラスタースナップショットを同じ AWS リージョン内の別のアカウントにコピーするには、以下の手順を使用します。

  1. DB クラスタースナップショットのソースアカウントで、ModifyDBClusterSnapshotAttribute パラメーターに restore を指定して AttributeName パラメーターにターゲットアカウントの ID を指定し、ValuesToAdd を呼び出します。

    アカウント 987654321 を使用して次の例を実行すると、2 つの AWS アカウント識別子 123451234512 および 123456789012manual-snapshot1 という名前の DB スナップショットを復元できるようになります。

    Copy
    https://rds.us-west-2.amazonaws.com/ ?Action=ModifyDBClusterSnapshotAttribute &AttributeName=restore &DBClusterSnapshotIdentifier=manual-snapshot1 &SignatureMethod=HmacSHA256&SignatureVersion=4 &ValuesToAdd.member.1=123451234512 &ValuesToAdd.member.2=123456789012 &Version=2014-10-31 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150922/us-west-2/rds/aws4_request &X-Amz-Date=20150922T220515Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=ef38f1ce3dab4e1dbf113d8d2a265c67d17ece1999ffd36be85714ed36dddbb3
  2. DB クラスタースナップショットのソースアカウントで、まずターゲットアカウントの ARN を Principal として追加してから kms:CreateGrant アクションを許可し、KMS キーのキーポリシーを更新します。詳細については、「AWS KMS 暗号化キーへのアクセス許可」を参照してください。

  3. ターゲットアカウントで、IAM ユーザーを選択するか作成し、KMS キーを使用した暗号化されている DB スナップショットのコピーを許可する IAM ポリシーをそのユーザーにアタッチします。詳細については、「暗号化されているスナップショットのコピーを可能にする IAM ポリシーの作成」を参照してください。

  4. ターゲットアカウントで、CopyDBClusterSnapshot を呼び出し、SourceDBClusterSnapshotIdentifier パラメーターを使用して、コピーする DB クラスタースナップショットの ARN を指定します (ソースアカウントの ID を含める必要があります)。

    アカウント 123451234512 を使用して次の例を実行すると、DB クラスターアカウント aurora-cluster1-snapshot-20130805 がアカウント 987654321 からコピーされ、dbclustersnapshot1 という名前の DB クラスタースナップショットが作成されます。

    Copy
    https://rds.us-west-2.amazonaws.com/ ?Action=CopyDBClusterSnapshot &CopyTags=true &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBClusterSnapshotIdentifier=arn:aws:rds:us-west-2:987654321:cluster-snapshot:aurora-cluster1-snapshot-20130805 &TargetDBClusterSnapshotIdentifier=dbclustersnapshot1 &Version=2013-09-09 &X-Amz-Algorithm=AWS4-HMAC-SHA256 &X-Amz-Credential=AKIADQKE4SARGYLE/20150922/us-west-2/rds/aws4_request &X-Amz-Date=20140429T175351Z &X-Amz-SignedHeaders=content-type;host;user-agent;x-amz-content-sha256;x-amz-date &X-Amz-Signature=9164337efa99caf850e874a1cb7ef62f3cea29d0b448b9e0e7c53b288ddffed2