Estamos no Windows Server 2019 na VM do Azure, com o SQL Server 2019 Enterprise CU4 instalado. Os trabalhos de backup diferencial do SQL Server estão falhando intermitentemente.
Examinei o log de erros do SQL Server e vejo o seguinte erro para todos os bancos de dados:
A E/S está congelada no banco de dados DBName. Não é necessária nenhuma ação do usuário. No entanto, se a E/S não for retomada imediatamente, você poderá cancelar o backup.
seguido pelos seguintes logs de erro:
A E/S foi retomada no banco de dados DBName. Não é necessária nenhuma ação do usuário.
Depois que esse erro ocorre, a tarefa de backup diferencial começa a falhar com o seguinte erro:
A execução da consulta "BACKUP DATABASE [DBName] TO DISK = N'X:\MSSQL..." falhou com o seguinte erro: "Não é possível realizar um backup diferencial para o banco de dados "DBName", pois não existe um backup de banco de dados atual. Execute um backup completo do banco de dados reemitindo BACKUP DATABASE, omitindo a opção WITH DIFFERENTIAL. BACKUP DATABASE está terminando de forma anormal.". Possíveis motivos de falha: Problemas com a consulta, propriedade "ResultSet" não definida corretamente, parâmetros não definidos corretamente ou conexão não estabelecida corretamente.
Neste ponto, não podemos fazer mais backups diferenciais até que tenhamos feito um backup completo do banco de dados.
Verifiquei e não há outro trabalho do SQL Agent em execução e não consigo entender por que esse erro está ocorrendo.
Fiz algumas pesquisas on-line e parece que era um problema conhecido no SQL Server versão 2016, 2017 e 2019, mas foi corrigido em CUs para todas essas versões. O artigo a seguir fala sobre esse problema e confirma que o problema foi corrigido no SQL Server 2019 no CU2.
Temos o SQL Server 2019 com CU4 aplicado. Portanto, todas as correções devem estar lá do CU2. No entanto, ainda estamos enfrentando o problema de congelamento de E/S.
Quaisquer indicações ou sugestões são muito apreciadas. Desde já, obrigado.
Parece que você está usando Backups do Azure para SQL Server ou Backups Gerenciados do SQL do Azure . Isso está causando o congelamento de E/S e as mensagens de retomada, pois ele usa o VSS e o SQL VSS Writer para executar os backups.
Esse tipo de backup causa problemas com os backups diferenciais do SQL nativos ( veja aqui ), com a solução para interromper a execução de seus backups nativos ou interromper os backups do Azure.
Consegui encontrar este artigo que sugere fazer uma entrada de registro para alterar o comportamento dos backups de VM do Azure e isso resulta em backups de VM que não quebram a cadeia de backups diferenciais.
A entrada de registro que você precisa fazer é:
Fonte: https://learn.microsoft.com/en-us/azure/backup/backup-azure-vms-troubleshoot#troubleshoot-vm-snapshot-issues
Seção do artigo:
Troubleshoot VM snapshot issues