O ApsaraDB RDS for MariaDB oferece suporte a failovers automáticos e manuais entre instâncias primária e secundária. Durante o failover, a instância secundária é promovida a primária e a instância primária original torna-se a nova secundária. O endpoint permanece inalterado — sua aplicação se reconecta à nova instância primária sem necessidade de alterações na configuração.
Na RDS High-availability Edition, uma instância secundária opera como standby ativo. Os dados são sincronizados em tempo real da instância primária para a secundária. Se a instância RDS primária falhar, suas cargas de trabalho serão transferidas automaticamente para a instância RDS secundária. Apenas a instância RDS primária está acessível. Não é possível acessar a instância RDS secundária diretamente.
Quando executar um failover manual
Execute um failover manual nas seguintes situações:
Manutenção planejada: Transfira as cargas de trabalho para a instância secundária antes de manter a primária.
Simulação de failover: Teste a capacidade da sua aplicação de se recuperar de uma falha no banco de dados.
Validação de timeout de conexão: Verifique se os parâmetros
connectTimeoutesocketTimeoutestão configurados corretamente antes de entrar em produção.
Limitações
Considere os pontos abaixo antes de iniciar um failover:
Interrupção de serviço: Ocorre uma breve interrupção durante o failover. Certifique-se de que sua aplicação esteja configurada para reconexão automática.
Operações restritas: Durante o failover, não é possível gerenciar bancos de dados ou contas, nem alterar o tipo de rede.
Janela de manutenção: Execute o failover dentro da janela de manutenção planejada para minimizar impactos.
Pré-requisitos
Antes de começar, verifique se você possui:
Uma instância do ApsaraDB RDS for MariaDB executando a RDS High-availability Edition
Acesso ao console do ApsaraDB RDS
Uma aplicação configurada para reconexão automática ao banco de dados
Acionar um failover manual
Faça login no console do ApsaraDB RDS.
Na barra de navegação superior, selecione a região onde a instância está localizada.
Localize a instância e clique em seu ID.
No painel de navegação à esquerda, clique em Service Availability.
Na seção Availability Information, clique em Switch Primary/Secondary Instance.
Na caixa de diálogo, especifique o horário do failover e clique em OK.
Para executar o failover dentro da janela de manutenção, clique em modify à direita da opção Switch Within Maintenance Window . Na seção Configuration Information , selecione uma janela de manutenção e clique em Yes . Retorne à página Service Availability , atualize-a e continue o procedimento.
Perguntas frequentes
É necessário reverter após um failover de primário/secundário?
Não. Após o failover, a instância secundária assume como nova primária e começa a atender suas cargas de trabalho. Os dados são idênticos em ambos os lados — nenhuma etapa adicional é necessária.
Minha instância apresenta baixo desempenho por cerca de 10 minutos após um failover. O que está acontecendo?
Isso ocorre quando sua aplicação não detecta a mudança de conexão com rapidez suficiente. Sem configurações de timeout de socket, a aplicação aguarda o retorno dos resultados pelo banco de dados. Na maioria dos casos, a desconexão da aplicação acontece apenas após centenas de segundos. Nesse período, algumas conexões com o banco de dados não funcionam conforme o esperado e muitas instruções SQL falham na execução.
Para reduzir o tempo de recuperação, configure connectTimeout e socketTimeout nas configurações de conexão JDBC. Para cargas de trabalho transacionais online, defina connectTimeout entre 1 e 2 segundos e socketTimeout entre 60 e 90 segundos. Esses valores servem como ponto de partida — ajuste-os conforme as características da sua carga de trabalho.