Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Azure CLI permet de créer et de gérer des ressources Azure à partir de la ligne de commande ou par le biais de scripts. Cet article explique comment sauvegarder une base de données SQL dans une machine virtuelle Azure et déclencher des sauvegardes à la demande à l’aide d’Azure CLI. Vous pouvez également effectuer ces actions à l’aide du portail Azure.
Cet article part du principe qu’une base de données SQL est déjà installée sur une machine virtuelle Azure. (Vous pouvez également créer une machine virtuelle à l’aide d’Azure CLI).
Dans cet article, vous allez apprendre à :
- Créer un coffre Recovery Services
- Inscrire le serveur SQL Server et découvrir les bases de données qu’il contient
- Activer la sauvegarde sur une base de données SQL
- Déclencher une sauvegarde à la demande
Consultez les scénarios actuellement pris en charge pour SQL dans une machine virtuelle Azure.
Prérequis
Utilisez l’environnement Bash dans Azure Cloud Shell. Pour plus d’informations, consultez Prise en main d’Azure Cloud Shell.
Si vous préférez exécuter des commandes de référence CLI localement, installez Azure CLI. Si vous exécutez sur Windows ou macOS, envisagez d’exécuter Azure CLI dans un conteneur Docker. Pour plus d’informations, consultez Comment exécuter Azure CLI dans un conteneur Docker.
Si vous utilisez une installation locale, connectez-vous à Azure CLI à l’aide de la commande az login . Pour finir le processus d’authentification, suivez les étapes affichées dans votre terminal. Pour obtenir d’autres options de connexion, consultez S’authentifier auprès d’Azure à l’aide d’Azure CLI.
Lorsque vous y êtes invité, installez l’extension Azure CLI lors de la première utilisation. Pour plus d’informations sur les extensions, consultez Utiliser et gérer des extensions avec Azure CLI.
Exécutez az version pour rechercher la version et les bibliothèques dépendantes installées. Pour effectuer une mise à niveau vers la dernière version, exécutez az upgrade.
Créer un coffre Recovery Services
Un coffre Recovery Services est un conteneur logique qui stocke les données de sauvegarde de chaque ressource protégée, par exemple les machines virtuelles Azure ou les charges de travail s’exécutant sur des machines virtuelles Azure, par exemple les bases de données SQL ou HANA. Lorsque le travail de sauvegarde d’une ressource protégée s’exécute, il crée un point de récupération à l’intérieur du coffre Recovery Services. Vous pouvez ensuite utiliser un de ces points de récupération pour restaurer des données à un moment donné dans le temps.
Créez un coffre Recovery Services avec la commande az backup vault create . Utilisez le même groupe de ressources et la même localisation que ceux de la machine virtuelle à protéger. Découvrez comment créer une machine virtuelle Windows et une machine virtuelle Linux à l’aide d’Azure CLI.
Pour cet article, nous allons utiliser :
- Un groupe de ressources nommé SQLResourceGroup
- Une machine virtuelle nommée testSQLVM
- Des ressources ayant pour localisation westus2.
Exécutez la commande suivante pour créer un coffre nommé SQLVault.
az backup vault create --resource-group SQLResourceGroup \
--name SQLVault \
--location westus2
Par défaut, le coffre Recovery Services est défini pour le stockage géoredondant. Le stockage géoredondant garantit la réplication de vos données de sauvegarde vers une région Azure secondaire, même si celle-ci se trouve à des centaines de kilomètres de la région primaire. Si le paramètre de redondance de stockage doit être modifié, utilisez la commande az backup vault backup-properties set .
az backup vault backup-properties set \
--name SQLVault \
--resource-group SQLResourceGroup \
--backup-storage-redundancy "LocallyRedundant/GeoRedundant"
Pour vérifier si le coffre est correctement créé, utilisez la commande az backup vault list . La réponse se présente sous la forme suivante :
Location Name ResourceGroup
--------- --------------- -------------
westus2 SQLVault SQLResourceGroup
Inscrire et protéger le serveur SQL Server
Pour inscrire le serveur SQL Server auprès du coffre Recovery Services, utilisez la commande az backup container register. VMResourceId est l’ID de ressource de la machine virtuelle que vous avez créée pour installer SQL.
az backup container register --resource-group SQLResourceGroup \
--vault-name SQLVault \
--workload-type SQLDataBase \
--backup-management-type AzureWorkload \
--resource-id VMResourceId
Notes
Si la machine virtuelle n’est pas présente dans le même groupe de ressources que le coffre, SQLResourceGroup utilise le groupe de ressources où le coffre a été créé.
L’inscription du serveur SQL Server permet de découvrir automatiquement toutes ses bases de données actuelles. Toutefois, pour découvrir les nouvelles bases de données qui pourraient être ajoutées à l'avenir, consultez la section Découverte de nouvelles bases de données ajoutées au serveur SQL inscrit.
Utilisez la commande az backup container list pour vérifier si l’instance SQL est correctement inscrite auprès de votre coffre. La réponse se présente sous la forme suivante :
Name Friendly Name Resource Group Type Registration Status
------------------------------------------------------ -------------- -------------------- --------- ----------------------
VMAppContainer;Compute;SQLResourceGroup;testSQLVM testSQLVM SQLResourceGroup AzureWorkload Registered
Notes
Le nom de colonne dans la sortie ci-dessus fait référence au nom du conteneur. Ce nom de conteneur est utilisé dans les sections suivantes pour activer les sauvegardes et les déclencher. Par exemple, VMAppContainer ; Calculer; SQLResourceGroup ; testSQLVM.
Activer la sauvegarde sur la base de données SQL
La commande az backup protectable-item list répertorie toutes les bases de données découvertes sur l’instance SQL que vous avez inscrite à l’étape précédente.
az backup protectable-item list --resource-group SQLResourceGroup \
--vault-name SQLVault \
--workload-type SQLDataBase \
--backup-management-type AzureWorkload \
--protectable-item-type SQLDataBase
--output table
Vous devez rechercher dans cette liste la base de données à sauvegarder. La liste ressemble à ceci :
Name Protectable Item Type ParentName ServerName IsProtected
----------------------------- ---------------------- ------------ ----------- ------------
sqldatabase;mssqlserver;master SQLDataBase MSSQLServer testSQLVM NotProtected
sqldatabase;mssqlserver;model SQLDataBase MSSQLServer testSQLVM NotProtected
sqldatabase;mssqlserver;msdb SQLDataBase MSSQLServer testSQLVM NotProtected
À présent, configurez la sauvegarde pour sqldatabase ; mssqlserver ; base de données master.
Pour configurer et protéger des sauvegardes sur une base de données, une à la fois, utilisez la commande az backup protection enable-for-azurewl . Spécifiez le nom de la stratégie que vous voulez utiliser. Pour créer une stratégie à l’aide de l’interface CLI, utilisez la commande az backup policy create . Pour cet article, nous avons utilisé la stratégie testSQLPolicy .
az backup protection enable-for-azurewl --resource-group SQLResourceGroup \
--vault-name SQLVault \
--policy-name SQLPolicy \
--protectable-item-name "sqldatabase;mssqlserver;master" \
--protectable-item-type SQLDataBase \
--server-name testSQLVM \
--workload-type SQLDataBase \
--output table
Vous pouvez utiliser la même commande si vous disposez d’un groupe de disponibilité SQL Always On et que vous souhaitez identifier la source de données pouvant être protégées dans le groupe de disponibilité. Ici, le type d’élément pouvant être protégé est SQLAG.
Pour vérifier si la configuration de sauvegarde ci-dessus est terminée, utilisez la commande az backup job list . La sortie se présente sous la forme suivante :
Name Operation Status Item Name Start Time UTC
------------------------------------ --------------- --------- ---------- -------------------
e0f15dae-7cac-4475-a833-f52c50e5b6c3 ConfigureBackup Completed master 2019-12-03T03:09:210831+00:00
La commande az backup job list répertorie tous les travaux de sauvegarde (planifiés ou à la demande) qui s’exécutent ou sont en cours d’exécution sur la base de données protégée, en plus d’autres opérations, telles que l’inscription, la configuration de la sauvegarde et la suppression des données de sauvegarde.
Notes
Le service Sauvegarde Azure ne s’adapte pas automatiquement aux changements d’heure durant la sauvegarde d’une base de données SQL s’exécutant sur une machine virtuelle Azure.
Modifiez la stratégie manuellement en fonction des besoins.
Activer la protection automatique
Pour une configuration de sauvegarde transparente, toutes les bases de données ajoutées à l’avenir peuvent être automatiquement protégées par une certaine stratégie. Pour activer la protection automatique, utilisez la commande az backup protection auto-enable-for-azurewl .
Étant donné que l’instruction consiste à sauvegarder toutes les bases de données futures, l’opération est effectuée au niveau sqlInstance .
az backup protection auto-enable-for-azurewl --resource-group SQLResourceGroup \
--vault-name SQLVault \
--policy-name SQLPolicy \
--protectable-item-name "sqlinstance;mssqlserver" \
--protectable-item-type SQLInstance \
--server-name testSQLVM \
--workload-type MSSQL\
--output table
Déclencher une sauvegarde à la demande
Pour déclencher une sauvegarde à la demande, utilisez la commande az backup protection backup-now .
Notes
La période de conservation de cette sauvegarde est déterminée par le type de sauvegarde à la demande que vous avez exécuté.
- À la demande, full conserve les sauvegardes pendant un minimum de 45 jours et un maximum de 99 ans.
- La sauvegarde par copie complète uniquement à la demande accepte toutes les valeurs de conservation.
- La sauvegarde différentielle à la demande est conservée conformément à la planification des sauvegardes différentielles définie dans la stratégie.
- La sauvegarde de fichier journal à la demande est conservée conformément à la planification des sauvegardes de journaux définie dans la stratégie.
az backup protection backup-now --resource-group SQLResourceGroup \
--item-name sqldatabase;mssqlserver;master \
--vault-name SQLVault \
--container-name VMAppContainer;Compute;SQLResourceGroup;testSQLVM \
--backup-type Full
--retain-until 01-01-2040
--output table
La sortie se présente sous la forme suivante :
Name ResourceGroup
------------------------------------ -------------
e0f15dae-7cac-4475-a833-f52c50e5b6c3 sqlResourceGroup
La réponse vous fournit le nom du travail. Vous pouvez utiliser ce nom de travail pour suivre l’état du travail à l’aide de la commande az backup job show .
Étapes suivantes
- Découvrez comment restaurer une base de données SQL dans une machine virtuelle Azure à l’aide de l’interface CLI.
- Découvrez comment sauvegarder une base de données SQL s’exécutant sur une machine virtuelle Azure à l’aide du portail Azure.
Contenu connexe
- Sauvegardez des bases de données SQL Server dans des machines virtuelles Azure à l’aide de Sauvegarde Azure via l’API REST.
- Restaurez des bases de données SQL Server dans des machines virtuelles Azure avec l’API REST.
- Gérez les bases de données SQL Server dans des machines virtuelles Azure avec le portail Azure, Azure CLI, l’API REST.