

# Compartilhar um snapshot de banco de dados para o Amazon RDS
<a name="USER_ShareSnapshot"></a>

Com o Amazon RDS, é possível compartilhar um snapshot de banco de dados manual das seguintes formas:
+ Compartilhar um snapshot de banco de dados manual, seja criptografado ou não, permite que as Contas da AWS autorizadas copiem o snapshot.
+ Compartilhar um snapshot de banco de dados manual não criptografado permite que as Contas da AWS autorizadas restaurem diretamente uma instância de bancos de dados do snapshot em vez de fazer uma cópia dela e restaurar por meio dela. No entanto, não é possível restaurar uma instância de banco de dados a partir de um snapshot de banco de dados que seja compartilhado e criptografado. Em vez disso, você pode fazer uma cópia do snapshot de banco de dados e restaurar a instância de banco de dados a partir da cópia.

**nota**  
Para compartilhar um snapshot de banco de dados automatizado, crie um snapshot de banco de dados manual copiando o snapshot automatizado e compartilhe essa cópia. Esse processo também se aplica aos recursos gerados pelo AWS Backup.

Para obter mais informações sobre a cópia de um snapshot, consulte [Copiar um snapshot de banco de dados para o Amazon RDS](USER_CopySnapshot.md). Para obter mais informações sobre como restaurar uma instância de banco de dados de um snapshot de banco de dados, consulte [Restaurar uma instância de banco de dados](USER_RestoreFromSnapshot.md).

É possível compartilhar um snapshot manual com até 20 outras Contas da AWS.

As seguintes limitações se aplicam quando você compartilha snapshots manuais com outras Contas da AWS:
+ Ao restaurar uma instância de banco de dados de um snapshot compartilhado usando a AWS Command Line Interface (AWS CLI) ou a API do Amazon RDS, especifique o nome do recurso da Amazon (ARN) do snapshot compartilhado como o identificador do snapshot.
+ Não é possível compartilhar um snapshot de banco de dados que usa um grupo de opções com opções permanentes ou persistentes, exceto para instâncias de banco de dados Oracle que têm a opção `Timezone`, `OLS` ou ambas.

  Não é possível remover a *opção permanente* de um grupo de opções. Não é possível remover os grupos de opções contendo opções persistentes de uma instância de banco de dados depois que o grupo de opções já tiver sido atribuído à instância de banco de dados.

  A tabela a seguir enumera as opções permanentes e persistentes e os mecanismos de banco de dados relacionados a elas.    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/USER_ShareSnapshot.html)

  Para instâncias de banco de dados Oracle, é possível copiar snapshots de banco de dados compartilhados que tenham a opção `Timezone` ou `OLS` (ou ambas). Para fazer isso, especifique um grupo de opções de destino que inclua essas opções ao copiar o snapshot de banco de dados. A opção OLS é permanente e persistente apenas para instâncias de banco de dados Oracle executando o Oracle versão 12.2 ou superior. Para obter mais informações sobre essas opções, consulte [Fuso horário da Oracle](Appendix.Oracle.Options.Timezone.md) e [Oracle Label Security](Oracle.Options.OLS.md).
+ Não é possível compartilhar um snapshot de um cluster de banco de dados multi-AZ.

Consulte nos tópicos a seguir informações sobre como compartilhar os snapshots públicos e os criptografados e sobre como interromper o compartilhamento de snapshots.

**Tópicos**
+ [Compartilhar snapshots públicos para o Amazon RDS](USER_ShareSnapshot.Public.md)
+ [Compartilhar snapshots criptografados para o Amazon RDS](share-encrypted-snapshot.md)
+ [Interromper o compartilhamento de snapshots no Amazon RDS](share-snapshot-stop.md)

## Compartilhar um snapshot
<a name="USER_ShareSnapshot.Sharing"></a>

Você pode compartilhar um snapshot de banco de dados usando o Console de gerenciamento da AWS, a ou a API do RDS.

### Console
<a name="USER_ShareSnapshot.Console"></a>

Usando o console do Amazon RDS, é possível compartilhar um snapshot de banco de dados manual com até vinte Contas da AWS. Você também pode usar o console para interromper o compartilhamento de um snapshot manual com uma ou mais contas.

**Para compartilhar um snapshot manual do de banco de dados usando o console do Amazon RDS**

1. Faça login no Console de gerenciamento da AWS e abra o console do Amazon RDS em [https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/).

1. No painel de navegação, escolha **Snapshots**.

1. Selecione o snapshot manual que você deseja compartilhar.

1. Em **Actions** (Ações), selecione **Share Snapshot **(Compartilhar snapshot).

1. Escolha uma das seguintes opções para **DB snapshot visibility** (Visibilidade do snapshot de banco de dados).
   + Se a origem não estiver criptografada, escolha **Público** para permitir que todas as contas da AWS restaurem uma instância de banco de dados do snapshot de banco de dados manual, ou escolha **Privado** para permitir que apenas as Contas da AWS que você especificar restaurem uma instância de banco de dados do seu snapshot de banco de dados manual.
**Atenção**  
Se você definir **Visibilidade de snapshot de banco de dados** como **Público**, todas as Contas da AWS poderão restaurar uma instância de banco de dados do snapshot de banco de dados manual, além de terem acesso aos dados. Não compartilhe nenhum DB snapshot manual que contenha informações privadas, como **Public**.  
Para obter mais informações, consulte [Compartilhar snapshots públicos para o Amazon RDS](USER_ShareSnapshot.Public.md).
   + Se a origem estiver criptografada, **DB snapshot visibility** (Visibilidade do snapshot de banco de dados) será definida como **Private** (Privada) porque os snapshots criptografados não podem ser compartilhados como públicos.
**nota**  
Snapshots criptografados com a AWS KMS key padrão não podem ser compartilhados. Para ter informações sobre como contornar esse problema, consulte [Compartilhar snapshots criptografados para o Amazon RDS](share-encrypted-snapshot.md).

1. Em **ID da conta da AWS**, digite o identificador da Conta da AWS à qual você deseja conceder a permissão para restaurar uma instância de banco de dados do snapshot manual e selecione **Adicionar**. Repita a operação para incluir outros identificadores da Conta da AWS, até vinte Contas da AWS.

   Se você errar ao adicionar o identificador da Conta da AWS à lista de contas permitidas, saiba que é possível excluí-lo da lista escolhendo **Excluir** à direita do identificador incorreto da Conta da AWS.  
![Permitir que Contas da AWS restaurem um snapshot de banco de dados manual](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/images/ShareSnapshot_add.png)

1. Depois de adicionar os identificadores de todas as Contas da AWS às quais você deseja conceder a permissão para restaurar o snapshot manual, selecione **Salvar** para salvar as alterações.

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

Para compartilhar um snapshot de banco de dados, use o comando `aws rds modify-db-snapshot-attribute`. Use o parâmetro `--values-to-add` para adicionar uma lista dos IDs das Contas da AWS autorizadas a restaurar o snapshot manual.

**Example compartilhamento de um snapshot com uma única conta**  
O exemplo a seguir permite que o identificador Conta da AWS, `123456789012`, restaure o snapshot do banco de dados chamado `db7-snapshot`.  
Para Linux, macOS ou Unix:  

```
aws rds modify-db-snapshot-attribute \
--db-snapshot-identifier db7-snapshot \
--attribute-name restore \
--values-to-add 123456789012
```
Para Windows:  

```
aws rds modify-db-snapshot-attribute ^
--db-snapshot-identifier db7-snapshot ^
--attribute-name restore ^
--values-to-add 123456789012
```

**Example compartilhamento de um snapshot com múltiplas contas**  
O exemplo a seguir permite que dois identificadores Conta da AWS, `111122223333` e `444455556666`, restaurem o snapshot do banco de dados chamado `manual-snapshot1`.  
Para Linux, macOS ou Unix:  

```
aws rds modify-db-snapshot-attribute \
--db-snapshot-identifier manual-snapshot1 \
--attribute-name restore \
--values-to-add {"111122223333","444455556666"}
```
Para Windows:  

```
aws rds modify-db-snapshot-attribute ^
--db-snapshot-identifier manual-snapshot1 ^
--attribute-name restore ^
--values-to-add "[\"111122223333\",\"444455556666\"]"
```
Ao usar o prompt de comando do Windows, você deve fazer o escape das aspas duplas (") no código JSON, prefixando-as com uma barra invertida (\\).

Para listar as Contas da AWS habilitadas para restaurar um snapshot, utilize o comando [https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshot-attributes.html](https://docs.aws.amazon.com/cli/latest/reference/rds/describe-db-snapshot-attributes.html) da AWS CLI.

### API do RDS
<a name="USER_ShareSnapshot.API"></a>

Também é possível compartilhar um snapshot de banco de dados manual com outras Contas da AWS usando a API do Amazon RDS. Para fazer isso, chame a operação [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshotAttribute.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_ModifyDBSnapshotAttribute.html). Especifique `restore` para `AttributeName` e use o parâmetro `ValuesToAdd` para adicionar uma lista dos IDs das Contas da AWS que têm autorização para restaurar o snapshot manual. 

Para tornar um snapshot manual público e restaurável por todas as Contas da AWS, use o valor `all`. No entanto, tome cuidado para não adicionar o valor `all` a nenhum snapshot manual com informações privadas que não deseja disponibilizar para todas as Contas da AWS. Além disso, não especifique `all` para snapshots criptografados, pois não é possível torná-los públicos.

Para listar todas as Contas da AWS que têm permissão para restaurar um snapshot, utilize a operação [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotAttributes.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_DescribeDBSnapshotAttributes.html) da API.