Compartilhar via


Backup Gerenciado do SQL Server no Azure – Configurações de Retenção e Armazenamento

Este tópico descreve as etapas básicas para configurar o Backup Gerenciado do SQL Server no Microsoft Azure para um banco de dados e definir as configurações padrão para a instância. O tópico também descreve as etapas necessárias para pausar e retomar o Backup Gerenciado do SQL Server para os serviços do Microsoft Azure para a instância.

Para obter um passo a passo completo da configuração do Backup Gerenciado do SQL Server para o Microsoft Azure, consulte Como configurar o Backup Gerenciado do SQL Server no Azure e configurar o Backup Gerenciado do SQL Server no Azure para Grupos de Disponibilidade.

Antes de começar

Limitações e restrições

Pré-requisitos

  • O SQL Server Agent deve estar em execução.

    Aviso

    Se o SQL Server Agent for interrompido por um período de tempo e reiniciado, você poderá ver uma atividade de backup aumentada dependendo do tempo decorrido entre a parada e o início do SQL Agent, e pode haver uma lista de pendências de backups de log esperando para execução. Considere configurar o SQL Server Agent para iniciar automaticamente na inicialização.

  • Uma conta de armazenamento do Azure e uma Credencial sql que armazena as informações de autenticação na conta de armazenamento devem ser criadas antes de configurar o Backup Gerenciado do SQL Server para o Microsoft Azure. Para obter mais informações, consulte a seção Introdução aos principais componentes e conceitos do tópico backup para URL do SQL Server e lição 2: criar uma credencial do SQL Server.

    Importante

    O Backup Gerenciado do SQL Server no Microsoft Azure cria os contêineres necessários para armazenar os backups. O nome do contêiner é criado usando o formato "nome da instância do computador". Para Grupos de Disponibilidade AlwaysOn, o contêiner é nomeado usando o GUID do grupo de disponibilidade.

Segurança

Permissões

Para executar os procedimentos armazenados que habilitam o Backup Gerenciado do SQL Server para o Microsoft Azure, você deve ser um System Administrator ou membro na função de banco de dados db_backupoperator com permissões ALTER ANY CREDENTIAL e permissões EXECUTE no sp_delete_backuphistory e nos procedimentos armazenados smart_admin.sp_backup_master_switch. Procedimentos armazenados e funções usadas para examinar as configurações existentes normalmente exigem Execute permissões no procedimento armazenado e Select na função, respectivamente.

Considerações sobre como habilitar o Backup Gerenciado do SQL Server no Microsoft Azure para Bancos de Dados e Instâncias

O Backup Gerenciado do SQL Server para o Microsoft Azure pode ser habilitado para bancos de dados individuais separadamente ou para toda a instância. As opções dependem dos requisitos de recuperabilidade dos bancos de dados na instância, dos requisitos para gerenciar vários bancos de dados e instâncias e usar o armazenamento do Azure estrategicamente.

Habilitando o Backup Gerenciado do SQL Server para o Microsoft Azure no Nível do Banco de Dados

Se um banco de dados tiver requisitos específicos para o período de backup e retenção (SLA de recuperação) diferente de outros bancos de dados na instância, configure o Backup Gerenciado do SQL Server para o Microsoft Azure no nível do banco de dados para esse banco de dados. As configurações de nível de banco de dados substituem as configurações de nível de instância. No entanto, essas duas opções podem ser usadas em conjunto na mesma instância. Veja a seguir uma lista de vantagens e considerações ao habilitar o Backup Gerenciado do SQL Server para o Microsoft Azure no nível do banco de dados.

  • Mais granular: separe as configurações de cada banco de dados. Pode dar suporte a diferentes períodos de retenção para bancos de dados individuais.

  • Substitui as configurações de nível de instância para o banco de dados.

  • Pode ser usado para reduzir os custos de armazenamento selecionando bancos de dados individuais a serem armazenados em backup.

  • Requer o gerenciamento de cada banco de dados

Habilitar o Backup Gerenciado do SQL Server para o Microsoft Azure no nível da instância com configurações padrão

Use essa configuração se a maioria dos bancos de dados na instância tiver os mesmos requisitos para políticas de backup e retenção ou se quiser que novas instâncias de banco de dados sejam automaticamente apoiadas na criação. Alguns bancos de dados que são exceção à política ainda podem ser configurados individualmente. Veja a seguir uma lista de vantagens e considerações ao habilitar o Backup Gerenciado do SQL Server para o Microsoft Azure no nível da instância.

  • Automação no nível da instância: configurações comuns aplicadas automaticamente para novos bancos de dados adicionados posteriormente.

  • Novos bancos de dados serão automaticamente armazenados em backup logo após serem criados nas instâncias

  • Pode ser aplicado a bancos de dados que têm os mesmos requisitos de período de retenção.

  • Você ainda pode configurar bancos de dados individuais que exigem um período de retenção diferente, mesmo com o Backup Gerenciado do SQL Server para o backup do Microsoft Azure habilitado no nível da instância com configurações padrão. Você também pode desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure para bancos de dados se não pretende usar o armazenamento do Azure para os backups.

Habilitar e configurar o Backup Gerenciado do SQL Server no Microsoft Azure para um banco de dados

O procedimento smart_admin.sp_set_db_backup armazenado do sistema é usado para habilitar o Backup Gerenciado do SQL Server no Microsoft Azure para um banco de dados específico. Quando o Backup Gerenciado do SQL Server para o Microsoft Azure está habilitado pela primeira vez no banco de dados, as seguintes informações devem ser especificadas além de habilitar o Backup Gerenciado do SQL Server para o Microsoft Azure:

  • O nome do banco de dados.

  • O período de retenção.

  • Credencial sql usada para autenticar na conta de armazenamento do Azure.

  • Especifique não criptografar usando @encryption_algorithm = NO_ENCRYPTION ou especifique um algoritmo de criptografia com suporte. Para obter mais informações sobre criptografia, consulte Criptografia de Backup.

O Backup Gerenciado do SQL Server para o Microsoft Azure para configuração de nível de banco de dados só tem suporte por meio do Transact-SQL.

Depois que o Backup Gerenciado do SQL Server para o Microsoft Azure estiver habilitado para um banco de dados, essas informações serão mantidas. Se você estiver alterando a configuração, somente o nome do banco de dados e a configuração que você deseja alterar serão necessários, o Backup Gerenciado do SQL Server no Microsoft Azure manterá os valores existentes para outros parâmetros quando não especificados.

Importante

Antes de configurar o Backup Gerenciado do SQL Server para o Microsoft Azure em um banco de dados, pode ser útil verificar a configuração existente, caso haja uma. A etapa para revisar as configurações de um banco de dados é explicada posteriormente nesta seção.

  • Usando o Transact-SQL:

    Se você estiver habilitando o Backup Gerenciado do SQL Server para o Microsoft Azure pela primeira vez, os parâmetros necessários serão: @database_name, @credential_name, @encryption_algorithm, @enable_backup O parâmetro @storage_url será opcional. Se você não fornecer um valor para o @storage_url parâmetro, o valor será derivado usando as informações da conta de armazenamento da Credencial do SQL. Se você fornecer a URL de armazenamento, deverá fornecer apenas a URL para a raiz da conta de armazenamento e deverá corresponder às informações na Credencial do SQL especificada.

    1. Conecte-se ao Mecanismo de Banco de Dados.

    2. Na barra Padrão, clique em Nova Consulta.

    3. Copie e cole o exemplo a seguir na janela de consulta e clique em Execute. Este exemplo habilita o Backup Gerenciado do SQL Server no Microsoft Azure para o banco de dados 'TestDB'. O período de retenção é definido como 30 dias. Este exemplo usa a opção de criptografia especificando o algoritmo de criptografia e as informações do criptografador.

    Use msdb;  
    GO  
    EXEC smart_admin.sp_set_db_backup   
                    @database_name='TestDB'   
                    ,@enable_backup=1  
                    ,@retention_days =30   
                    ,@credential_name ='MyCredential'  
                    ,@encryption_algorithm ='AES_256'  
                    ,@encryptor_type= 'Certificate'  
                    ,@encryptor_name='MyBackupCert'  
    GO
    

    Importante

    O período de retenção pode ser definido como qualquer valor de 1 a 30 dias.

    Para obter mais informações sobre como criar um certificado para criptografia, consulte a etapa Criar um Certificado de Backup em Criar um Backup Criptografado.

    Para obter mais informações sobre esse procedimento armazenado, consulte smart_admin.set_db_backup (Transact-SQL)

    Para examinar as configurações de um banco de dados, use a seguinte consulta:

    Use msdb  
    GO  
    SELECT * FROM smart_admin.fn_backup_db_config('TestDB')  
    

Habilitar e configurar o Backup Gerenciado do SQL Server padrão para as configurações do Microsoft Azure para a Instância

Você pode habilitar e configurar o Backup Gerenciado do SQL Server padrão para as configurações do Microsoft Azure no nível da instância de duas maneiras: usando o procedimento smart_admin.set_instance_backup armazenado do sistema ou o SQL Server Management Studio. Os dois métodos são explicados abaixo:

smart_admin.set_instance_backup:. Ao especificar o valor 1 para @enable_backup parâmetro, você pode habilitar o backup e definir as configurações padrão. Uma vez aplicadas no nível da instância, essas configurações padrão são aplicadas a qualquer novo banco de dados adicionado a essa instância. Quando o Backup Gerenciado do SQL Server para o Microsoft Azure está habilitado pela primeira vez, as seguintes informações devem ser fornecidas além de habilitar o Backup Gerenciado do SQL Server para o Microsoft Azure na instância:

  • O período de retenção.

  • Credencial sql usada para autenticar na conta de armazenamento do Azure.

  • A opção de criptografia. Especifique não criptografar usando @encryption_algorithm = NO_ENCRYPTION ou especifique um algoritmo de criptografia com suporte. Para obter mais informações sobre criptografia, consulte Criptografia de Backup.

Depois de habilitadas, essas configurações são mantidas. Se você estiver alterando a configuração, somente o nome do banco de dados e a configuração que você deseja alterar serão necessários. O Backup Gerenciado do SQL Server no Microsoft Azure mantém os valores existentes quando não especificados.

Importante

Antes de configurar o Backup Gerenciado do SQL Server para o Microsoft Azure em uma instância, talvez seja útil verificar se há configuração existente, se houver. A etapa para revisar as configurações de um banco de dados é explicada posteriormente nesta seção.

SQL Server Management Studio: Para fazer essa tarefa no SQL Server Management Studio, acesse o pesquisador de objetos, expanda o nó gerenciamento e clique com o botão direito do mouse no Backup Gerenciado. Selecione Configurar. Isso abrirá a caixa de diálogo Backup Gerenciado. Use essa caixa de diálogo para especificar o período de retenção, a Credencial do SQL, a URL de Armazenamento e as configurações de criptografia. Para obter ajuda específica com essa caixa de diálogo, consulte Configurar Backup Gerenciado (SQL Server Management Studio).

Usando Transact-SQL

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique Execute.

Use msdb;  
Go  
   EXEC smart_admin.sp_set_instance_backup  
                @retention_days=30   
                ,@credential_name='sqlbackuptoURL'  
                ,@encryption_algorithm ='AES_128'  
                ,@encryptor_type= 'Certificate'  
                ,@encryptor_name='MyBackupCert'  
                ,@enable_backup=1;  
GO  
  

Importante

O período de retenção pode ser definido como qualquer valor de 1 a 30 dias.

Para obter mais informações sobre como criar um certificado para criptografia, consulte a etapa Criar um Certificado de Backup em Criar um Backup Criptografado.

Para exibir as configurações padrão da instância, use a seguinte consulta:

Use msdb;  
GO  
SELECT * FROM smart_admin.fn_backup_instance_config ();

Como usar o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Execute o script a seguir depois de modificá-lo para atender às suas configurações

    cd SQLSERVER:\SQL\Computer\MyInstance
    $encryptionOption = New-SqlBackupEncryptionOption -EncryptionAlgorithm Aes128 -EncryptorType ServerCertificate -EncryptorName "MyBackupCert"  
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -BackupEnabled $True -BackupRetentionPeriodInDays 10 -EncryptionOption $encryptionOption  
    

Importante

Quando você cria um novo banco de dados depois de definir as configurações padrão, pode levar até 15 minutos para que o banco de dados seja configurado com as configurações padrão. Isso também se aplica a bancos de dados que são alterados do modelo de recuperação Simples para Completo ou Bulk-Logged.

Desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure para um banco de dados

Você pode desabilitar as configurações de Backup Gerenciado do SQL Server para o Microsoft Azure usando o procedimento armazenado do sistema sp_set_db_backup. O @enableparameter é usado para habilitar e desabilitar o Backup Gerenciado do SQL Server nas configurações do Microsoft Azure para um banco de dados específico, em que 1 habilita e 0 desabilita as configurações.

Para desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure para um banco de dados específico:

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Execute.

Use msdb;  
Go  
EXEC smart_admin.sp_set_db_backup   
                @database_name='TestDB'   
                ,@enable_backup=0;  
GO

Desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure para todos os bancos de dados na Instância

O procedimento a seguir é para quando você deseja desabilitar o Backup Gerenciado do SQL Server para as configurações do Microsoft Azure de todos os bancos de dados que atualmente têm o Backup Gerenciado do SQL Server para o Microsoft Azure habilitado na instância. As configurações como a URL de armazenamento, a retenção e a Credencial do SQL permanecerão nos metadados e poderão ser usadas se o Backup Gerenciado do SQL Server para o Microsoft Azure estiver habilitado para o banco de dados posteriormente. Se você quiser apenas pausar temporariamente o Backup Gerenciado do SQL Server para os serviços do Microsoft Azure, poderá usar a opção mestra explicada nas seções a seguir mais adiante neste tópico.

Para desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure para todos os bancos de dados:

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique Execute. O exemplo a seguir identifica se o Backup Gerenciado do SQL Server para o Microsoft Azure está configurado no nível da instância e todo o Backup Gerenciado do SQL Server para bancos de dados habilitados para Microsoft Azure na instância e executa o procedimento sp_set_db_backup armazenado do sistema para desabilitar o Backup Gerenciado do SQL Server no Microsoft Azure.

-- Create a working table to store the database names  
Declare @DBNames TABLE  
  
       (  
             RowID int IDENTITY PRIMARY KEY  
             ,DBName varchar(500)  
  
       )  
-- Define the variables  
DECLARE @rowid int  
DECLARE @dbname varchar(500)  
DECLARE @SQL varchar(2000)  
-- Get the database names from the system function  
  
INSERT INTO @DBNames (DBName)  
  
SELECT db_name  
       FROM
  
       smart_admin.fn_backup_db_config (NULL)  
       WHERE is_smart_backup_enabled = 1  
  
       --Select DBName from @DBNames 
       select @rowid = min(RowID) FROM @DBNames  
  
       WHILE @rowID IS NOT NULL  
       Begin
             Set @dbname = (Select DBName From @DBNames Where RowID = @rowid)  
             Begin  
             Set @SQL = 'EXEC smart_admin.sp_set_db_backup    
                @database_name= '''+'' + @dbname+ ''+''',   
                @enable_backup=0'  
  
            EXECUTE (@SQL)  
  
             END  
             Select @rowid = min(RowID)  
             From @DBNames Where RowID > @rowid  
  
       END

Para examinar as configurações de todos os bancos de dados na instância, use a seguinte consulta:

Use msdb;  
GO  
SELECT * FROM smart_admin.fn_backup_db_config (NULL);  
GO

Desabilitar as configurações padrão de Backup Gerenciado do SQL Server para o Microsoft Azure na instância

As configurações padrão no nível da instância se aplicam a todos os novos bancos de dados criados nessa instância. Se você não precisar mais das configurações padrão, poderá desabilitar essa configuração usando o procedimento armazenado do sistema smart_admin.sp_set_instance_backup. Desabilitar não remove as outras configurações, como a URL de armazenamento, a configuração de retenção ou o nome da Credencial do SQL. Essas configurações serão usadas se o Backup Gerenciado do SQL Server para o Microsoft Azure estiver habilitado para a instância posteriormente.

Para desabilitar o Backup Gerenciado do SQL Server para as configurações padrão do Microsoft Azure:

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Execute.

    Use msdb;  
    Go  
    EXEC smart_admin.sp_set_instance_backup  
                    @enable_backup=0;  
    GO
    

Como usar o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Execute o seguinte script:

    cd SQLSERVER:\SQL\Computer\MyInstance
    Set-SqlSmartAdmin -BackupEnabled $False  
    

Pausar o Backup Gerenciado do SQL Server no Microsoft Azure no nível da instância

Pode haver momentos em que você precisa pausar temporariamente o Backup Gerenciado do SQL Server para os serviços do Microsoft Azure por um curto período. O smart_admin.sp_backup_master_switch procedimento armazenado do sistema permite desabilitar o serviço de backup gerenciado do SQL Server para o Microsoft Azure no nível de instância. O mesmo procedimento armazenado é usado para retomar o Backup Gerenciado do SQL Server para o Microsoft Azure. O @state parâmetro é usado para definir se o Backup Gerenciado do SQL Server no Microsoft Azure deve ser desativado ou ativado.

Para pausar o backup gerenciado do SQL Server para os Serviços do Microsoft Azure usando o Transact-SQL:

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Execute

Use msdb;  
GO  
EXEC smart_admin.sp_backup_master_switch @new_state=0;  
Go  
  

Para pausar o Backup Gerenciado do SQL Server no Microsoft Azure usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Execute o script a seguir depois de modificá-lo para atender às suas configurações

    cd SQLSERVER:\SQL\Computer\MyInstance
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -MasterSwitch $False  
    

Para retomar o Backup Gerenciado do SQL Server para o Microsoft Azure usando Transact-SQL

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e, em seguida, clique Execute.

Use msdb;  
Go  
EXEC smart_admin. sp_backup_master_switch @new_state=1;  
GO

Para retomar o Backup Gerenciado do SQL Server para o Microsoft Azure usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Execute o script a seguir depois de modificá-lo para atender às suas configurações

    cd SQLSERVER:\SQL\Computer\MyInstance
    Get-SqlSmartAdmin | Set-SqlSmartAdmin -MasterSwitch $True