Tenho uma pergunta em relação aos grupos de disponibilidade do SQL Standard. Atualmente, tenho uma configuração de AG com uma réplica primária e uma secundária. Estou usando o commit síncrono, mas estava curioso sobre o assíncrono. Até que ponto a réplica secundária ficará para trás? Se a réplica secundária ficar offline por qualquer motivo, ela será totalmente atualizada quando estiver online? Quanto tempo o secundário pode ficar inativo antes que ele não alcance? Eu entendo a diferença entre os 2 tipos de confirmação (um verifica se a transação foi confirmada antes de devolver ao aplicativo, enquanto o outro tipo de confirmação não). O que não tenho certeza é quanto tempo o secundário pode ficar offline em um tipo de confirmação assíncrona.
relate perguntas
-
AlwaysOn AG, DTC com failover
-
Bancos de dados fora do grupo de disponibilidade AlwaysOn travados no status RESTORING [fechado]
-
Os bloqueios em bancos de dados secundários somente leitura se propagam para o banco de dados de leitura/gravação
-
Nó preferencial para leitura no Grupo de Disponibilidade em uma configuração multisite
-
Como determinar se a configuração de alta disponibilidade está funcionando corretamente
Isso depende de uma série de fatores. Velocidade da rede entre os 2 nós, velocidade do disco no secundário, volume de dados sendo transmitidos. Muitos desses KPIs estão no painel Visão geral do AG (clique com o botão direito do mouse no AG no SSMS e selecione 'mostrar painel'). Você pode selecionar uma série de métricas diferentes, incluindo fila de envio de log, fila de redo de log, tempo de recuperação estimado, perda de dados estimada, etc. '. Ele sempre mostrará um status 'sincronizando..' e não 'sincronizado'.
Sim. Também vale a pena notar que durante o tempo em que sua réplica secundária estiver indisponível/desconectada, você não poderá fazer backup de nenhuma transação do log que não tenha sido enviada para o secundário. Em sys.databases, a coluna log_reuse_Wait_desc será preenchida com 'AVAILABILITY REPLICA', pois as transações não podem ser liberadas a menos que sejam confirmadas no secundário.
O secundário não vai apenas 'não alcançar'. Se você desativar o secundário (sem removê-lo do AG), os backups de log não liberarão as transações, os arquivos de log serão preenchidos e você ficará sem espaço, causando a falha de quaisquer transações futuras. A quantidade de tempo que o servidor secundário pode ficar inativo depende em grande parte de quanto espaço você tem e qual é o seu volume transacional. Quando o secundário voltar a funcionar, ele começará a aplicar as transações que ocorreram enquanto estava inativo. Eu vi isso levar de alguns minutos a várias horas.
Para breves interrupções/correções, deixar o secundário conectado é bom, mas se você estiver analisando uma interrupção de longa duração, pode ser mais fácil apenas remover a réplica secundária e não se preocupar com o incômodo de encher os arquivos de log. Em seguida, você apenas reinicializa os bancos de dados no AG assim que a interrupção for concluída.