Resiliência de log perdido e atividade do log de transações no Exchange 2007
Aplica-se a: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1, Exchange Server 2007
Tópico modificado em: 2009-01-14
Este tópico discute a resiliência de log perdido (LLR) e uma função complementar chamada rolagem do log. Esses recursos foram apresentados com a versão RTM (versão de produção) do Microsoft Exchange Server 2007. O comportamento desses recursos foi modificado no Exchange 2007 Service Pack 1 (SP1). Esses recursos estão presentes em todos os servidores de caixa de correio. Porém, o comportamento desses recursos depende da configuração do servidor de caixa de correio e da versão do Exchange 2007 que está instalada.
Resiliência de log perdido
No Exchange 2007, um componente interno do ESE (Mecanismo de Armazenamento Extensível) chamado LLR permite recuperar bancos de dados do Exchange mesmo que um ou mais dos arquivos de log de transações gerados mais recentemente tenham sido perdidos ou danificados. Por padrão, a LLR é habilitada em todos os servidores de caixa de correio do Exchange 2007. A LLR habilita um banco de dados de caixa de correio para montar mesmo quando arquivos de log gerados recentemente estiverem indisponíveis. Uma causa dos arquivos de log indisponíveis é um failover com perdas em um ambiente de CCR (replicação contínua em cluster), que também é conhecido como interrupção não agendada. Para obter mais informações sobre failovers com perda, consulte Interrupções agendadas e não agendadas. Para obter detalhes sobre a recuperação de um banco de dados com arquivos de log ausentes, consulte Modo de recuperação do Eseutil /R.
Dica
Em um ambiente de replicação contínua, a LLR é habilitada somente para a cópia ativa de um banco de dados. A LLR não é usada pela cópia passiva porque os bancos de dados passivos são sempre mantidos o mais atualizado possível.
A ordem das operações de gravação de dados do Exchange é sempre memória, arquivo de log e arquivo de banco de dados. A LLR funciona atrasando gravações no banco de dados até que o número especificado de gerações de log tenham sido criadas. A LLR atrasa atualizações recentes do arquivo de banco de dados por um curto tempo. A duração de tempo que as gravações são atrasadas depende da rapidez com que os logs estão sendo gerados.
No caso de um failover, a cópia passiva dos bancos de dados pode ser montada automaticamente pelo serviço Armazenamento de Informações do Microsoft Exchange se o número de logs perdidos for menor que a quantidade permitida conforme configurada por um administrador. Um administrador determina o número máximo de logs que podem ser perdidos antes que o banco de dados não possa ser montado em um failover, definindo o parâmetro AutoDatabaseMountDial. Esse parâmetro, que é representado no serviço de diretório Active Directory por um atributo do Exchange chamado msExchDataLossForAutoDatabaseMount, tem três valores: Lossless, Good Availability e Best Availability. Lossless indica 0 log perdido, Good Availability indica 3 logs perdidos e Best Availability, que é o padrão, indica 6 logs perdidos. Para obter etapas detalhadas sobre como configurar esses valores, consulte Como ajustar o failover e montar configurações para Replicação Contínua em Cluster. Quando você configurar o sistema para Good Availability ou Best Availability, não use espaços (por exemplo, use GoodAvailability e BestAvailability).
Rolagem do log de transações
Um mecanismo chamado rolagem do log é usado para minimizar ainda mais a perda de dados. A rolagem do log funciona fechando periodicamente o arquivo de log de transações atual e criando a próxima geração. Este mecanismo ajuda a LLR e, por sua vez, a CCR, a reduzir a perda de dados que resulta de arquivos de log perdidos, principalmente após um failover com perdas.
Importante
O mecanismo de rolagem do log não gera logs de transações na ausência de atividade de usuário ou outro banco de dados. Na realidade, a rolagem de log foi projetada para ocorrer apenas quando há um log parcialmente preenchido.
Rolar um log para frente significa que o arquivo de log atual (Exx.log) está fechado e um novo arquivo de log de transações é gerado, mesmo se o arquivo de log atual não estiver cheio. Para obter mais informações sobre o log de transações, consulte Compreendendo o log de transação.
O comportamento de rolagem do log baseia-se no valor de profundidade de LLR. Em um ambiente de CCR que executa o Exchange 2007 RTM, a profundidade de LLR é um valor numérico igual a 1 mais o número tolerável de logs perdidos, conforme especificado pelo valor do parâmetro AutoDatabaseMountDial. Por exemplo, se o valor do parâmetro AutoDatabaseMountDial for 6, indicando que o sistema é configurado para Best Availability, o valor da profundidade de LLR é 7.
Em um ambiente de CCR que está executando o Exchange 2007 SP1, a profundidade de LLR está embutida em código com um valor 10, independentemente do valor do parâmetro AutoDatabaseMountDial.
No Exchange 2007 RTM e SP1, a profundidade de LLR está embutida em código com um valor 1 para todos os servidores de caixas de correio que não estão em ambientes de CCR (por exemplo, servidores de caixas de correio autônomos com ou sem LCR e clusters de cópia única).
A rolagem do log ocorrerá depois que o sistema tenha ficado ocioso por um período de tempo calculado. Para calcular quando a rolagem de log deve ocorrer, o sistema usa a seguinte fórmula:
[15 (minutos) ÷ valor de Profundidade de LLR] = Freqüência de atividade de rolagem de log (em minutos)
Você pode dividir 1.440 (o número de minutos em cada dia) pela freqüência da atividade de rolagem de log para determinar o número máximo de arquivos de log por grupo de armazenamento que serão gerados cada dia como resultado da atividade de rolagem de log.
Por exemplo, em ambientes de CCR que estão executando o Exchange 2007 SP1, a profundidade de LLR é 10. Dessa forma, a atividade de rolagem de log ocorre a cada 1,5 minuto e o número máximo de arquivos de log gerados por grupo de armazenamento a cada dia como resultado da atividade de rolagem de log é 960.
Tamanho da rolagem do log
Para que uma rolagem de log de tamanho significativo se desenvolva em um grupo de armazenamento, as condições a seguir devem ser atendidas:
O grupo de armazenamento deve ter um banco de dados de caixa de correio.
O grupo de armazenamento deve ter pouca atividade de usuário que crie logs de transações.
O grupo de armazenamento deve ter uma ou mais caixas de correio que estejam freqüentemente conectadas por um processo ou aplicativo.
O número máximo de arquivos de log que serão gerados a cada dia para um grupo de armazenamento ocioso depende da configuração do servidor de caixa de correio. O número máximo de arquivos de log por grupo de armazenamento ocioso para cada configuração de servidor de caixa de correio está listado na tabela a seguir.
Número máximo de arquivos de log por grupo de armazenamento ocioso para cada configuração de servidor de caixas de correio do Exchange 2007 RTM
Configuração do servidor Caixa de Correio | Número máximo de arquivos de log de transações gerados por dia por um grupo de armazenamento ocioso |
---|---|
|
96 |
CCR com Good Availability |
384 |
CCR com Best Availability |
672 |
Número máximo de arquivos de log por grupo de armazenamento ocioso para cada configuração de servidor de caixas de correio do Exchange 2007 SP1
Configuração do servidor de caixas de correio | Número máximo de arquivos de log de transações gerados por dia por um grupo de armazenamento ocioso |
---|---|
|
96 |
CCR com Lossless, Good e Best Availability |
960 |
Os servidores de caixas de correio geralmente criam mais logs de transações do que o valor mostrado nas tabelas anteriores devido à atividade de usuário, manutenção online e outros fatores.