

# Atualização da versão de mecanismo de um cluster de banco de dados multi-AZ para o Amazon RDS
<a name="multi-az-db-clusters-upgrading"></a>

O Amazon RDS fornece versões mais recentes de cada mecanismo de banco de dados compatível, para que você possa manter o cluster de banco de dados multi-AZ atualizado. Este tópico explica o processo de atualização de um cluster de banco de dados multi-AZ para versões mais recentes.

A atualização de um cluster de banco de dados multi-AZ exige a seleção de uma nova versão de mecanismo compatível e o planejamento de um possível tempo de inatividade. O processo garante o mínimo de interrupção ao utilizar os recursos de failover da arquitetura multi-AZ. As práticas recomendadas incluem a realização de atualizações durante períodos de baixo tráfego, testes em ambientes que não sejam de produção e verificação da compatibilidade da aplicação com a nova versão.

**Topics**
+ [Atualizações de versões secundárias](#multi-az-db-clusters-upgrade-minor)
+ [Atualizações de versão principal](#multi-az-db-clusters-upgrade-major)
+ [Atualização de um cluster de banco de dados multi-AZ](#multi-az-db-clusters-upgrade-process)
+ [Atualização de réplicas de leitura de cluster de banco de dados multi-AZ](#multi-az-db-clusters-upgrade-replicas)
+ [Monitorar atualizações de cluster de banco de dados multi-AZ com eventos](#multi-az-db-clusters-upgrade-monitoring)

## Atualizações de versões secundárias
<a name="multi-az-db-clusters-upgrade-minor"></a>

Uma atualização de versão secundária inclui somente alterações compatíveis com versões anteriores dos aplicativos existentes. Quando você inicia uma atualização de versão secundária, o Amazon RDS primeiro atualiza as instâncias de banco de dados de leitor, uma por vez. Depois, uma das instâncias de banco de dados de leitor passa a ser a nova instância de banco de dados de gravador. Depois, o Amazon RDS atualiza a antiga instância de gravador (que agora é uma instância de leitor).

O tempo de inatividade durante a atualização é limitado ao tempo necessário para que uma das instâncias de banco de dados de leitor se torne a nova instância de banco de dados de gravador. Esse tempo de inatividade funciona como um failover automático. Para obter mais informações, consulte [Fazer failover de um cluster de banco de dados multi-AZ para o Amazon RDS](multi-az-db-clusters-concepts-failover.md). Observe que o atraso da réplica do cluster de banco de dados multi-AZ pode afetar o tempo de inatividade. Para obter mais informações, consulte [Atraso de réplica e clusters de banco de dados multi-AZ](multi-az-db-clusters-concepts.md#multi-az-db-clusters-concepts-replica-lag).

Para réplicas de leitura de cluster de banco de dados multi-AZ do RDS para PostgreSQL, o Amazon RDS atualiza as instâncias membros do cluster uma por vez. Os perfis do cluster de leitor e gravador não mudam durante a atualização. Portanto, o cluster de banco de dados pode passar por tempo de inatividade enquanto o Amazon RDS atualiza a instância de gravador de cluster.

**nota**  
O tempo de inatividade para uma atualização da versão secundária de cluster de banco de dados multi-AZ é geralmente de 35 segundos. Quando usado com o RDS Proxy, é possível reduzir ainda mais o tempo de inatividade para um segundo ou menos. Para obter mais informações, consulte [Amazon RDS Proxy](rds-proxy.md). Como alternativa, é possível usar um proxy de banco de dados de código aberto, como [ProxySQL](https://aws.amazon.com/blogs/database/achieve-one-second-or-less-of-downtime-with-proxysql-when-upgrading-amazon-rds-multi-az-deployments-with-two-readable-standbys/), [PgBouncer](https://aws.amazon.com/blogs/database/fast-switchovers-with-pgbouncer-on-amazon-rds-multi-az-deployments-with-two-readable-standbys-for-postgresql/) ou [driver avançado de encapsulamento JDBC da AWS](https://aws.amazon.com/blogs/database/achieve-one-second-or-less-downtime-with-the-advanced-jdbc-wrapper-driver-when-upgrading-amazon-rds-multi-az-db-clusters/). 

## Atualizações de versão principal
<a name="multi-az-db-clusters-upgrade-major"></a>

Um upgrade de versão principal pode apresentar alterações não compatíveis com aplicações existentes. 

Ao iniciar uma atualização de versão principal de um cluster de banco de dados multi-AZ do RDS para PostgreSQL, o Amazon RDS atualiza simultaneamente as instâncias de leitor e gravador. Portanto, o cluster de banco de dados pode não estar disponível até que a atualização seja concluída. 

Quando você inicia uma atualização de versão principal de um cluster de banco de dados multi-AZ do RDS para MySQL, o Amazon RDS atualiza as instâncias membros do cluster uma por vez, para que a replicação ocorra de uma versão de mecanismo anterior para uma posterior. É importante garantir que a workload seja compatível com as versões do mecanismo de origem e de destino durante uma atualização de versão principal, pois as versões do mecanismo podem diferir em sintaxe e recursos.

**nota**  
Assim como nas atualizações de versão secundária, o tempo de inatividade para uma atualização de versão principal do RDS para MySQL é geralmente de 35 segundos. Quando usado com o RDS Proxy, é possível reduzir ainda mais o tempo de inatividade para um segundo ou menos. Para obter mais informações, consulte [Amazon RDS Proxy](rds-proxy.md).

## Atualização de um cluster de banco de dados multi-AZ
<a name="multi-az-db-clusters-upgrade-process"></a>

O processo de atualização da versão do mecanismo de um cluster de banco de dados multi-AZ é o mesmo processo de atualização de uma versão do mecanismo de instância de banco de dados. Para instruções, consulte [Atualizar a versão de mecanismo de uma instância de banco de dados ](USER_UpgradeDBInstance.Upgrading.md). A única diferença é que, ao usar a AWS Command Line Interface (AWS CLI), você usa o comando [modifique-db-cluster](https://docs.aws.amazon.com/cli/latest/reference/rds/modify-db-cluster.html) e especifica o parâmetro `--db-cluster-identifier` (bem como o parâmetro `--allow-major-version-upgrade`).

Para ter mais informações sobre atualizações de versões principais e secundárias, consulte a seguinte documentação do mecanismo de banco de dados:
+ [Atualizações do mecanismo de banco de dados do RDS para PostgreSQL](USER_UpgradeDBInstance.PostgreSQL.md)
+ [Atualizações do mecanismo de banco de dados do RDS para MySQL](USER_UpgradeDBInstance.MySQL.md)

## Atualização de réplicas de leitura de cluster de banco de dados multi-AZ
<a name="multi-az-db-clusters-upgrade-replicas"></a>

O Amazon RDS não atualiza automaticamente réplicas de leitura de clusters de banco de dados multi-AZ. Com relação às atualizações de versão *secundária*, primeiro é necessário atualizar manualmente todas as réplicas de leitura e, depois, atualizar o cluster. Caso contrário, a atualização será bloqueada. Quando você realiza uma atualização de versão*principal* de um cluster, o estado da replicação de todas as réplicas de leitura muda para **Encerrado**. Você deve excluir e recriar as réplicas de leitura após a conclusão da atualização. Para obter mais informações, consulte [Monitoramento da replicação de leitura](USER_ReadRepl.Monitoring.md).

## Monitorar atualizações de cluster de banco de dados multi-AZ com eventos
<a name="multi-az-db-clusters-upgrade-monitoring"></a>

Quando você atualiza a versão do mecanismo de um cluster de banco de dados multi-AZ, o Amazon RDS emite um evento específico durante cada fase do processo. Para acompanhar o progresso de uma atualização, você pode visualizar ou assinar esses eventos.

 Para acessar mais informações sobre eventos do RDS, consulte [Monitorar eventos do Amazon RDS](working-with-events.md).

Para acessar informações detalhadas sobre um evento específico do Amazon RDS ocorrido durante a atualização do seu mecanismo, consulte [Categorias de eventos e mensagens de eventos ](USER_Events.Messages.md).