Sauvegarde managée SQL Server sur Azure : Paramètres de conservation et de stockage

Cette rubrique décrit les étapes de base pour configurer SQL Server sauvegarde managée sur Microsoft Azure pour une base de données et pour configurer les paramètres par défaut pour le instance. La rubrique décrit également les étapes nécessaires pour suspendre et reprendre SQL Server sauvegarde managée sur les services Microsoft Azure pour le instance.

Pour obtenir une procédure pas à pas complète de la configuration de SQL Server sauvegarde managée sur Microsoft Azure, consultez Configuration de SQL Server sauvegarde managée sur Azure et Configuration de SQL Server sauvegarde managée sur Azure pour les groupes de disponibilité.

Avant de commencer

Limitations et restrictions

  • N’activez pas SQL Server sauvegarde managée sur Microsoft Azure sur les bases de données qui utilisent actuellement des plans de maintenance ou la copie des journaux de transaction. Pour plus d’informations sur l’interopérabilité et la coexistence avec d’autres fonctionnalités SQL Server, consultez SQL Server Sauvegarde managée sur Azure : Interopérabilité et coexistence

Prérequis

  • SQL Server Agent ne doit pas être en cours d'exécution.

    Avertissement

    Si SQL Server Agent est arrêté pendant une certaine période, puis est redémarré, vous pouvez constater une activité de sauvegarde accrue selon la période qui s'est écoulée entre l'arrêt et le démarrage. De plus, un journal des travaux en souffrance peut être généré, contenant les sauvegardes qui attendent d'être exécutées. Pensez à configurer SQL Server Agent afin qu'il soit lancé automatiquement au démarrage.

  • Un compte de stockage Azure et des informations d’identification SQL qui stockent les informations d’authentification dans le compte de stockage doivent tous deux être créés avant de configurer SQL Server Sauvegarde managée sur Microsoft Azure. Pour plus d'informations, consultez la section Introduction to Key Components and Concepts dans la rubrique Sauvegarde SQL Server vers une URL et la Lesson 2: Create a SQL Server Credential.

    Important

    SQL Server Sauvegarde managée sur Microsoft Azure crée les conteneurs nécessaires pour stocker les sauvegardes. Le nom du conteneur est créé au format « nom de l’ordinateur instance nom ». Pour les groupes de disponibilité AlwaysOn, le conteneur est nommé en utilisant le GUID du groupe de disponibilité.

Sécurité

Autorisations

Pour exécuter les procédures stockées qui activent SQL Server sauvegarde managée sur Microsoft Azure, vous devez être System Administrator membre ou du rôle de base de données db_backupoperator avec des autorisations ALTER ANY CREDENTIAL et EXECUTE des autorisations sur le sp_delete_backuphistory et smart_admin.sp_backup_master_switch les procédures stockées. Les procédures stockées et les fonctions utilisées pour passer en revue les paramètres existants nécessitent généralement des autorisations Execute sur la procédure stockée et Select sur la fonction, respectivement.

Considérations relatives à l’activation de SQL Server sauvegarde managée sur Microsoft Azure pour les bases de données et les instances

SQL Server sauvegarde managée sur Microsoft Azure peut être activée pour des bases de données individuelles séparément ou pour l’ensemble de la instance. Les choix dépendent des exigences de récupération des bases de données sur le instance, de la gestion de plusieurs bases de données et instances et de l’utilisation stratégique du stockage Azure.

Activation SQL Server sauvegarde managée sur Microsoft Azure au niveau de la base de données

Si une base de données a des exigences spécifiques pour la période de sauvegarde et de rétention (contrat SLA de récupération) différentes des autres bases de données sur le instance, configurez SQL Server sauvegarde managée sur Microsoft Azure au niveau de la base de données pour cette base de données. Les paramètres de niveau base de données remplacent les paramètres de configuration de niveau instance. Cependant, ces deux possibilités peuvent être utilisées ensemble sur la même instance. Voici une liste d’avantages et de considérations lors de l’activation de SQL Server sauvegarde managée sur Microsoft Azure au niveau de la base de données.

  • Plus de granularité : paramètres de configuration distincts pour chaque base de données. Peut prendre en charge différentes périodes de rétention pour chaque base de données.

  • Remplace les paramètres au niveau de l'instance pour la base de données.

  • Peut servir à réduire les coûts de stockage en sélectionnant des bases de données individuelles pour la sauvegarde.

  • Nécessite la gestion de chaque base de données

Activation de SQL Server sauvegarde managée sur Microsoft Azure au niveau de l’instance avec les paramètres par défaut

Utilisez ces paramètres si la plupart des bases de données dans l'instance ont les mêmes exigences de sauvegarde et les mêmes stratégies de rétention, ou si vous souhaitez que les nouvelles instances de bases de données soient automatiquement sauvegardées à la création. Les bases de données qui font exception à la stratégie peuvent être configurées individuellement. Vous trouverez ci-dessous une liste d’avantages et de considérations lors de l’activation SQL Server sauvegarde managée sur Microsoft Azure au niveau instance.

  • Automatisation au niveau de l'instance : les paramètres communs sont appliqués automatiquement aux nouvelles bases de données ajoutées par la suite.

  • Les nouvelles bases de données sont automatiquement sauvegardées après leur création dans les instances

  • Peut s'appliquer aux bases de données qui ont les mêmes périodes de rétention.

  • Vous pouvez toujours configurer des bases de données individuelles qui nécessitent une période de rétention différente, même si SQL Server sauvegarde managée sur La sauvegarde Microsoft Azure est activée au niveau instance avec les paramètres par défaut. Vous pouvez également désactiver SQL Server sauvegarde managée sur Microsoft Azure pour les bases de données si vous n’avez pas l’intention d’utiliser le stockage Azure pour les sauvegardes.

Activer et configurer SQL Server sauvegarde managée sur Microsoft Azure pour une base de données

La procédure smart_admin.sp_set_db_backup stockée système permet d’activer SQL Server sauvegarde managée sur Microsoft Azure pour une base de données spécifique. Lorsque SQL Server sauvegarde managée sur Microsoft Azure est activée pour la première fois sur la base de données, les informations suivantes doivent être spécifiées en plus de l’activation de SQL Server sauvegarde managée sur Microsoft Azure :

  • Nom de la base de données.

  • Période de rétention.

  • Informations d’identification SQL utilisées pour l’authentification auprès du compte de stockage Azure.

  • Spécifiez soit ne pas chiffrer à l’aide de @encryption_algorithm = NO_ENCRYPTION ou spécifiez un algorithme de chiffrement pris en charge. Pour plus d'informations sur le chiffrement, consultez Backup Encryption.

SQL Server sauvegarde managée sur Microsoft Azure pour la configuration au niveau de la base de données est uniquement prise en charge via Transact-SQL.

Une fois SQL Server sauvegarde managée sur Microsoft Azure est activée pour une base de données, ces informations sont conservées. Si vous modifiez la configuration, seul le nom de la base de données et le paramètre que vous souhaitez modifier sont requis, SQL Server Sauvegarde managée sur Microsoft Azure conserve les valeurs existantes pour les autres paramètres lorsqu’elles ne sont pas spécifiées.

Important

Avant de configurer SQL Server sauvegarde managée sur Microsoft Azure sur une base de données, elle peut être utile pour une configuration existante, le cas échéant. Les étapes pour revoir les paramètres de configuration d'une base de données sont abordées plus loin dans cette section.

  • Utilisation de Transact-SQL :

    Si vous activez SQL Server sauvegarde managée sur Microsoft Azure pour la première fois, les paramètres requis sont les suivants : @database_name, @credential_name, @encryption_algorithm@enable_backup Le paramètre @storage_url est facultatif. Si vous ne fournissez pas de valeur pour le @storage_url paramètre, la valeur est dérivée à l’aide des informations de compte de stockage des informations d’identification SQL. Si vous spécifiez l'URL de stockage, vous ne devez spécifier que l'URL de la racine du compte de stockage, et vous devez faire correspondre les informations dans les informations d'identification SQL spécifiées.

    1. Connectez-vous au Moteur de base de données.

    2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

    3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute. Cet exemple active SQL Server sauvegarde managée sur Microsoft Azure pour la base de données « TestDB ». La période de rétention est définie à 30 jours. Cet exemple utilise l'option de chiffrement spécifiant l'algorithme de chiffrement et les informations du chiffreur.

    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
    

    Important

    La période de rétention peut être définie sur n'importe quelle valeur de 1 à 30 jours.

    Pour plus d'informations sur la création d'un certificat pour le chiffrement, consultez l'étape Créer un certificat de sauvegarde dans Create an Encrypted Backup.

    Pour plus d’informations sur cette procédure stockée, consultez smart_admin.set_db_backup (Transact-SQL)

    Pour passer en revue les paramètres de configuration d'une base de données, utilisez la requête suivante :

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

Activer et configurer la sauvegarde managée par défaut SQL Server sur Microsoft Azure pour l’instance

Vous pouvez activer et configurer les paramètres par défaut SQL Server Sauvegarde managée sur Microsoft Azure au niveau instance de deux manières : à l’aide de la procédure smart_admin.set_instance_backup stockée système ou de la SQL Server Management Studio. Les deux méthodes sont expliquées ci-dessous :

smart_admin.set_instance_backup:. En attribuant la valeur 1 au paramètre @enable_backup , vous activez la sauvegarde et vous définissez les configurations par défaut. Une fois appliqués au niveau de l'instance, ces paramètres par défaut sont appliqués aux nouvelles bases de données ajoutées à cette instance. Lorsque SQL Server sauvegarde managée sur Microsoft Azure est activée pour la première fois, les informations suivantes doivent être fournies en plus de l’activation de SQL Server sauvegarde managée sur Microsoft Azure sur le instance :

  • Période de rétention.

  • Informations d’identification SQL utilisées pour l’authentification auprès du compte de stockage Azure.

  • Option de chiffrement. Spécifiez soit ne pas chiffrer à l’aide de @encryption_algorithm = NO_ENCRYPTION ou spécifiez un algorithme de chiffrement pris en charge. Pour plus d'informations sur le chiffrement, consultez Backup Encryption.

Ces paramètres sont conservés après l'activation. Si vous modifiez la configuration, seuls le nom de la base de données et le paramètre à modifier sont requise. SQL Server sauvegarde managée sur Microsoft Azure conserve les valeurs existantes lorsqu’elles ne sont pas spécifiées.

Important

Avant de configurer SQL Server sauvegarde managée sur Microsoft Azure sur un instance, il peut être utile de case activée pour la configuration existante, le cas échéant. Les étapes pour revoir les paramètres de configuration d'une base de données sont abordées plus loin dans cette section.

SQL Server Management Studio : pour effectuer cette tâche dans SQL Server Management Studio, accédez à l'Explorateur d'objets, développez le nœud Gestion , puis cliquez avec le bouton droit sur Sauvegarde managée. Sélectionnez Configurer. La boîte de dialogue Sauvegarde managée s'ouvre. Utilisez cette boîte de dialogue pour spécifier la période de rétention, les informations d'identification SQL, l'URL de stockage et les paramètres de chiffrement. Pour obtenir de l’aide spécifique sur cette boîte de dialogue, consultez Configurer la sauvegarde managée (SQL Server Management Studio).

Utilisation de Transact-SQL

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur 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  
  

Important

La période de rétention peut être définie sur n'importe quelle valeur de 1 à 30 jours.

Pour plus d'informations sur la création d'un certificat pour le chiffrement, consultez l'étape Créer un certificat de sauvegarde dans Create an Encrypted Backup.

Pour passer en revue les paramètres de configuration par défaut d'une instance, utilisez la requête suivante :

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

Utilisation de PowerShell

  1. Démarrer une instance PowerShell

  2. Exécutez le script suivant après l'avoir modifié en fonction de vos paramètres.

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

Important

Lorsque vous créez une nouvelle base de données après avoir configuré les paramètres par défaut, la configuration peut prendre jusqu'à 15 minutes. Cela s'applique également aux bases de données modifiées du modèle de récupération Simple au modèle Full ou Bulk-Logged .

Désactiver la Sauvegarde managée SQL Server sur Microsoft Azure pour une base de données

Vous pouvez désactiver les paramètres SQL Server sauvegarde managée dans Microsoft Azure à l’aide de la sp_set_db_backup procédure stockée système. Le @enableparameter permet d’activer et de désactiver SQL Server sauvegarde managée sur microsoft Azure pour une base de données spécifique, où 1 active et 0 désactive les paramètres de configuration.

Pour désactiver la Sauvegarde managée SQL Server sur Microsoft Azure pour une base de données spécifique :

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute.

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

Désactiver la Sauvegarde managée SQL Server sur Microsoft Azure pour toutes les bases de données sur l'instance

La procédure suivante désactive les paramètres de configuration de la Sauvegarde managée SQL Server sur Microsoft Azure sur toutes les bases de données où la Sauvegarde managée SQL Server sur Microsoft Azure est actuellement activée sur l'instance. Les paramètres de configuration tels que l’URL de stockage, la rétention et les informations d’identification SQL restent dans les métadonnées et peuvent être utilisés si la Sauvegarde managée SQL Server sur Microsoft Azure est activée ultérieurement pour la base de données. Si vous souhaitez simplement suspendre temporairement SQL Server sauvegarde managée sur les services Microsoft Azure, vous pouvez utiliser le commutateur master expliqué dans les sections suivantes plus loin dans cette rubrique.

Pour désactiver SQL Server sauvegarde managée sur Microsoft Azurepour toutes les bases de données :

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute. L’exemple suivant montre comment déterminer si SQL Server sauvegarde managée sur Microsoft Azure est configurée au niveau instance et si toutes les bases de données SQL Server sauvegarde managée sur Microsoft Azure sur le instance et exécute la procédure sp_set_db_backup stockée système pour désactiver SQL Server sauvegarde managée sur 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

Pour passer en revue les paramètres de configuration de toutes les bases de données sur l'instance, utilisez la requête suivante :

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

Désactiver les paramètres de Sauvegarde managée SQL Server sur Microsoft Azure par défaut pour l'instance

Les paramètres par défaut au niveau de l'instance sont appliqués à toutes les nouvelles bases de données créées sur cette instance. Si vous n'avez plus besoin des paramètres par défaut, vous pouvez désactiver cette configuration à l'aide de la procédure stockée système smart_admin.sp_set_instance_backup . La désactivation ne supprime pas les autres paramètres de configuration, comme l'URL de stockage, le paramètre de rétention ou le nom de l'objet contenant les informations d'identification SQL. Ces paramètres seront utilisés si la Sauvegarde managée SQL Server sur Microsoft Azure est activée sur l'instance ultérieurement.

Pour désactiver les paramètres de configuration par défaut de la Sauvegarde managée SQL Server sur Microsoft Azure :

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute.

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

Utilisation de PowerShell

  1. Démarrer une instance PowerShell

  2. Exécutez le script suivant :

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

Interrompre la Sauvegarde managée SQL Server sur Microsoft Azure au niveau de l'instance

Dans certains cas, vous pouvez souhaiter interrompre les services de Sauvegarde managée SQL Server sur Microsoft Azure pour une courte période. La smart_admin.sp_backup_master_switch procédure stockée système vous permet de désactiver SQL Server sauvegarde managée sur le service Microsoft Azure au niveau instance. La même procédure est utilisée pour reprendre la Sauvegarde managée SQL Server sur Microsoft Azure. Le @state paramètre est utilisé pour définir si SQL Server sauvegarde managée sur Microsoft Azure doit être désactivée ou activée.

Pour interrompre les services de Sauvegarde managée SQL Server sur Microsoft Azure à l'aide de Transact-SQL :

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute

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

Pour suspendre SQL Server sauvegarde managée sur Microsoft Azure à l’aide de PowerShell

  1. Démarrer une instance PowerShell

  2. Exécutez le script suivant après l'avoir modifié en fonction de vos paramètres.

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

Pour reprendre la Sauvegarde managée SQL Server sur Microsoft Azure à l'aide de Transact-SQL

  1. Connectez-vous au Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l’exemple suivant dans la fenêtre de requête, puis cliquez sur Execute.

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

Pour reprendre SQL Server sauvegarde managée sur Microsoft Azure à l’aide de PowerShell

  1. Démarrer une instance PowerShell

  2. Exécutez le script suivant après l'avoir modifié en fonction de vos paramètres.

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