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 blobs de blocs sont privilégiés pour SQL Server 2016 et les versions ultérieures. Le choix entre les blobs de bloc et les blobs de page dépend du type d’informations d’identification utilisées : signature d'accès partagé pour le blob de bloc et clé de stockage pour le blob de page.
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 le stockage Blob d'Azure dans SQL Server
La sauvegarde vers une URL nécessite un compte de stockage Azure et utilise le service de 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 sous forme de blob de page
- Une Signature d'accès partagé, qui stocke la sauvegarde en tant que blob de blocs. Pour les bases de données plus volumineuses, vous pouvez sauvegarder sur plusieurs blobs 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 DISK
au lieu de FROM URL
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