Migrer des bases de données à l’aide de la sauvegarde et de la restauration natives
De nombreux professionnels SQL Server considèrent que la migration à l’aide d’un processus de sauvegarde et de restauration pour est la méthode de migration la plus simple.
Le stockage Blob Microsoft Azure prend en charge deux types d’objets blob : les objets blob de blocs et les objets blob de pages. Les objets blob de blocs sont privilégiés pour SQL Server 2016 et les versions ultérieures. Le choix entre les objets blob de blocs et les objets blob de pages dépend du type d’informations d’identification utilisé : Signature d’accès partagé pour l’objet blob de blocs et clé de stockage pour l’objet blob de pages.
Sauvegarder en objets blob de blocs offre des avantages comme une autorisation plus sûre, un niveau de performance des sauvegardes amélioré et une prise en charge des sauvegardes de base de données plus volumineuses par rapport aux objets blob de pages.
Si vous choisissez d’effectuer une sauvegarde de base de données complète dans un fichier, vous pouvez transférer les fichiers de sauvegarde locaux vers une machine virtuelle Azure par Azure Data Explorer ou l’utilitaire en ligne de commande AzCopy.
Sauvegarde et restauration avec un Stockage Blob Azure dans SQL Server
Un compte de stockage Azure est nécessaire pour la sauvegarde sur une URL. Celle-ci utilise le service Stockage Blob Azure. Le compte de stockage inclut des conteneurs où sont stockés les blobs. Le chemin vers un fichier de sauvegarde, contrairement à un chemin sur votre disque local, ressemble plutôt à https://{AccountName}.blob.core.windows.net/{ContainerName}/MyDatabase.bak
. Vous pouvez ajouter des noms de dossier supplémentaires sous votre conteneur pour simplifier l’identification des sauvegardes (par exemple, FULL, DIFF, LOG).
Pour effectuer une sauvegarde ou une restauration à l’aide d’une URL, l’authentification doit être établie entre l’instance SQL Server et Azure. N’oubliez pas que dans une machine virtuelle Azure, SQL Server ne sait pas qu’il s’exécute sur Azure.
Lorsque vous créez des informations d’identification SQL Server, vous avez deux options d’authentification :
- Nom et clé d’accès du compte de stockage Azure, qui stocke la sauvegarde en tant qu’objet blob de page
- Signature d’accès partagé, qui stocke la sauvegarde en tant qu’objet blob de bloc. Pour les bases de données plus volumineuses, vous pouvez sauvegarder en plusieurs objets blob de blocs.
Conseil
Les sauvegardes de bases de données compressées sont recommandées pour les bases de données plus volumineuses.
La restauration à partir d’une URL est aussi simple qu’à partir d’un disque ou d’un partage réseau. Dans SQL Server Management Studio, sélectionnez URL comme type de support de sauvegarde dans l’Assistant. Avec Transact-SQL, utilisez FROM URL
au lieu de FROM DISK
avec l’emplacement et les noms de fichiers de sauvegarde appropriés.
Remarque
Les ensembles de sauvegardes par bandes sont pris en charge et sont recommandés pour le niveau de performance. En outre, effectuez des sauvegardes par bandes, si elles sont inférieures à 200 Go pour éviter de dépasser la limite de blocs.
Exécutez l’instruction suivante pour sauvegarder un journal des transactions.
BACKUP LOG contoso
TO URL = 'https://myacc.blob.core.windows.net/mycontainer/contoso202003271200.trn'
Exécutez l’instruction suivante afin de restaurer une sauvegarde complète de base de données sans la récupérer. Une sauvegarde différentielle ou une sauvegarde de fichier journal peut ainsi être appliquée.
RESTORE DATABASE contoso
FROM URL = 'https://myacc.blob.core.windows.net/mycontainer/contoso20200327.bak'
WITH NORECOVERY