Habilitar o backup gerenciado do SQL Server no Azure

Aplica-se a:SQL Server

Este tópico descreve como habilitar o Backup Gerenciado do SQL Server no Microsoft Azure com as configurações padrão nos níveis de instância e banco de dados. Também descreve como habilitar as notificações por email e como monitorar a atividade de backup.

Este tutorial usa o Azure PowerShell. Antes de iniciar o tutorial, baixe e instale o Azure PowerShell.

Importante

Se você também quiser habilitar opções avançadas ou usar um agendamento personalizado, defina essas configurações antes de habilitar o Backup Gerenciado do SQL Server no Microsoft Azure. Para saber mais, confira Configurar opções avançadas de backup gerenciado do SQL Server para o Microsoft Azure.

Criar o contêiner Armazenamento de Blobs do Azure

O processo exige uma conta do Azure. Caso já tenha uma conta, vá para a próxima etapa. Caso contrário, você pode começar com uma avaliação gratuita ou explorar as opções de compra.

Para saber mais sobre contas de armazenamento, confira Sobre as contas de armazenamento do Azure.

  1. Entre em sua conta do Azure.

    az login
    
  2. Criar uma conta de Armazenamento do Azure. Se você já tiver uma conta de armazenamento, vá para a próxima etapa. O comando a seguir cria uma conta de armazenamento chamada <backupStorage> na região Leste dos EUA.

    az storage account create -n <backupStorage> -l "eastus" --resource-group <resourceGroup>
    
  3. Crie um contêiner de blob chamado <backupContainer> para os arquivos de backup.

    $keys = az storage account keys list --account-name <backupStorage> --resource-group <resourceGroup> | ConvertFrom-Json
    az storage container create --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].value 
    
  4. Gere uma SAS (Assinatura de Acesso Compartilhado) para acessar o contêiner. O comando a seguir cria um token SAS para o contêiner de blob <backupContainer> que expira em um ano.

    az storage container generate-sas --name <backupContainer> --account-name <backupStorage> --account-key $keys[0].value
    

Observação

Essas etapas também podem ser realizadas usando o portal do Azure.

A saída conterá a URL para o contêiner e/ou o token SAS. A seguir, é mostrado um exemplo:

https://managedbackupstorage.blob.core.windows.net/backupcontainer?sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl

Se a URL for incluída, separe-a do token SAS no ponto de interrogação (não inclua o ponto de interrogação). Por exemplo, a saída anterior resultaria nos dois valores a seguir.

Tipo Saída
URL do Contêiner https://managedbackupstorage.blob.core.windows.net/backupcontainer
Token SAS sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl

Registre a URL do contêiner e a SAS para uso na criação de uma CREDENCIAL DO SQL. Para saber mais sobre SAS, confira Assinaturas de Acesso Compartilhado, parte 1: noções básicas sobre o modelo SAS.

Habilitar o backup gerenciado no Azure

  1. Criar uma Credencial do SQL para a URL SAS: use o token SAS para criar uma Credencial do SQL para a URL do contêiner de blob. No SQL Server Management Studio, use a seguinte consulta Transact-SQL a fim de criar a credencial para a URL de seu contêiner de blob, com base no exemplo a seguir:

    CREATE CREDENTIAL [https://managedbackupstorage.blob.core.windows.net/backupcontainer]   
    WITH IDENTITY = 'Shared Access Signature',  
    SECRET = 'sv=2014-02-14&sr=c&sig=xM2LXVo1Erqp7LxQ%9BxqK9QC6%5Qabcd%9LKjHGnnmQWEsDf%5Q%se=2015-05-14T14%3B93%4V20X&sp=rwdl'  
    
  2. Verificar se o serviço SQL Server Agent foi iniciado e está em execução: inicie o SQL Server Agent se ele não estiver em execução. O Backup Gerenciado do SQL Server para o Microsoft Azure requer que o SQL Server Agent esteja em execução na instância para executar operações de backup. Talvez seja necessário definir o SQL Server Agent para ser executado automaticamente, a fim de assegurar que as operações de backup ocorrerão regularmente.

  3. Determinar o período de retenção: determina o período de retenção dos arquivos de backup. O período de retenção é especificado em dias e pode variar de 1 a 30.

  4. Habilitar e configurar o Backup Gerenciado do SQL Server no Microsoft Azure: inicie o SQL Server Management Studio e conecte-se à instância do SQL Server de destino. Na janela de consulta, execute a seguinte instrução após modificar os valores do nome do banco de dados, da URL do contêiner e do período de retenção, de acordo com seus requisitos:

    Importante

    Para habilitar o backup gerenciado no nível da instância, especifique NULL ou para o parâmetro database_name .

    USE msdb;  
    GO  
    EXEC msdb.managed_backup.sp_backup_config_basic   
     @enable_backup = 1,   
     @database_name = 'yourdatabasename',  
     @container_url = 'https://managedbackupstorage.blob.core.windows.net/backupcontainer',   
     @retention_days = 30  
    GO  
    

    O Backup Gerenciado do SQL Server no Microsoft Azure agora está habilitado no banco de dados especificado. Podem ser necessários até 15 minutos para que as operações de backup no banco de dados comecem a ser executadas.

  5. Revisar a configuração padrão de Evento Estendido: revise as configurações de Evento Estendido executando a instrução Transact-SQL a seguir.

    SELECT * FROM msdb.managed_backup.fn_get_current_xevent_settings()  
    

    Você verá que os eventos de canal Admin, Operacional e Analítico estão habilitados por padrão e não podem ser desabilitados. Isso deve ser suficiente para monitorar os eventos que requerem intervenção manual. Você pode habilitar eventos de depuração, mas os canais de depuração incluem eventos informativos e de depuração que o Backup Gerenciado do SQL Server no Microsoft Azure utiliza para detectar problemas e resolvê-los.

  6. Habilitar e configurar notificações de status de integridade: o Backup Gerenciado do SQL Server no Microsoft Azure tem um procedimento armazenado que cria um trabalho de agente para enviar notificações por email sobre erros ou avisos que possam exigir atenção. As etapas a seguir descrevem o processo para habilitar e configurar notificações por email:

    1. Configure o Database Mail se ele ainda não estiver habilitado na instância. Para obter mais informações, consulte Configure Database Mail.

    2. Configure o SQL Server Agent Notification para usar o Database Mail. Para obter mais informações, consulte Configurar o SQL Server Agent Mail para usar o Database Mail.

    3. Habilitar notificações por email para receber erros e avisos de backup: na janela da consulta, execute as seguintes instruções Transact-SQL:

      EXEC msdb.managed_backup.sp_set_parameter  
      @parameter_name = 'SSMBackup2WANotificationEmailIds',  
      @parameter_value = '<email1;email2>'  
      
  7. Exibir arquivos de backup na vonta de armazenamento do Azure: conecte-se à conta de armazenamento no SQL Server Management Studio ou no portal do Azure. Você verá os arquivos de backup no contêiner especificado. Observe que você poderá ver um banco de dados e um backup de log até 5 minutos depois de habilitar o Backup Gerenciado do SQL Server no Microsoft Azure para o banco de dados.

  8. Monitorar o status de integridade: é possível monitorar por meio das notificações por email que você configurou antes ou monitorar ativamente os eventos registrados. Estes são alguns exemplos de instruções Transact-SQL usados para exibir os eventos:

    --  view all admin events  
    USE msdb;  
    GO  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    DECLARE @eventresult TABLE  
    (event_type nvarchar(512),  
    event nvarchar (512),  
    timestamp datetime  
    )  
    
    INSERT INTO @eventresult  
    
    EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek  
    
    SELECT * from @eventresult  
    WHERE event_type LIKE '%admin%'  
    
    -- to enable debug events  
    USE msdb;  
    GO  
    EXEC managed_backup.sp_set_parameter 'FileRetentionDebugXevent', 'True'  
    
    --  View all events in the current week  
    USE msdb;  
    GO  
    DECLARE @startofweek datetime  
    DECLARE @endofweek datetime  
    SET @startofweek = DATEADD(Day, 1-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)   
    SET @endofweek = DATEADD(Day, 7-DATEPART(WEEKDAY, CURRENT_TIMESTAMP), CURRENT_TIMESTAMP)  
    
    EXEC managed_backup.sp_get_backup_diagnostics @begin_time = @startofweek, @end_time = @endofweek;  
    

As etapas descritas nesta seção destinam-se especificamente à configuração do Backup Gerenciado do SQL Server no Microsoft Azure pela primeira vez no banco de dados. Você pode modificar as configurações existentes usando o mesmo procedimento armazenado do sistema e fornecer os novos valores.

Confira também

Backup gerenciado do SQL Server no Azure