Com muita frequência, quando restauro bancos de dados, a operação de restauração fica travada e o tipo de espera é ASYNC_IO_COMPLETION
. Pode ficar nesse estado por 10-20-30 minutos até prosseguir PREEMPTIVE_OS_WRITEFILEGATHER
e é quando o progresso ( percent_complete
) começa a crescer.
No entanto, se eu ver ASYNC_IO_COMPLETION
e interromper o processo de restauração e executá-lo novamente, imediatamente vejo PREEMPTIVE_OS_WRITEFILEGATHER
e percent_complete
subo.
Seria bom entender esse comportamento e saber se existe uma maneira mais adequada de acelerar a operação de restauração. obrigada
Tente ativar o recurso "Inicialização instantânea de arquivo" se ainda não estiver ativado. Ele acelera o processo de restauração e o torna significativamente mais rápido.
O que é a inicialização instantânea de arquivos (IFI)?
O SQL Server precisa inicializar as páginas antes de usá-las. Assim, ele tenta preencher as páginas com zeros (zerando os arquivos). Se o IFI estiver habilitado, ele pulará esta parte e os arquivos de dados poderão ser inicializados instantaneamente para evitar operações de zeramento.
Como habilitar o IFI?
Infelizmente, não há uma caixa de seleção incorporada ou sinalizador de rastreamento para habilitar esse recurso. Em vez disso, a conta de serviço do SQL Server precisa ter a permissão "Executar tarefas de manutenção de volume". Confira abaixo a página para obter etapas detalhadas sobre como fazer isso.
Documentação MS: Inicialização instantânea de arquivos
Quando será habilitado?
Esteja ciente de que você precisa reiniciar o serviço SQL Server para que o serviço SQL escolha essa política e habilite esse recurso interessante.
Bônus: você pode verificar o log de erros do SQL para ver se o IFI está ativado ou não. Use " "Filter" para pesquisar palavras-chave como "Instant", "Initialization" ou Você pode usar a consulta abaixo retirada desta postagem do blog .