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.
Entre em sua conta do Azure.
az login
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>
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
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
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'
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.
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 90.
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âmetrodatabase_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.
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.
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:
Configure o Database Mail se ele ainda não estiver habilitado na instância. Para obter mais informações, consulte Configure Database Mail.
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.
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>'
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.
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.