Partilhar via


Backup gerenciado do SQL Server para Azure – Configurações de retenção e armazenamento

Este tópico descreve as etapas básicas para configurar SQL Server Backup Gerenciado 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 SQL Server Backup Gerenciado para os serviços do Microsoft Azure para a instância.

Para obter um passo a passo completo da configuração do Backup Gerenciado SQL Server para o Microsoft Azure, consulte Configurando SQL Server Backup Gerenciado no Azure e Configurando SQL Server Backup Gerenciado 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 estiver parado por um período de tempo e, em seguida, reinicializado, você poderá ver uma atividade de backup maior dependendo do período de tempo decorrido entre a parada e o início do SQL Agent, e poderá haver uma lista de pendências de backups de log aguardando para serem executados. Configure o SQL Server Agent para iniciar automaticamente na inicialização.

  • Uma conta de armazenamento do Azure e uma Credencial do SQL que armazena as informações de autenticação na conta de armazenamento devem ser criadas antes de configurar SQL Server Backup Gerenciado para o Microsoft Azure. Para obter mais informações, consulte a seção Introduction to Key Components and Concepts no tópico Backup do SQL Server para URL e Lesson 2: Create a SQL Server Credential.

    Importante

    SQL Server Backup Gerenciado 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 por meio do GUID do grupo de disponibilidade.

Segurança

Permissões

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

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

SQL Server Backup Gerenciado 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 capacidade de recuperação para os 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.

Habilitar o backup gerenciado SQL Server no 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 capacidade de recuperação) diferente de outros bancos de dados na instância, configure SQL Server Backup Gerenciado para o Microsoft Azure no nível do banco de dados para esse banco de dados. As configurações no nível do banco de dados substituem os parâmetros de configuração no nível da instância. No entanto, ambas as opções podem ser usadas juntas na mesma instância. Veja a seguir uma lista de vantagens e considerações ao habilitar SQL Server Backup Gerenciado para o Microsoft Azure no nível do banco de dados.

  • Mais granular: parâmetros de configuração separados para cada banco de dados. Pode oferecer suporte a diferentes períodos de retenção para bancos de dados individuais.

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

  • Pode ser usado para reduzir os custos de armazenamento selecionando os bancos de dados individuais para fazer backup.

  • Requer o gerenciamento de cada banco de dados

Habilitar SQL Server backup gerenciado no Microsoft Azure no nível da instância com configurações padrão

Use essa configuração se a maioria dos bancos de dados da instância tiver os mesmos requisitos para políticas de backup e de retenção ou se você quiser que novas instâncias do banco de dados sejam incluídas automaticamente no backup durante a 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 SQL Server Backup Gerenciado para o Microsoft Azure no nível da instância.

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

  • Os novos bancos de dados terão seu backup feito automaticamente logo depois de criados nas instâncias

  • Pode ser se 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 SQL Server backup gerenciado para o backup do Microsoft Azure habilitado no nível da instância com configurações padrão. Você também pode desabilitar SQL Server Backup Gerenciado no Microsoft Azure para bancos de dados se não pretende usar o armazenamento do Azure para os backups.

Habilitar e configurar SQL Server backup gerenciado no Microsoft Azure para um banco de dados

O procedimento smart_admin.sp_set_db_backup armazenado do sistema é usado para habilitar SQL Server Backup Gerenciado no Microsoft Azure para um banco de dados específico. Quando SQL Server Backup Gerenciado no Microsoft Azure estiver habilitado pela primeira vez no banco de dados, as seguintes informações deverão ser especificadas além de habilitar SQL Server Backup Gerenciado no 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 Backup Encryption.

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

Depois que SQL Server Backup Gerenciado no 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, SQL Server Backup Gerenciado no Microsoft Azure manterá os valores existentes para outros parâmetros quando não especificados.

Importante

Antes de configurar SQL Server Backup Gerenciado para o Microsoft Azure em um banco de dados, pode ser útil para a configuração existente, se houver. A etapa de revisão de parâmetros de configuração de um banco de dados será explicada posteriormente nesta seção.

  • Usando Transact-SQL:

    Se você estiver habilitando SQL Server Backup Gerenciado no 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 é 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, só deverá fornecer a URL da raiz da conta de armazenamento e fazer a correspondência das informações na Credencial SQL que você especificou.

    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 Executeem . Este exemplo habilita SQL Server Backup Gerenciado 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 para 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 Create an Encrypted Backup.

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

    Para examinar os parâmetros de configuração 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 de SQL Server padrão para as configurações do Microsoft Azure para a Instância

Você pode habilitar e configurar o backup gerenciado 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 SQL Server Management Studio. Os dois métodos são explicados abaixo:

smart_admin.set_instance_backup:. Ao especificar o valor 1 para o parâmetro @enable_backup , você poderá habilitar o backup e definir as configurações padrão. Após a aplicação no nível de instância, essas configurações padrão serão aplicadas a qualquer novo banco de dados adicionado a essa instância. Quando SQL Server Backup Gerenciado para o Microsoft Azure estiver habilitado pela primeira vez, as seguintes informações deverão ser fornecidas além de habilitar SQL Server Backup Gerenciado 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 Backup Encryption.

Depois de habilitadas, essas configuraçõ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. SQL Server Backup Gerenciado no Microsoft Azure mantém os valores existentes quando não especificados.

Importante

Antes de configurar SQL Server Backup Gerenciado para o Microsoft Azure em uma instância, pode ser útil marcar para a configuração existente, se houver. A etapa de revisão de parâmetros de configuração de um banco de dados será explicada posteriormente nesta seção.

SQL Server Management Studio: para executar esta tarefa no SQL Server Management Studio, vá até o pesquisador de objetos, expanda o nó Gerenciamento e clique com o botão direito do mouse em Backup Gerenciado. Selecione Configurar. Essa ação abre 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 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 Executeem .

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 para 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 Create an Encrypted Backup.

Para exibir os parâmetros de configuração padrão para a instância, use a seguinte consulta:

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

Usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Executar o script a seguir depois de modificá-lo de acordo com 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, podem demorar até 15 minutos para que o banco de dados seja definido com as configurações padrão. Isso também se aplica a bancos de dados que são alterados de Simple para Full ou o modelo de recuperação Bulk-Logged .

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

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

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 Executeem .

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 deverá ser usado quando você quiser desabilitar parâmetros de configuração do Backup gerenciado do SQL Server no Microsoft Azure de todos os bancos de dados que atualmente têm o Backup gerenciado do SQL Server no Microsoft Azure habilitado na instância. Os parâmetros de configuração, como a URL de armazenamento, retenção e a Credencial do SQL permanecerão nos metadados e poderão ser usados se o Backup gerenciado do SQL Server no Microsoft Azure for habilitado para o banco de dados posteriormente. Se você quiser apenas pausar SQL Server Backup Gerenciado para os serviços do Microsoft Azure temporariamente, poderá usar a opção master explicada nas seções a seguir mais adiante neste tópico.

Para desabilitar SQL Server Backup Gerenciado 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 Executeem . O exemplo a seguir identifica se SQL Server Backup Gerenciado para o Microsoft Azure está configurado no nível da instância e todos os SQL Server Backup Gerenciado para bancos de dados habilitados para Microsoft Azure na instância e executa o procedimento sp_set_db_backup armazenado do sistema para desabilitar SQL Server Backup Gerenciado 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 os parâmetros de configuração de todos os bancos de dados da instância, use a seguinte consulta:

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

Habilitar as configurações padrão do Backup gerenciado do SQL Server no Microsoft Azure para a 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 não precisar mais das configurações padrão ou estas não forem mais exigidas, você poderá desabilitar essa configuração usando o procedimento armazenado smart_admin.sp_set_instance_backup do sistema. A desabilitação não remove os outros parâmetros de configuração 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 no Microsoft Azure estiver habilitado para a instância mais tarde.

Para desabilitar os parâmetros de configuração padrão do Backup gerenciado do SQL Server no 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 Executeem .

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

Usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Execute o seguinte script:

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

Pause o Backup gerenciado do SQL Server no Microsoft Azure no nível da instância

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

Para pausar os serviços do Backup gerenciado do SQL Server no 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 SQL Server Backup Gerenciado no Microsoft Azure usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Executar o script a seguir depois de modificá-lo de acordo com suas configurações

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

Para retomar o Backup gerenciado do SQL Server no 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 clique Executeem .

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

Para retomar SQL Server Backup Gerenciado no Microsoft Azure usando o PowerShell

  1. Iniciar uma instância do PowerShell

  2. Executar o script a seguir depois de modificá-lo de acordo com suas configurações

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