[SQL Server: Azure VM] Como funciona o Automated Backup?


Olá pessoal, depois de um tempo distante estou retornando com um tópico que sempre levanta questionamentos dos clientes quando falamos sobre a automatização de backups do SQL Server em maquinas virtuais (VMs) no Azure.

O Azure oferece uma vasta opção de templates de VMs com SQL Server, sem dúvidas essa é uma forma muito prática de criar um servidor SQL Server rapidamente.

Quando optamos por criar uma VM a partir destes templates, o portal do Azure exibe uma série de recursos que só se aplicam para VMs com SQL Server; uma das opções é o "Automated Backup" (essa opção não está disponível para Linux VMs). A descrição desse recurso informa:

"Configure backups for databases in your virtual machine".

A idéia aqui é bem simples: ao habilitar esta funcionalidade, você passa a ter backup automatizado das bases daquela VM, sem a necessidade de criar planos de manutenção, jobs, schedules e etc; mas vamos às perguntas recorrentes:

  • "Qual a política desse backup automatizado?"

  • "Qual o papel do SQL Server Agent nesse cenário?"

  • "As bases de sistema são incluídas nos backups automáticos?"

Seguem alguns pontos que precisamos considerar:

  • Até esta data (estamos em Maio de 2018) o Automated Backup só realiza backups das bases da instância DEFAULT; ou seja, instâncias nomeadas não usufruem desse recurso;
  • O Automated Backup só está disponível para VMs com SQL Server 2014 ou superior;
  • Esse recurso não cria Jobs no SQL Server Agent; porém para que o recurso funcione o SQL Server Agent deve estar executando;
  • A VM precisa ter o serviço SQL IaaS agent em execução (esse serviço já vem configurado em VMs que criamos a partir de templates);
  • Os backups ficam armazenados na storage account indicada no momento da configuração:

 

No SQL Server 2014 tinhamos algumas limitações, mas se a instância default for SQL Server 2016 (ou superior) temos alguns recursos adicionais:

  • As bases de sistema estão incluídas na política de backup automático;
  • É possível determinar um período ideal para a execução do backup full; por exemplo, podemos determinar que o backup full só ocorrerá entre 1h e 5h da manhã;
  • É possível determinar a frequência do backup de log (de 5 a 60 minutos).

"Se não customizarmos os horários do Automated Backup, quais serão os critérios para a execução dos backups automatizados?"

Em resumo teremos um backup full semanal e um backup de log a cada 2 horas, porém isso pode mudar de acordo com o workload da instância. Quanto maior o volume de modificações, maior a probabilidade de novos backups ocorrerem; exemplo: se o espaço utilizado no transaction log for igual ou maior que 5 MB um novo backup de log ocorrerá. Se o transaction log crescer 1 GB desde o último backup full, um novo backup full acontecerá. Para evitar que um backup full execute durante horário produtivo é importante configurar o Automated Backup definindo os horários apropriados. Outro fator que pode influenciar são ações que "quebram" a sequência de backups, como uma mudança de recovery model de FULL para SIMPLE, por exemplo.

Outro ponto que é importante destacar: a escolha do Recovery Model tem a mesma relevância na política do backup automatizado, portanto se sua base estiver no modo SIMPLE o Automated Backup não fará backups do t-log e consequentemente você não terá o recurso do point-in-time restore.

 

"Posso fazer backups sob demanda (backup manual)?"

Sim, no entanto, para evitar que o seu backup manual "quebre" a cadeia dos backups anteriores é recomendável que você faça o backup (full ou log) utilizando a procedure sp_backup_on_demand. Backups feitos a partir desta procedure serão armazenados na storage account definida no momento da configuração do Automated Backup.

 

"Como monitorar?"

Você pode visualizar todo o histórico de backups através do SSMS (ex: Reports > Standard Reports > Backup and Restore Events) ou através das views de catálogo na MSDB. Além disso é possível utilizar a procedure sp_get_backup_diagnostics que retorna informações mais detalhadas de todas as ações do Automated Backup:

 

É possível configurar o Automated Backup em uma Azure VM que não foi criada a partir de um template?

Sim. O primeiro passo é garantir que o serviço SQL IaaS agent esteja configurado e executando. Para verificar o processo de configuração do SQL IaaS agent consulte este link.

 

Referências adicionais:

Automated Backup v2 for Azure Virtual Machines

SQL Server Managed Backup to Microsoft Azure

Até+

Silas Mendes

 

============================
The code and techniques described in this blog are presented to the reader ‘as is’, without any warranty, whether express or implied, of its accuracy, completeness, fitness for a particular purpose, title or non-infringement, and none of the third-party products or information mentioned in the work are authored, recommended, supported or guaranteed by any of the authors or Microsoft. Further, the authors shall not be liable for any damages you may sustain by using this information, whether direct, indirect, special, incidental or consequential, even if it has been advised of the possibility of such damages. Your use of the information contained in these pages, is at your sole risk.
Comments (0)

Skip to main content