

# Promoção de uma réplica de leitura a uma instância de banco de dados autônoma
<a name="USER_ReadRepl.Promote"></a>

Você pode promover uma réplica de leitura a uma instância de banco de dados autônoma. Se uma instância de banco de dados de origem tiver várias réplicas de leitura, promover uma das réplicas de leitura a uma instância de banco de dados não interferirá nas outras réplicas.

Ao promover uma réplica de leitura, o RDS reinicializa a instância de banco de dados antes de torná-la disponível. O processo de promoção pode levar vários minutos ou mais para ser concluído, dependendo do tamanho da réplica de leitura. 

![\[Promover uma réplica de leitura\]](http://docs.aws.amazon.com/pt_br/AmazonRDS/latest/UserGuide/images/read-replica-promote.png)


## Casos de uso para promover uma réplica de leitura
<a name="USER_ReadRepl.Promote.use_cases"></a>

Você pode querer promover uma réplica de leitura a uma instância de banco de dados autônoma por algum dos seguintes motivos:
+ **Implementação de recuperação de falhas** – você poderá usar a promoção da réplica de leitura como um esquema de recuperação de dados se a instância de banco de dados primária falhar. Essa abordagem complementa a replicação síncrona, a detecção automática de falhas e o failover.

  Se estiver ciente das ramificações e limitações da replicação assíncrona e ainda assim quiser usar a promoção de réplica de leitura para recuperação de dados, será possível fazer isso. Primeiramente, crie uma réplica de leitura e, depois, monitore a instância de banco de dados primária para identificar se há falhas. Em caso de falha, faça o seguinte:

  1. Promova a réplica de leitura.

  1. Direcione o tráfego de banco de dados para a instância de banco de dados promovida.

  1. Crie uma réplica de leitura de substituição com a instância de banco de dados promovida como origem.
+ **Atualizando a configuração de armazenamento** — Se sua instância de banco de dados de origem não estiver na configuração de armazenamento preferencial, você poderá criar uma réplica de leitura da instância e atualizar a configuração do sistema de arquivos de armazenamento. Essa opção migra o sistema de arquivos da réplica de leitura para a configuração preferida. Você pode promover uma réplica de leitura a uma instância de banco de dados autônoma.

  Você pode usar essa opção para superar as limitações de escalabilidade no armazenamento e no tamanho do arquivo para sistemas de arquivos mais antigos de 32 bits. Para obter mais informações, consulte [Atualizando o sistema de arquivos de armazenamento para uma instância de banco de dados](USER_PIOPS.UpgradeFileSystem.md).

  Essa opção só está disponível se sua instância de banco de dados de origem *não* estiver na configuração de armazenamento mais recente ou se você estiver modificando a classe da instância de banco de dados na mesma solicitação.
+ **Estilhaçamento** – a fragmentação incorpora a arquitetura "shared-nothing" e envolve essencialmente a quebra de um grande banco de dados em vários bancos de dados menores. Uma maneira comum de dividir um banco de dados é dividir tabelas que não estão juntas na mesma consulta em diferentes hosts. Outro método é duplicar uma tabela em vários hosts e depois usar um algoritmo de hash para determinar qual host recebe uma determinada atualização. É possível pode criar réplicas de leitura correspondentes a cada um de seus fragmentos (bancos de dados menores) e promovê-los quando decidir convertê-los em fragmentos individuais. Você pode, então, criar o espaço da chave (se você estiver dividindo linhas) ou a distribuição de tabelas para cada um dos fragmentos de acordo com seus requisitos.
+ **Execução de operações de DDL (somente MySQL e MariaDB)** – As operações de DDL, como criação ou recriação de índices, podem levar tempo e causar um prejuízo significativo à performance da sua instância de banco de dados. É possível executar essas operações em uma réplica de leitura do MySQL ou MariaDB uma vez que a réplica de leitura esteja em sincronia com sua instância de banco de dados primária. Então, será possível promover a réplica de leitura e direcionar seus aplicativos para usar a instância promovida.

**nota**  
Se a réplica de leitura for uma instância de banco de dados do RDS para Oracle, você poderá realizar uma *transição* em vez de uma promoção. Em uma transição, a instância de banco de dados de origem se torna a nova réplica e a réplica se torna a nova instância de banco de dados de origem. Para obter mais informações, consulte [Executar uma alternância do Oracle Data Guard](oracle-replication-switchover.md).

## Características de uma réplica de leitura promovida
<a name="USER_ReadRepl.Promote.characteristics"></a>

Depois de promover a réplica de leitura, ela deixa de funcionar como réplica de leitura e se torna uma instância de banco de dados autônoma. A nova instância de banco de dados autônoma tem as seguintes características:
+ A instância de banco de dados autônoma mantém o grupo de opções e o grupo de parâmetros da réplica de leitura de pré-promoção. 
+ É possível criar réplicas de leitura da instância de banco de dados autônoma e executar operações de recuperação para um ponto no tempo.
+ Não é possível usar a instância de banco de dados como um destino de replicação, pois ela não é mais uma réplica de leitura.

## Pré-requisitos para promover uma réplica de leitura
<a name="USER_ReadRepl.Promote.prereqs"></a>

Antes de promover uma réplica de leitura, faça o seguinte:
+ Revise sua estratégia de backup:
  + Recomendamos habilitar os backups e concluir pelo menos um backup. A duração de backup é uma função do número de alterações feitas ao banco de dados desde o backup anterior.
  + Se você habilitou backups em sua réplica de leitura, configure a janela de backup automatizado para que os backups diários não interfiram com a promoção da réplica de leitura.
  + Certifique-se de que a réplica de leitura não tenha o status `backing-up`. Você não pode promover uma réplica de leitura quando ela está nesse estado.
+ Interrompa a gravação de todas as transações na instância de banco de dados primária e aguarde até que o RDS aplique todas as atualizações à réplica de leitura. 

  As atualizações do banco de dados serão feitas nas réplicas de leitura depois que forem feitas na instância de banco de dados primária. O atraso na replicação pode variar significativamente. Use a métrica [https://aws.amazon.com/rds/faqs/#105](https://aws.amazon.com/rds/faqs/#105) para determinar quando todas as atualizações foram feitas na réplica de leitura.
+ (Somente para o MySQL e o MariaDB) Para fazer alterações na réplica de leitura do MySQL ou MariaDB antes de promovê-la, defina o parâmetro `read_only` como `0` no grupo de parâmetros de banco de dados para a réplica de leitura. Você então poderá executar todas as operações de DDL necessárias, como criar índices, na réplica de leitura. As ações realizadas na réplica de leitura não afetam a performance da instância de banco de dados primária.

## Promover uma réplica de leitura: etapas básicas
<a name="USER_ReadRepl.Promote.steps"></a>

As etapas a seguir mostram o processo geral para promover uma réplica de leitura a uma instância de banco de dados

1. Promova a réplica de leitura utilizando a opção **Promover** no console do Amazon RDS, o comando [https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica.html](https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica.html) da AWS CLI ou a operação [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html) da API do Amazon RDS.
**nota**  
O processo de promoção leva alguns minutos para ser concluído. Ao promover uma réplica de leitura, o RDS interrompe a replicação e reinicializa a réplica de leitura. Quando a reinicialização for concluída, a réplica de leitura estará disponível como uma nova instância de banco de dados.

1. (Opcional) Modifique a nova instância de banco de dados para ser uma implantação multi-AZ. Para obter mais informações, consulte [Modificar uma instância de banco de dados do Amazon RDS](Overview.DBInstance.Modifying.md) e [Configurar e gerenciar uma implantação multi-AZ para o Amazon RDS](Concepts.MultiAZ.md). 

### Console
<a name="USER_ReadRepl.Promote.Console"></a>

**Para promover uma réplica de leitura a uma instância de banco de dados autônoma**

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 console do Amazon RDS, escolha **Databases** (Bancos de dados).

   O painel **Databases** (Bancos de dados) é exibido. Todas as réplicas de leitura exibem **Replica (Réplica)** na coluna **Role (Função)**.

1. Escolha a réplica de leitura que você deseja promover.

1. Em **Actions (Ações)**, selecione **Promote (Promover)**.

1. Na página **Promote Read Replica (Promover réplica de leitura)**, insira o período de retenção de backup e a janela de backup para a instância de banco de dados recém-promovida.

1. Quando estiver satisfeito com as configurações, escolha **Continue (Continuar)**.

1. Na página de confirmação, escolha **Promote Read Replica (Promover réplica de leitura)**.

### AWS CLI
<a name="USER_ReadRepl.Promote.CLI"></a>

Para promover uma réplica de leitura para uma instância de banco de dados autônoma, use o comando da AWS CLI [https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica.html](https://docs.aws.amazon.com/cli/latest/reference/rds/promote-read-replica.html).

**Example**  
Para Linux, macOS ou Unix:  

```
aws rds promote-read-replica \
    --db-instance-identifier myreadreplica
```
Para Windows:  

```
aws rds promote-read-replica ^
    --db-instance-identifier myreadreplica
```

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

Para promover uma réplica de leitura a uma instância de banco de dados autônoma, chame a operação da API do Amazon RDS [https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html](https://docs.aws.amazon.com/AmazonRDS/latest/APIReference/API_PromoteReadReplica.html) com o parâmetro obrigatório `DBInstanceIdentifier`.