Reinicializar uma instância de banco de dados - Amazon Relational Database Service

Reinicializar uma instância de banco de dados

Você pode interromper e iniciar o serviço de banco de dados na instância de banco de dados do RDS em uma única operação, chamada reinicialização.

nota

Este tópico se aplica somente à reinicialização de uma instância de banco de dados. Consulte instruções sobre a reinicialização de clusters de banco de dados multi-AZ em Reinicializar um cluster de banco de dados multi-AZ e instâncias de banco de dados de leitor.

Casos de uso para reinicializar uma instância de banco de dados

Normalmente, você reinicializa a instância de banco de dados por motivos de manutenção para que as alterações entrem em vigor. Estes casos de uso são comuns:

  • Associar um novo grupo de parâmetros de banco de dados: ao associar um novo grupo de parâmetros de banco de dados a uma instância de banco de dados, o RDS aplica os parâmetros estáticos e dinâmicos modificados somente após a reinicialização da instância de banco de dados. No entanto, se você modificar parâmetros dinâmicos no grupo de parâmetros de banco de dados depois de associá-lo à instância de banco de dados, essas alterações serão aplicadas imediatamente sem uma reinicialização. Para ter mais informações, consulte Trabalhar com grupos de parâmetros.

  • Aplicar uma alteração em um parâmetro estático em um grupo de parâmetros de banco de dados existente: quando você altera um parâmetro estático e salva o grupo de parâmetros de banco de dados, o status das instâncias de banco de dados associadas a esse grupo de parâmetros no console muda para reinicialização pendente. A alteração do parâmetro entrará em vigor somente depois que as instâncias de banco de dados associadas forem reinicializadas. Quando você altera um parâmetro dinâmico em um grupo de parâmetros existente, a alteração entra em vigor imediatamente por padrão, sem exigir uma reinicialização.

    nota

    O status Reinicialização pendente não resultará em uma reinicialização automática durante a próxima janela de manutenção. Para aplicar as alterações de parâmetro mais recentes à instância de banco de dados, reinicialize-a manualmente. Para ter mais informações sobre parameter groups, consulte Trabalhar com grupos de parâmetros.

  • Testar failover de multi-AZ: sua estratégia de teste para um cluster de banco de dados multi-AZ pode envolver a reinicialização da instância de banco de dados primária para iniciar um failover em uma zona de disponibilidade diferente.

  • Solução de problemas: você pode encontrar problemas de desempenho ou outros problemas operacionais que exijam uma reinicialização. Por exemplo, talvez a instância de banco de dados não esteja respondendo.

Como a reinicialização de uma instância de banco de dados funciona

Quando o Amazon RDS reinicia a instância de banco de dados, ele executa as seguintes tarefas sequenciais:

  1. Interrompe o serviço de banco de dados na instância de banco de dados

  2. Inicia o serviço de banco de dados na instância de banco de dados

O processo de reinicialização causa uma breve interrupção. Durante essa interrupção, o status da instância de banco de dados é reinicializando. Uma interrupção ocorre tanto para uma implantação single-AZ quanto para uma implantação de instância de banco de dados multi-AZ, mesmo quando você faz a reinicialização com um failover.

Como a reinicialização de uma instância de banco de dados em uma implantação multi-AZ funciona

Se a instância de banco de dados do Amazon RDS estiver em uma implantação multi-AZ, você poderá reinicializar com um failover. Essa operação é útil para simular uma falha de uma instância de banco de dados ou restaurar operações para a zona de disponibilidade original após um failover.

Durante a reinicialização com failover, o Amazon RDS faz o seguinte

  • Interrompe o banco de dados abruptamente. A instância de banco de dados e suas sessões de cliente podem não ter tempo para desligar com clareza.

    Atenção

    Para evitar a possibilidade de perda de dados, recomendamos interromper as transações em sua instância de banco de dados antes de reinicializar com um failover.

  • Muda automaticamente para uma réplica em espera em outra zona de disponibilidade. A alteração da zona de disponibilidade pode não ser refletida no AWS Management Console e em chamadas para a AWS CLI e a API do RDS por vários minutos.

  • Atualiza o registro DNS da instância de banco de dados para apontar para a instância de banco de dados em espera. Como resultado, você precisará limpar e restabelecer todas as conexões existentes com a sua instância de banco de dados. Para ter mais informações, consulte Configurar e gerenciar uma implantação multi-AZ.

  • Cria um evento do Amazon RDS após a reinicialização.

No RDS para Microsoft SQL Server, o failover reinicializa somente a instância de banco de dados principal. Após o failover, a instância de banco de dados primária torna-se a nova instância de banco de dados secundária. Os parâmetros podem não ser atualizados para instâncias Multi-AZ. Para a reinicialização sem failover, as instâncias de banco de dados primárias e secundárias são reinicializadas e os parâmetros são atualizados após a reinicialização. Se a instância de banco de dados não responder, recomendamos reinicializar sem failover.

Considerações sobre quando reinicializar uma instância de banco de dados

Antes de reinicializar a instância, considere o seguinte:

  • Para uma instância de banco de dados com réplicas de leitura, é possível reinicializar a instância de banco de dados de origem e suas réplicas de leitura independentemente. Após a conclusão de uma reinicialização, a replicação é retomada automaticamente.

  • O tempo de reinicialização depende do processo de recuperação de falhas, da atividade do banco de dados no momento da reinicialização e do comportamento do mecanismo de banco de dados específico. Para melhorar o tempo de reinicialização, recomendamos reduzir as atividades do banco de dados o máximo possível durante a reinicialização. Essa técnica reduz as atividades de reversão para transações em trânsito.

Pré-requisitos para reinicializar uma instância de banco de dados

Você deve atender aos seguintes pré-requisitos:

  • Sua instância de banco de dados deve estar no estado available. O banco de dados pode ficar indisponível devido a vários motivos, como um backup em andamento, uma modificação solicitada anteriormente ou uma operação de janela de manutenção.

  • Se você forçar um failover para uma zona de disponibilidade diferente, a instância de banco de dados deverá estar configurada para multi-AZ.

  • Se você forçar um failover para uma zona de disponibilidade diferente, recomendamos primeiro interromper as transações na instância de banco de dados para evitar uma possível perda de dados.

Reinicializar uma instância de banco de dados: etapas básicas

Você pode reinicializar a instância de banco de dados usando o AWS Management Console, a AWS CLI ou a API do RDS.

Para reiniciar uma instância 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 Databases (Bancos de dados) e a instância de banco de dados que você deseja reiniciar.

  3. Em Actions (Ações), escolha Reboot (Reiniciar).

    A página Reinicializar instância de banco de dados é exibida.

  4. (Opcional) Escolha Reboot with failover? (Reiniciar com failover?) para forçar um failover de uma AZ para outra.

  5. Escolha Reboot (Reinicializar) para reinicializar sua instância de banco de dados.

    Ou escolha Cancel (Cancelar).

Para reinicializar uma instância de banco de dados usando a AWS CLI, chame o comando reboot-db-instance.

exemplo Reinicialização simples

Para Linux, macOS ou Unix:

aws rds reboot-db-instance \ --db-instance-identifier mydbinstance

Para Windows:

aws rds reboot-db-instance ^ --db-instance-identifier mydbinstance
exemplo Reinicializar com failover

Para forçar um failover de uma zona de disponibilidade para outra em um cluster de banco de dados multi-AZ, use o parâmetro --force-failover.

Para Linux, macOS ou Unix:

aws rds reboot-db-instance \ --db-instance-identifier mydbinstance \ --force-failover

Para Windows:

aws rds reboot-db-instance ^ --db-instance-identifier mydbinstance ^ --force-failover

Para reinicializar uma instância de banco de dados usando a API do Amazon RDS, chame a operação RebootDBInstance.