Copiar um snapshot de banco de dados - Amazon Relational Database Service

Copiar um snapshot de banco de dados

Com o Amazon RDS, é possível copiar snapshots de banco de dados manuais ou backups automatizados. Depois de copiar um snapshot, a cópia é um snapshot manual. É possível fazer várias cópias de um backup automatizado ou snapshot manual, mas cada um deve ter um identificador exclusivo.

É possível copiar um snapshot dentro da mesma Região da AWS ou entre Regiões da AWS e também copiar snapshots compartilhados.

Limitações

Algumas limitações ao copiar snapshots:

  • Você não pode copiar um snapshot de ou para as regiões China (Pequim) ou China (Ningxia).

  • Você pode copiar um snapshot entre a AWS GovCloud (Leste dos EUA) e AWS GovCloud (US-West). No entanto, você não pode copiar um snapshot entre essas regiões GovCloud (EUA) e regiões que não são GovCloud (EUA).

  • Se você excluir um snapshot de origem antes que o snapshot de destino fique disponível, a cópia do snapshot poderá falhar. Verifique se o snapshot de destino possui um status AVAILABLE antes de excluir um snapshot de origem.

  • Você pode ter até 20 solicitações de cópia de snapshot em andamento para uma única região de destino por conta.

  • Quando você solicita várias cópias de snapshot para a mesma instância de banco de dados de origem, elas são colocadas em fila internamente. As cópias solicitadas posteriormente não serão iniciadas enquanto as cópias de snapshots anteriores não forem concluídas. Para obter mais informações, consulte Por que a criação de snapshots do EC2 AMI ou do EBS está lenta? na Central de Conhecimento da AWS.

  • Dependendo das Regiões da AWS envolvidas e da quantidade de dados a serem copiados, uma cópia de snapshot entre regiões pode levar horas para ser concluída. Em alguns casos, pode haver um grande número de solicitações de cópia de snapshot entre regiões a partir de uma determinada região de origem da . Nesses casos, o Amazon RDS pode colocar novas solicitações de cópia entre regiões vindas daquela região da de origem em uma fila até que algumas cópias em andamento sejam concluídas. Nenhuma informação de progresso é exibida sobre solicitações de cópia enquanto elas estão na fila. As informações sobre o andamento são exibidas quando a cópia é iniciada.

  • Se uma cópia ainda estiver pendente quando outra cópia for iniciada, esta será iniciada somente após a primeira ser concluída.

  • Não é possível copiar um snapshot de um cluster de banco de dados multi-AZ.

Retenção de snapshots

O Amazon RDS exclui snapshots automatizados em várias situações:

  • Ao final do período de retenção.

  • Quando você desabilita os backups automatizados de uma instância de banco de dados.

  • Quando você exclui uma instância de banco de dados.

Se quiser manter um backup automatizado por um período mais longo, copie-o para criar um snapshot manual, que é retido até você excluí-lo. Os custos de armazenamento do Amazon RDS podem se aplicar a snapshots manuais, caso excedam seu espaço de armazenamento padrão.

Para obter mais informações sobre os custos de armazenamento de backup, consulte Definição de preço do Amazon RDS.

Copiar snapshots compartilhados

Você pode copiar snapshots compartilhados com você por outras Contas da AWS. Em alguns casos, é possível copiar um snapshot criptografado que tenha sido compartilhado de outra Conta da AWS. Nesses casos, você deve ter acesso à AWS KMS key usada para criptografar o snapshot.

Será possível copiar um snapshot de banco de dados compartilhado entre Regiões da AWS, se o snapshot não estiver criptografado. No entanto, se o snapshot de banco de dados compartilhado estiver criptografado, você poderá copiá-lo apenas na mesma região.

nota

Copiar snapshots incrementais compartilhados na mesma Região da AWS é uma ação aceita quando estes não estão criptografados ou quando estão criptografados com a mesma chave do KMS do snapshot completo inicial. Se você usar uma chave do KMS diferente para criptografar snapshots subsequentes ao copiá-los, esses snapshots compartilhados serão completos. Para obter mais informações, consulteCópias incrementais de snapshot

Lidar com a criptografia

É possível copiar um snapshot que tenha sido criptografado usando uma chave do KMS. Se você copiar um snapshot criptografado, a cópia desse snapshot também deverá ser criptografada. Se você copiar um snapshot criptografado dentro da mesma Região da AWS, poderá criptografar a cópia com a mesma chave do KMS que o snapshot original. Ou você pode especificar uma chave do KMS diferente.

Se você copiar um snapshot criptografado entre regiões, deverá especificar uma chave do KMS válida na Região da AWS de destino. Pode ser uma chave do KMS específica da região ou uma chave de várias regiões. Para obter mais informações sobre chaves do KMS de várias regiões, consulte Usar chaves de várias regiões no AWS KMS.

O snapshot de origem permanece criptografado ao longo do processo de cópia. Para obter mais informações, consulte Limitações das instâncias de banco de dados criptografados do Amazon RDS.

Você também pode criptografar uma cópia de um snapshot não criptografado. Dessa maneira, você pode adicionar rapidamente a criptografia a uma instância de banco de dados não criptografada anteriormente. Para fazer isso, você pode criar um snapshot da instância de banco de dados quando estiver tudo pronto para criptografá-lo. Em seguida, você cria uma cópia desse snapshot e especifica uma chave do KMS para criptografar essa cópia de snapshot. Assim, você pode restaurar uma instância de banco de dados criptografado do snapshot criptografado.

Cópias incrementais de snapshot

Um snapshot incremental contém somente os dados que foram alterados após o snapshot mais recente da mesma instância de banco de dados. A cópia incremental de snapshot é mais rápida e resulta em custos menores de armazenamento do que a cópia completa de snapshot.

nota

Quando você copia um snapshot de origem que é uma cópia de snapshot em si, a nova cópia não é incremental. Isso ocorre porque a cópia do snapshot de origem não inclui os metadados necessários para cópias incrementais.

A determinação de se uma cópia do snapshot deve ser incremental é feita pela cópia do snapshot concluída mais recentemente. Se a cópia mais recente do snapshot tiver sido excluída, a próxima cópia será um cópia completa, não uma cópia incremental.

Ao copiar um snapshot entre Contas da AWS, a cópia será incremental apenas se todas as seguintes condições forem atendidas:

  • Um snapshot diferente da mesma instância de banco de dados de origem foi copiado anteriormente na conta de destino.

  • A cópia mais recente do snapshot ainda existe na região de destino.

  • Todas as cópias do snapshot na conta de destino foram feitas sem criptografia ou foram criptografadas usando a mesma chave do KMS.

  • Se a instância de banco de dados de origem for uma instância multi-AZ, ela não fez failover para outra AZ desde que o último snapshot dela foi criado.

Os exemplos a seguir ilustram a diferença entre snapshots completos e incrementais. Aplicam-se a snapshots compartilhados e não compartilhados.

Snapshot Chave de criptografia Completo ou incremental
S1 K1 Completo
S2 K1 Incremental de S1
S3 K1 Incremental de S2
S4 K1 Incremental de S3
Cópia de S1 (S1C) K2 Completo
Cópia de S2 (S2C) K3 Completo
Cópia de S3 (S3C) K3 Incremental de S2C
Cópia de S4 (S4C) K3 Incremental de S3C
Cópia 2 de S4 (S4C2) K4 Completo
nota

Nesses exemplos, os snapshots S2, S3 e S4 só serão incrementais se o snapshot anterior ainda existir.

O mesmo se aplica às cópias. As cópias dos snapshots S3C e S4C só serão incrementais se a cópia anterior ainda existir.

Para obter informações sobre como copiar snapshots incrementais entre Regiões da AWS, consulte Cópias completas e incrementais.

Cópia de snapshots entre regiões

É possível copiar snapshots de banco de dados entre Regiões da AWS. No entanto, existem certas restrições e considerações para a cópia de snapshot entre regiões.

Solicitações de cópia de snapshot de banco de dados entre regiões

Para se comunicar com a região de origem para solicitar uma cópia de snapshot de banco de dados entre regiões, o solicitante (função do IAM ou usuário do IAM) deve ter acesso ao snapshot do banco de dados de origem e à região de origem.

Certas condições na política do IAM do solicitante podem fazer com que a solicitação falhe. Os exemplos a seguir supõem que você está copiando o snapshot de banco de dados de Leste dos EUA (Ohio) para Leste dos EUA (N. da Virgínia). Estes exemplos mostram condições na política do IAM do solicitante que fazem com que a solicitação falhe:

  • A política do solicitante tem uma condição para aws:RequestedRegion.

    ... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": "us-east-1" } }

    A solicitação falha porque a política não permite acesso à região de origem. Para uma solicitação bem-sucedida, especifique as regiões de origem e de destino.

    ... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": "*", "Condition": { "StringEquals": { "aws:RequestedRegion": [ "us-east-1", "us-east-2" ] } }
  • A política do solicitante não permite acesso ao snapshot de banco de dados de origem.

    ... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": "arn:aws:rds:us-east-1:123456789012:snapshot:target-snapshot" ...

    Para uma solicitação bem-sucedida, especifique os snapshots de origem e de destino.

    ... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": [ "arn:aws:rds:us-east-1:123456789012:snapshot:target-snapshot", "arn:aws:rds:us-east-2:123456789012:snapshot:source-snapshot" ] ...
  • A política do solicitante nega aws:ViaAWSService.

    ... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": "*", "Condition": { "Bool": {"aws:ViaAWSService": "false"} }

    A comunicação com a região de origem é feita pelo RDS em nome do solicitante. Para uma solicitação bem-sucedida, não negue as chamadas feitas pelos serviços da AWS.

  • A política do solicitante tem uma condição para aws:SourceVpc ou aws:SourceVpce.

    Essas solicitações podem falhar, pois quando o RDS faz a chamada para a região remota, ela não é feita a partir da VPC ou VPC endpoint especificados.

Se você precisar usar uma das condições anteriores que causariam uma falha de uma solicitação, é possível incluir uma segunda instrução com aws:CalledVia em sua política, para fazer com que a solicitação seja bem-sucedida. Por exemplo, você pode usar aws:CalledVia com aws:SourceVpce como mostrado aqui:

... "Effect": "Allow", "Action": "rds:CopyDBSnapshot", "Resource": "*", "Condition": { "Condition" : { "ForAnyValue:StringEquals" : { "aws:SourceVpce": "vpce-1a2b3c4d" } } }, { "Effect": "Allow", "Action": [ "rds:CopyDBSnapshot" ], "Resource": "*", "Condition": { "ForAnyValue:StringEquals": { "aws:CalledVia": [ "rds.amazonaws.com" ] } } }

Para obter mais informações, consulte Políticas e permissões no IAM, no Guia do usuário do IAM.

Autorização da cópia do snapshot

Depois que uma solicitação de cópia de snapshot de banco de dados entre regiões retorna success, o RDS inicia a cópia em segundo plano. Uma autorização para o RDS acessar o snapshot de origem é criada. Essa autorização vincula o snapshot de banco de dados de origem ao snapshot de banco de dados de destino e permite que o RDS copie apenas para o snapshot de destino especificado.

A autorização é verificada pelo RDS usando a permissão rds:CrossRegionCommunication na função do IAM vinculada ao serviço. Se a cópia for autorizada, o RDS se comunica com a região de origem e conclui a cópia.

O RDS não tem acesso a snapshots de banco de dados que não foram autorizados anteriormente por uma solicitação de CopyDBSnapshot. A autorização é revogada quando a cópia é concluída.

O RDS usa a função vinculada ao serviço para verificar a autorização na região de origem. Se você excluir a função vinculada ao serviço durante o processo de cópia, ela falhará.

Para ter mais informações, consulte Usar funções vinculadas a serviço no Guia do usuário do IAM.

Uso de credenciais do AWS Security Token Service

Os tokens de sessão do endpoint global do AWS Security Token Service (AWS STS) são válidos apenas nas Regiões da AWS habilitadas por padrão (regiões comerciais). Se você usar credenciais da operação da API assumeRole no AWS STS, use o endpoint regional se a região de origem for uma região de aceitação. Caso contrário, haverá falha na solicitação. Isso acontece porque suas credenciais devem ser válidas em ambas as regiões, o que é verdadeiro para regiões opcionais somente quando o endpoint regional do AWS STS é usado.

Para usar o endpoint global, certifique-se de que ele esteja ativado para ambas as regiões nas operações. Defina o endpoint global como Valid in all Regiões da AWS nas configurações da conta do AWS STS.

A mesma regra se aplica às credenciais no parâmetro pre-signed URL.

Para obter mais informações, consulte Gerenciar o AWS STS em uma Região da AWS no Guia do usuário do IAM.

Latência e múltiplas solicitações de cópia

Dependendo das Regiões da AWS envolvidas e da quantidade de dados a serem copiados, uma cópia de snapshot entre regiões pode levar horas para ser concluída.

Em alguns casos, pode haver um grande número de solicitações de cópia de snapshot entre regiões de determinada Região da AWS de origem. Nesses casos, o Amazon RDS pode colocar novas solicitações de cópia entre regiões da Região da AWS de origem em uma fila até que algumas cópias em andamento sejam concluídas. Nenhuma informação sobre o andamento é exibida sobre as solicitações de cópia enquanto elas estão na fila. As informações de progresso são exibidas quando a cópia é iniciada.

Cópias completas e incrementais

Ao copiar um snapshot para uma Região da AWS diferente do snapshot de origem, a primeira cópia é uma cópia completa do snapshot, mesmo que você copie um snapshot incremental. Uma cópia completa de snapshot contém todos os dados e metadados necessários para restaurar a instância de banco de dados. Após a primeira cópia do snapshot, será possível copiar snapshots incrementais da mesma instância de bancos de dados para a mesma região de destino na mesma Conta da AWS. Para obter mais informações sobre snapshots incrementais, consulte Cópias incrementais de snapshot.

A cópia incremental de snapshot entre Regiões da AWS é compatível com snapshots criptografados e não criptografados.

Ao copiar um snapshot entre Regiões da AWS, a cópia será uma cópia incremental se as seguintes condições forem atendidas:

  • O snapshot foi copiado anteriormente na região de destino.

  • A cópia mais recente do snapshot ainda existe na região de destino.

  • Todas as cópias do snapshot na região de destino foram feitas sem criptografia ou foram criptografadas usando a mesma chave do KMS.

Considerações de grupos de opções

Grupos de opções de banco de dados são específicos da Região da AWS em que são criados, e você não pode usar um grupo de opções de uma Região da AWS em outra Região da AWS.

Para bancos de dados Oracle, você pode usar a AWS CLI ou a API do RDS para copiar o grupo de opções de banco de dados personalizado de um snapshot que foi compartilhado com sua Conta da AWS. Você só pode copiar grupos de opções dentro da mesma Região da AWS. O grupo de opções não será copiado se já tiver sido copiado na conta de destino e nenhuma alteração tiver sido feita nele desde que foi copiado. Se o grupo de opções de origem tiver sido copiado antes, mas tiver sido alterado desde que foi copiado, o RDS copiará a nova versão na conta de destino. Os grupos de opções padrão não são copiados.

Quando você copia um snapshot entre regiões, pode especificar um novo grupo de opções para o snapshot. Recomendamos que você prepare o novo grupo de opções antes de copiar o snapshot. Na Região da AWS de destino, crie um grupo de opções com as mesmas configurações que a instância de banco de dados original. É possível usar um grupo de parâmetros já existente na nova Região da AWS.

Em alguns casos, você pode copiar um snapshot e não especificar um novo grupo de opções para o snapshot. Nesses casos, ao restaurar o snapshot, a instância de banco de dados obtém o grupo de opções padrão. Para dar à nova instância de banco de dados as mesmas opções que a original, faça o seguinte:

  1. Na Região da AWS de destino, crie um grupo de opções com as mesmas configurações que a instância de banco de dados original. É possível usar um grupo de parâmetros já existente na nova Região da AWS.

  2. Depois de restaurar o snapshot na Região da AWS de destino, modifique a nova instância de banco de dados e adicione o grupo de opções novo ou existente da etapa anterior.

Considerações de grupos de parâmetros

Ao copiar um snapshot entre regiões, a cópia não inclui o grupo de parâmetros usado pela instância de banco de dados original. Ao restaurar um snapshot para criar uma nova instancia de banco de dados, essa instância de banco de dados obtém o grupo de parâmetros padrão da Região da AWS na qual ela foi criada. Para dar à nova instância de banco de dados os mesmos parâmetros da original, faça o seguinte:

  1. Na Região da AWS de destino, crie um grupo de parâmetros de banco de dados com as mesmas configurações que a instância de banco de dados original. É possível usar um grupo de parâmetros já existente na nova Região da AWS.

  2. Depois de restaurar o snapshot na Região da AWS de destino, modifique a nova instância de banco de dados e adicione o grupo de parâmetros novo ou existente da etapa anterior.

Copiar um snapshot de banco de dados

Use os procedimentos neste tópico para copiar um snapshot de banco de dados. Para obter uma visão geral de como copiar um snapshot, consulte Copiar um snapshot de banco de dados

Para cada Conta da AWS, é possível copiar até vinte snapshots de banco de dados por vez de uma Região da AWS em outra. Se copiar um snapshot de banco de dados para outra Região da AWS, você criará um snapshot de banco de dados manual que será retido nessa Região da AWS. Copiar um snapshot de banco de dados fora da Região da AWS de origem resultará em cobranças de transferência de dados do Amazon RDS.

Para obter mais informações sobre a definição de preço da transferência de dados, consulte Definição de preço do Amazon RDS.

Depois que a cópia do snapshot de banco de dados tiver sido criada na nova Região da AWS, ela se comportará da mesma forma como todos os outros snapshots de banco de dados nessa Região da AWS.

Você pode copiar um snapshot de banco de dados usando o AWS Management Console, a AWS CLI ou a API do RDS.

O procedimento a seguir copia um snapshot de banco de dados criptografado ou não criptografado na mesma Região da AWS, ou entre regiões, usando o AWS Management Console.

Para copiar um snapshot de banco de dados
  1. Faça login no AWS Management Console e abra o console do Amazon RDS em https://console.aws.amazon.com/rds/.

  2. No painel de navegação, escolha Snapshots.

  3. Selecione o snapshot de banco de dados que você deseja copiar.

  4. Para Actions (Ações), escolha Copy Snapshot (Copiar snapshot).

    A página Copy snapshot (Copiar instantâneo) aparece.

    
                                Copiar um snapshot de banco de dados
  5. Em Target option group (Grupo de opções de destino), selecione um novo grupo de opções.

    Especifique essa opção se estiver copiando um snapshot de uma Região da AWS para outra, e sua instância de banco de dados usar um grupo de opções diferente do padrão.

    Se a sua instância de banco de dados de origem usar a Transparent Data Encryption for Oracle ou o Microsoft SQL Server, você deverá especificar essa opção ao fazer cópias entre regiões. Para ter mais informações, consulte Considerações de grupos de opções.

  6. (Opcional) Para copiar o snapshot de banco de dados para uma Região da AWS diferente, em Destination Region (Região de destino), escolha a nova Região da AWS.

    nota

    A Região da AWS de destino deve ter a mesma versão de mecanismo de banco de dados disponível que a Região da AWS de origem.

  7. Em New DB snapshot identifier (Novo identificador de snapshot de banco de dados), digite o nome da cópia do snapshot de banco de dados.

    É possível fazer várias cópias de um backup automatizado ou snapshot manual, mas cada cópia deve ter um identificador exclusivo.

  8. (Opcional) Selecione Copy Tags (Copiar tags) para copiar tags e valores do snapshot para a cópia do snapshot.

  9. (Opcional) Para Encryption (Criptografia), faça o seguinte:

    1. Escolha Enable encryption (Habilitar criptografia), se o snapshot de banco de dados não estiver criptografado, mas você quiser criptografar a cópia.

      nota

      Se o snapshot de banco de dados estiver criptografado, você deverá criptografar a cópia, portanto a caixa de seleção já estará marcada.

    2. Em AWS KMS key, especifique o identificador da chave do KMS a ser usado para criptografar a cópia do snapshot do banco de dados.

  10. Escolha Copy snapshot (Copiar snapshot).

Você pode copiar um snapshot de banco de dados usando o comando copy-db-snapshot da AWS CLI. Se você estiver copiando o snapshot para uma nova Região da AWS, execute o comando na nova Região da AWS.

As seguintes opções são usadas para copiar um snapshot de banco de dados. Nem todas as opções são necessárias para todos os cenários. Use as descrições e os exemplos a seguir para determinar quais opções usar.

  • --source-db-snapshot-identifier – O identificador do snapshot de banco de dados de origem.

    • Se o snapshot de origem estiver na mesma Região da AWS que a cópia, especifique um identificador de snapshot de banco de dados válido. Por exemplo, rds:mysql-instance1-snapshot-20130805.

    • Se o snapshot de origem estiver na mesma Região da AWS que a cópia e tiver sido compartilhado com sua Conta da AWS, especifique um ARN de snapshot de banco de dados válido. Por exemplo, arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805.

    • Se o snapshot de origem estiver em uma Região da AWS diferente da cópia, especifique um ARN válido do snapshot de banco de dados. Por exemplo, arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805.

    • Se você estiver copiando a partir de um snapshot de banco de dados manual compartilhado, esse parâmetro deverá ser o nome de recurso da Amazon (ARN) desse snapshot.

    • Se você estiver copiando um snapshot criptografado, esse parâmetro deverá estar no formato ARN para a Região da AWS de origem e deverá corresponder a SourceDBSnapshotIdentifier no parâmetro PreSignedUrl.

  • --target-db-snapshot-identifier – O identificador da nova cópia do snapshot de banco de dados criptografado.

  • --copy-option-group: copie o grupo de opções de um snapshot que foi compartilhado com sua Conta da AWS.

  • --copy-tags – Incluir a opção de copiar tags para copiar tags e valores do snapshot para a cópia do snapshot.

  • --option-group-name – O grupo de opções a ser associado à cópia do snapshot.

    Especifique essa opção se estiver copiando um snapshot de uma Região da AWS para outra, e sua instância de Bancos de Dados usar um grupo de opções não padrão.

    Se a sua instância de banco de dados de origem usar a Transparent Data Encryption for Oracle ou o Microsoft SQL Server, você deverá especificar essa opção ao fazer cópias entre regiões. Para obter mais informações, consulteConsiderações de grupos de opções

  • --kms-key-id: o identificador da chave do KMS para um snapshot do banco de dados criptografado. O identificador da chave do KMS é o nome do recurso da Amazon (ARN), o identificador de chave ou o alias da chave da chave do KMS.

    • Se você copiar um snapshot do banco de dados criptografado da Conta da AWS, poderá especificar um valor para esse parâmetro para criptografar a cópia com uma nova chave do KMS. Se você não especificar um valor para esse parâmetro, a cópia do snapshot de banco de dados será criptografada com a mesma chave do KMS que o snapshot de banco de dados de origem.

    • Se você copiar um snapshot do banco de dados criptografado que foi compartilhado de outra Conta da AWS, deverá especificar um valor para esse parâmetro.

    • Se você especificar esse parâmetro ao copiar um snapshot não criptografado, a cópia será criptografada.

    • Ao copiar um snapshot criptografado para outra Região da AWS, você deve especificar uma chave do KMS para a Região da AWS de destino. As chaves do KMS são específicas da Região da AWS em que são criadas. Não é possível usar chaves de criptografia de uma Região da AWS em outra Região da AWS.

exemplo de não criptografado, para a mesma região

O código a seguir cria uma cópia de um snapshot, com o novo nome mydbsnapshotcopy, na mesma Região da AWS que o snapshot de origem. Quando a cópia é feita, o grupo de opções de banco de dados e as tags no snapshot original são copiados na cópia do snapshot.

Para Linux, macOS ou Unix:

aws rds copy-db-snapshot \ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805 \ --target-db-snapshot-identifier mydbsnapshotcopy \ --copy-option-group \ --copy-tags

Para Windows:

aws rds copy-db-snapshot ^ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805 ^ --target-db-snapshot-identifier mydbsnapshotcopy ^ --copy-option-group ^ --copy-tags
exemplo de não criptografado, entre regiões

O código a seguir cria uma cópia de um snapshot, com o novo nome mydbsnapshotcopy, na Região da AWS em que o comando é executado.

Para Linux, macOS ou Unix:

aws rds copy-db-snapshot \ --source-db-snapshot-identifier arn:aws:rds:us-east-1:123456789012:snapshot:mysql-instance1-snapshot-20130805 \ --target-db-snapshot-identifier mydbsnapshotcopy

Para Windows:

aws rds copy-db-snapshot ^ --source-db-snapshot-identifier arn:aws:rds:us-east-1:123456789012:snapshot:mysql-instance1-snapshot-20130805 ^ --target-db-snapshot-identifier mydbsnapshotcopy
exemplo de criptografado, entre regiões

O exemplo de código a seguir copia um snapshot de banco de dados criptografado da região Oeste dos EUA (Oregon) para a região Leste dos EUA (N. da Virgínia). Execute o comando na região de destino (us-east-1).

Para Linux, macOS ou Unix:

aws rds copy-db-snapshot \ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115 \ --target-db-snapshot-identifier mydbsnapshotcopy \ --kms-key-id my-us-east-1-key \ --option-group-name custom-option-group-name

Para Windows:

aws rds copy-db-snapshot ^ --source-db-snapshot-identifier arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115 ^ --target-db-snapshot-identifier mydbsnapshotcopy ^ --kms-key-id my-us-east-1-key ^ --option-group-name custom-option-group-name

O parâmetro --source-region é necessário quando você está copiando um snapshot criptografado entre as regiões GovCloud (Leste dos EUA) da AWS e GovCloud (Oeste dos EUA) da AWS. Em --source-region, especifique a Região da AWS da instância de banco de dados de origem.

Se a --source-region não estiver especificada, especifique um valor de --pre-signed-url. Uma presigned URL é um URL que contém uma solicitação assinada do Signature Versão 4 para o comando copy-db-snapshot chamado na Região da AWS de origem. Para saber mais sobre a opção pre-signed-url, consulte copy-db-snapshot na Referência de comandos da AWS CLI.

É possível copiar um snapshot de banco de dados usando a operação CopyDBSnapshot da API do Amazon RDS. Se estiver copiando o snapshot para uma nova Região da AWS, execute a ação na nova Região da AWS.

As seguintes opções são usadas para copiar um snapshot de banco de dados. Nem todos os parâmetros são necessários para todos os cenários. Use as descrições e os exemplos a seguir para determinar quais parâmetros usar.

  • SourceDBSnapshotIdentifier – O identificador do snapshot de banco de dados de origem.

    • Se o snapshot de origem estiver na mesma Região da AWS que a cópia, especifique um identificador de snapshot de banco de dados válido. Por exemplo, rds:mysql-instance1-snapshot-20130805.

    • Se o snapshot de origem estiver na mesma Região da AWS que a cópia e tiver sido compartilhado com sua Conta da AWS, especifique um ARN de snapshot de banco de dados válido. Por exemplo, arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805.

    • Se o snapshot de origem estiver em uma Região da AWS diferente da cópia, especifique um ARN válido do snapshot de banco de dados. Por exemplo, arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805.

    • Se você estiver copiando a partir de um snapshot de banco de dados manual compartilhado, esse parâmetro deverá ser o nome de recurso da Amazon (ARN) desse snapshot.

    • Se você estiver copiando um snapshot criptografado, esse parâmetro deverá estar no formato ARN para a Região da AWS de origem e deverá corresponder a SourceDBSnapshotIdentifier no parâmetro PreSignedUrl.

  • TargetDBSnapshotIdentifier – O identificador da nova cópia do snapshot de banco de dados criptografado.

  • CopyOptionGroup: defina esse parâmetro como true para copiar o grupo de opções de um snapshot compartilhado na cópia do snapshot. O padrão é false.

  • CopyTags – Defina esse parâmetro como true para copiar tags e valores do snapshot para a cópia do snapshot. O padrão é false.

  • OptionGroupName – O grupo de opções a ser associado à cópia do snapshot.

    Especifique esse parâmetro se estiver copiando um snapshot de uma Região da AWS para outra, e sua instância de banco de dados usar um grupo de opções não padrão.

    Se a sua instância de banco de dados de origem usar a Transparent Data Encryption for Oracle ou o Microsoft SQL Server, você deverá especificar esse parâmetro ao fazer cópias entre regiões. Para obter mais informações, consulteConsiderações de grupos de opções

  • KmsKeyId: o identificador da chave do KMS para um snapshot do banco de dados criptografado. O identificador da chave do KMS é o nome do recurso da Amazon (ARN), o identificador de chave ou o alias da chave da chave do KMS.

    • Se você copiar um snapshot do banco de dados criptografado da Conta da AWS, poderá especificar um valor para esse parâmetro para criptografar a cópia com uma nova chave do KMS. Se você não especificar um valor para esse parâmetro, a cópia do snapshot de banco de dados será criptografada com a mesma chave do KMS que o snapshot de banco de dados de origem.

    • Se você copiar um snapshot do banco de dados criptografado que foi compartilhado de outra Conta da AWS, deverá especificar um valor para esse parâmetro.

    • Se você especificar esse parâmetro ao copiar um snapshot não criptografado, a cópia será criptografada.

    • Ao copiar um snapshot criptografado para outra Região da AWS, você deve especificar uma chave do KMS para a Região da AWS de destino. As chaves do KMS são específicas da Região da AWS em que são criadas. Não é possível usar chaves de criptografia de uma Região da AWS em outra Região da AWS.

  • PreSignedUrl: o URL que contém uma solicitação assinada do Signature versão 4 para a operação da API CopyDBSnapshot na Região da AWS de origem que contém o snapshot de banco de dados a ser copiado.

    Especifique esse parâmetro ao copiar um snapshot de banco de dados criptografado de outra Região da AWS usando a API do Amazon RDS. É possível especificar a opção da região de origem em vez desse parâmetro ao copiar um snapshot de banco de dados criptografado de outra Região da AWS usando a AWS CLI.

    O URL pré-assinado deve ser uma solicitação válida para a operação da API CopyDBSnapshot, que pode ser executada na Região da AWS de origem que contém o snapshot do banco de dados criptografado a ser copiado. A solicitação de URL pré-assinada deve conter os seguintes valores de parâmetros:

    • DestinationRegion: a Região da AWS para a qual o snapshot de banco de dados criptografado será copiado. Essa Região da AWS é a mesma em que a operação CopyDBSnapshot é chamada e que contém esse URL pré-assinado.

      Por exemplo, suponha que você copie um snapshot de banco de dados criptografado da região us-west-2 para a região us-east-1. Você, então, chama a operação CopyDBSnapshot na região us-east-1 e fornece um URL pré-assinado que contenha uma chamada para a operação CopyDBSnapshot na região us-west-2. Para esse exemplo, o DestinationRegion no URL pré-assinado deve ser definido para a região us-east-1.

    • KmsKeyId: o identificador da chave do KMS a ser usada para criptografar a cópia do snapshot do banco de dados na Região da AWS de destino. Esse é o mesmo identificador da operação CopyDBSnapshot, que é chamada na Região da AWS de destino, e da operação contida no URL pré-assinado.

    • SourceDBSnapshotIdentifier: o identificador de snapshot de banco de dados para o snapshot criptografado a ser copiado. Esse identificador deve estar no formato de nome do recurso da Amazon (ARN) da Região da AWS de origem Por exemplo, se você estiver copiando um snapshot de banco de dados criptografado da região us-west-2, o SourceDBSnapshotIdentifier se parecerá com o seguinte exemplo: arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115.

    Para obter mais informações sobre as solicitações assinadas do Signature versão 4, consulte o seguinte:

exemplo de não criptografado, para a mesma região

O código a seguir cria uma cópia de um snapshot, com o novo nome mydbsnapshotcopy, na mesma Região da AWS que o snapshot de origem. Quando a cópia é feita, todas as tags do snapshot original são copiadas para a cópia do snapshot.

https://rds.us-west-1.amazonaws.com/ ?Action=CopyDBSnapshot &CopyTags=true &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBSnapshotIdentifier=mysql-instance1-snapshot-20130805 &TargetDBSnapshotIdentifier=mydbsnapshotcopy &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
exemplo de não criptografado, entre regiões

O código a seguir cria uma cópia de um snapshot, com o novo nome mydbsnapshotcopy, na região Oeste dos EUA (Norte da Califórnia).

https://rds.us-west-1.amazonaws.com/ ?Action=CopyDBSnapshot &SignatureMethod=HmacSHA256 &SignatureVersion=4 &SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-east-1%3A123456789012%3Asnapshot%3Amysql-instance1-snapshot-20130805 &TargetDBSnapshotIdentifier=mydbsnapshotcopy &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
exemplo de criptografado, entre regiões

O código a seguir cria uma cópia de um snapshot, com o novo nome mydbsnapshotcopy, na região Leste dos EUA (N. da Virgínia).

https://rds.us-east-1.amazonaws.com/ ?Action=CopyDBSnapshot &KmsKeyId=my-us-east-1-key &OptionGroupName=custom-option-group-name &PreSignedUrl=https%253A%252F%252Frds.us-west-2.amazonaws.com%252F %253FAction%253DCopyDBSnapshot %2526DestinationRegion%253Dus-east-1 %2526KmsKeyId%253Dmy-us-east-1-key %2526SourceDBSnapshotIdentifier%253Darn%25253Aaws%25253Ards%25253Aus-west-2%25253A123456789012%25253Asnapshot%25253Amysql-instance1-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 &SourceDBSnapshotIdentifier=arn%3Aaws%3Ards%3Aus-west-2%3A123456789012%3Asnapshot%3Amysql-instance1-snapshot-20161115 &TargetDBSnapshotIdentifier=mydbsnapshotcopy &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