Partilhar via


Gerenciar backups automatizados (visualização) | SQL Server habilitado pelo Azure Arc

Aplica-se a:SQL Server

A extensão do Azure para SQL Server pode executar backups automaticamente para armazenamento local ou compartilhamentos de rede. Os backups são gravados no local de backup padrão para o SQL Server habilitado pela instância do Azure Arc.

Este artigo explica como você pode:

  • Habilite backups automatizados
  • Configurar agendamento de backup

Observação

Como recurso de visualização, a tecnologia apresentada neste artigo está sujeita aos Termos de Uso Suplementares para Visualizações do Microsoft Azure.

As atualizações mais recentes estão disponíveis nas notas de versão para o SQL Server com suporte pelo Azure Arc.

Você pode habilitar backups automatizados por meio do portal do Azure ou por meio az CLI.

Para habilitar backups automatizados, defina os dias de retenção para um valor diferente de zero.

Os backups automatizados só estão disponíveis para licenças com Software Assurance, assinatura SQL ou pagamento conforme o uso. Para obter detalhes, consulte Disponibilidade das funcionalidades consoante o tipo de licença.

Frequência de backup e dias de retenção

Você pode configurar duas propriedades para backups automatizados:

  • dias de retenção - número de dias para reter os arquivos de backup. Use um número entre 1 e 35. Se o dia de retenção do backup estiver definido como 0, o backup automatizado será desativado e nenhum backup será feito, mesmo que a política de backup seja mantida.
  • agendamento de backup - o agendamento em que os backups completos, diferenciais e de logs de transações devem ser executados. Depende do tipo de backup:
    • Backups completos: diários ou semanais
    • Backups diferenciais: a cada 12 horas ou a cada 24 horas
    • Backups de log de transações: incrementos de 5 minutos.

Você também pode executar backups em um cronograma de padrão:

  • Período de retenção: 7 dias
  • Backups completos: a cada 7 dias
  • Backups diferenciais: de 24 em 24 horas
  • Backups dos logs de transações: a cada 5 minutos

Nível de agendamento de backup

Você pode agendar backups em

  • Nível da instância
  • Nível do banco de dados (disponível a partir da versão de extensão 1.1.2594.118 ou posterior)

Se o agendamento de backup no nível do banco de dados e da instância estiver definido, o agendamento no nível do banco de dados terá precedência sobre o agendamento de backup no nível da instância. Se você excluir o agendamento de backup no nível do banco de dados, o agendamento de backup no nível da instância será aplicado.

Atribuir permissões

O serviço de backup dentro da extensão do Azure para o SQL Server com o Arc usa a conta [NT AUTHORITY\SYSTEM] para executar os backups. Se você estiver operando SQL Server habilitado pela Arc com menos privilégios, uma conta local do Windows - [NT Service\SQLServerExtension] - executa o backup.

Observação

Os servidores existentes com a extensão da versão de novembro de 2024 ou posterior terão automaticamente a configuração menos privilegiada aplicada. Esta aplicação acontecerá gradualmente.

Para evitar a aplicação automática de privilégios mínimos, bloqueie as atualizações de extensão para a versão de novembro de 2024.

Se você usar a extensão do Azure para SQL Server versão 1.1.2504.99 ou posterior, as permissões necessárias serão concedidas a [NT AUTHORITY\SYSTEM] automaticamente. Não é necessário atribuir permissões manualmente.

Para extensões anteriores apenas, siga as etapas abaixo para atribuir permissão à conta [NT AUTHORITY\SYSTEM].

Observação

Este requisito aplica-se à versão de pré-visualização.

  1. Adicione a conta [NT AUTHORITY\SYSTEM] aos Logins e torne-a membro da função de servidor dbcreator no nível do servidor. Execute o seguinte Transact-SQL para adicionar esta conta:

    USE master;
    GO
    CREATE LOGIN [NT AUTHORITY\SYSTEM] FROM WINDOWS WITH DEFAULT_DATABASE = [master];
    GO
    ALTER SERVER ROLE [dbcreator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  2. Adicione a conta [NT AUTHORITY\SYSTEM] aos Usuários e torne-a membro da função db_backupoperator em master, model, msdbe em cada base de dados de utilizador.

    Por exemplo:

    CREATE USER [NT AUTHORITY\SYSTEM] FOR LOGIN [NT AUTHORITY\SYSTEM];
    GO
    ALTER ROLE [db_backupoperator] ADD MEMBER [NT AUTHORITY\SYSTEM];
    GO
    
  3. Execute o código anterior para cada usuário e banco de dados do sistema (exceto tempdb).

Configurar backups automatizados

Os backups automatizados são desativados por padrão.

Depois de atribuir permissões, você pode agendar backups automatizados. Depois que os backups automatizados são configurados, a extensão Arc SQL inicia um backup para o local de backup padrão.

Os backups são backups nativos do SQL Server, portanto, todo o histórico de backup está disponível nas tabelas relacionadas ao backup no banco de dados msdb.

Nível da instância

  • do portal do Azure
  • da CLI do Azure

Para habilitar backups automatizados no portal do Azure:

  1. Desative todas as rotinas de backup externas existentes.
  2. Navegue até o SQL Server que você deseja habilitar backups automatizados.
  3. Selecione Backups.
  4. Selecione Configurar políticas.
  5. Na secção Configurar políticas:
    • Defina um valor para dias de retenção de backup - entre 1 e 35.
    • Defina um cronograma para os backups de log completos, diferenciais e transacionais.
  6. Selecione Aplicar para habilitar essa configuração.

Defina o período de retenção e a frequência para atender aos requisitos de negócios. A política de retenção deve ser maior do que a frequência total do backup. Como medida de segurança, o processo de backup automatizado sempre mantém conjuntos de backups de pelo menos uma frequência de backup completa mais os dias de retenção.

Nível do banco de dados

Para configurar o backup personalizado individual no nível do banco de dados no portal:

  1. Selecione a instância
  2. Selecione a base de dados
  3. Em Gerenciamento de dados à esquerda
  4. Selecione Backup (visualização) - Configure políticas de backup de banco de dados
  5. Selecione Configurar políticas.
  6. Em Configurar políticas:
    • Defina um valor para dias de retenção de backup - entre 1 e 35.
    • Defina um cronograma para os backups de log completos, diferenciais e transacionais.
  7. Selecione Aplicar para habilitar essa configuração.

Defina o período de retenção e a frequência para atender aos requisitos de negócios. A política de retenção deve ser superior à frequência do backup completo. Como medida de segurança, o processo de backup automatizado sempre mantém conjuntos de backups de pelo menos uma frequência de backup completa mais os dias de retenção.

Desativar backup automatizado

Se o dia de retenção do backup estiver definido como 0, o backup automatizado será desativado e nenhum backup será feito, mesmo que a política de backup seja mantida. Definir a retenção de backup para um valor diferente de zero habilita a política novamente.

Essa configuração se aplica ao backup em nível de banco de dados e instância. Se o agendamento de backup no nível do banco de dados estiver desabilitado, nenhum backup será feito para o banco de dados, mesmo que o backup no nível da instância esteja agendado.

Excluir backup automatizado

Na página de agendamento de backup no nível de banco de dados individual do portal, selecione Reverter política de backup para o nível de instância, para excluir a política de backup no nível de banco de dados.

Para excluir o agendamento de backup no nível da instância, você pode fazê-lo por meio da CLI. Uma vez excluído, nenhum backup é feito no nível da instância ou no nível do banco de dados. Você deve configurar um novo agendamento de backup para fazer o backup novamente.

Excluir política de nível de instância

az sql server-arc backups-policy delete --name <arc-server-name> --resource-group <resourcegroup> 

Exemplo:

az sql server-arc backups-policy delete --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup  

Excluir política de nível de banco de dados

az sql db-arc backups-policy delete --name <sql-database-name> --server <arc-server-name> --resource-group <resourcegroup> 

Exemplo:

az sql db-arc backups-policy delete --name MyDatabaseName --server MyArcServer_SQLServerPROD --resource-group MyResourceGroup 

Exibir política de backup atual

Para exibir a política de backup atual para um SQL Server, execute o seguinte comando:

az sql server-arc backups-policy show --name <arc-server-name> --resource-group <resourcegroup>

Exemplo:

az sql server-arc backups-policy show --name MyArcServer_SQLServerPROD --resource-group MyResourceGroup

Saída:

{
  "differentialBackupHours": 24,
  "fullBackupDays": 7,
  "instanceName": "MSSQLSERVER01",
  "retentionPeriodDays": 16,
  "transactionLogBackupMinutes": 5
}

Backup das bases de dados do sistema

Quando os backups automatizados internos são habilitados em uma instância do SQL Server habilitada pelo Azure Arc, o backup dos bancos de dados do sistema também é feito no local de backup padrão. Somente backups completos são realizados para os bancos de dados do sistema.

Considerações

  • Os arquivos de backup são armazenados no local de backup padrão, conforme configurado no nível da instância do SQL Server.

  • Para localizar o local de backup padrão para uma instância do SQL Server (no SQL Server 2019 (15.x) e posterior), execute:

    SELECT SERVERPROPERTY('InstanceDefaultBackupPath');
    
  • Para versões do SQL Server abaixo de 2019, o caminho de backup padrão é armazenado em uma configuração do Registro. Configure essa configuração com o procedimento armazenado estendido xp_instance_regwrite ou do SQL Server Management Studio (SSMS). Para usar o SSMS:

    1. Conecte-se ao SQL Server habilitado para Arc a partir do SSMS.
    2. Vá para Propriedades do servidor>Configurações do banco de dados>Locais padrão do banco de dados.
  • A política de backup configurada no nível da instância aplica-se a todos os bancos de dados na instância.

  • Se as agendas de backup no nível do banco de dados e da instância forem definidas, o nível do banco de dados terá precedência sobre o agendamento de backup no nível da instância. A exclusão do agendamento de backup no nível do banco de dados reverte para o agendamento de backup no nível da instância, se houver.

  • O valor para --name deve ser o nome do SQL Server habilitado pelo Azure Arc, que geralmente está no formato [Servername_SQLservername].

  • O valor para --retention-days pode ser de 0 a 35.

  • Um valor de 0 para --retention-days indica não executar backups automatizados para a instância ou o banco de dados.

  • Se houver várias instâncias do SQL Server no mesmo host onde a extensão do Azure para SQL Server está instalada, você precisará configurar backups automatizados separadamente para cada instância.

  • Se você alterar o --retention-days depois que o --backups-policy já estiver configurado, qualquer alteração entrará em vigor daqui para frente e não será aplicada retroativamente.

Limitações

  • O backup automático para URL não está disponível no momento.
  • Os bancos de dados de usuários precisam estar no modelo de recuperação total para que os backups sejam executados. Não é feito backup automático dos bancos de dados que não estão no modelo de recuperação total.
  • Atualmente, não há suporte para backups automatizados para instâncias de cluster de failover (FCI) Always On.
  • Não há suporte para backups automatizados em nenhuma instância que hospede uma réplica de grupo de disponibilidade (AG).
  • Os backups automatizados só estão disponíveis para licenças com Software Assurance, assinatura SQL ou modelo de pagamento por utilização. Para obter detalhes, consulte Disponibilidade de funcionalidades dependendo do tipo de licença.