Guide de migration : SQL Server vers SQL Server sur les machines virtuelles Azure
S’applique à :SQL Server sur la machine virtuelle Azure
Dans ce guide, vous allez apprendre à découvrir, évaluer et migrer vos bases de données utilisateur de SQL Server vers une instance de SQL Server sur des machines virtuelles Azure en utilisant des outils et des techniques basés sur vos exigences.
Vous pouvez migrer SQL Server s’exécutant en local ou sur :
- SQL Server sur les machines virtuelles.
- Amazon Web Services (AWS) EC2.
- Amazon Relational Database Service (AWS RDS).
- Compute Engine (Google Cloud Platform [GCP]).
Pour plus d’informations sur des stratégies de migration supplémentaires, consultez la vue d’ensemble de la migration de machine virtuelle SQL Server. Pour obtenir d’autres guides de migration, consultez les Guides de migration de base de données Azure.
Prérequis
La migration vers SQL Server sur les machines virtuelles Azure requiert les ressources suivantes :
- Extension de migration Azure SQL pour Azure Data Studio.
- Un projet Azure Migrate (nécessaire seulement pour la découverte de SQL Server dans votre patrimoine de données).
- Instance cible préparée de SQL Server sur les machines virtuelles Azure dont la version est identique ou supérieure à celle de la source SQL Server.
- Connectivité entre Azure et l’environnement local
- Choix d’une stratégie de migration appropriée
Prémigration
Avant de commencer votre migration, vous devez découvrir la topologie de votre environnement SQL et évaluer la faisabilité de la migration prévue.
Découvrez
Azure Migrate évalue la pertinence de la migration des ordinateurs locaux, effectue un dimensionnement en fonction des performances et fournit des estimations de coût pour une exécution locale. Pour planifier la migration, utilisez Azure Migrate afin d’identifier les sources de données existantes ainsi que les détails relatifs aux fonctionnalités utilisées par vos instances de SQL Server. Ce processus implique une analyse du réseau pour identifier toutes les instances de SQL Server de votre organisation ainsi que la version et les fonctionnalités utilisées.
Important
Quand vous choisissez une machine virtuelle Azure cible pour votre instance SQL Server, veillez à prendre en compte les Recommandations de performances pour SQL Server sur les machines virtuelles Azure.
Pour accéder à des outils de découverte supplémentaires, consultez Services et outils disponibles pour les scénarios de migration de données.
Évaluer
Lors de la migration de SQL Server local vers SQL Server sur des machines virtuelles Azure, il est peu probable que vous ayez des problèmes de compatibilité ou de parité des fonctionnalités si les versions source et cible de SQL Server sont identiques. Si vous ne mettez pas à niveau la version de SQL Server, ignorez cette étape et passez à la section Migrer.
Avant la migration, c’est néanmoins une bonne pratique d’effectuer une évaluation de vos bases de données SQL Server pour identifier les bloqueurs de migration (le cas échéant) : l’extension de migration Azure SQL pour Azure Data Studio effectue cette opération avant la migration.
Notes
Si vous évaluez l’ensemble du patrimoine de données SQL Server à grande échelle sur VMware, utilisez Azure Migrate pour obtenir des recommandations de déploiement Azure SQL, le dimensionnement de la cible et des estimations mensuelles.
Évaluer les bases de données utilisateur
L’extension de migration Azure SQL pour Azure Data Studio fournit une expérience fluide basée sur un assistant pour effectuer l’évaluation, obtenir des recommandations Azure et migrer vos bases de données SQL Server locales vers des machines virtuelles Azure. Outre mettre en évidence les éléments bloquants ou les avertissements liés à la migration, l’extension inclut également une option pour obtenir des recommandations d’Azure en collectant les données de performances de vos bases de données afin de recommander une instance de SQL Server sur des machines virtuelles Azure de taille appropriée pour répondre aux besoins de performances de votre charge de travail (au meilleur prix).
Pour plus d’informations sur les recommandations Azure, consultez Obtenir une recommandation Azure sur une taille appropriée pour votre ou vos bases de données SQL Server locales
Important
Pour évaluer des bases de données en utilisant l’extension de migration Azure SQL, vérifiez que les connexions utilisées pour connecter la source SQL Server sont membres du rôle serveur sysadmin ou disposent de l’autorisation CONTROL SERVER.
Pour la mise à niveau d’une version, utilisez l’Assistant Migration de données pour évaluer les instances locales SQL Server si vous effectuez une mise à niveau vers une instance de SQL Server sur des machines virtuelles Azure avec une version supérieure pour comprendre les différences entre les versions source et cible.
Évaluer les applications
En règle générale, la couche Application accède aux bases de données utilisateur pour conserver et modifier les données. L’Assistant Migration de données peut évaluer la couche d’accès aux données d’une application de deux manières :
- À l’aide des événements étendus capturés ou des traces du SQL Server Profiler de vos bases de données utilisateur. Vous pouvez également vous servir de l’Assistant Expérimentation de base de données afin de créer un journal des traces utilisable pour les tests A/B.
- À l’aide de l’outil Data Access Migration Toolkit (préversion) qui permet de découvrir et d’évaluer les requêtes SQL contenues dans le code et de migrer le code source de l’application d’une plateforme de base de données vers une autre. Cet outil prend en charge les types de fichiers populaires tels que C#, Java, XML et le texte brut. Pour obtenir un guide sur l’exécution d’une évaluation avec l’outil Data Access Migration Toolkit, consultez le billet de blog Use Data Migration Assistant (Utiliser l’Assistant Migration de données).
Lors de l’évaluation des bases de données utilisateur, utilisez l’Assistant Migration de données pour importer les fichiers de trace capturés ou les fichiers du Data Access Migration Toolkit.
Évaluation à grande échelle
Si vous avez plusieurs serveurs qui nécessitent une évaluation de la préparation à Azure, vous pouvez automatiser le processus avec des scripts en utilisant une des options suivantes. Pour en savoir plus sur l’utilisation de scripts, consultez Migrer des bases de données à grande échelle en utilisant l’automatisation.
- Module PowerShell Az.DataMigration
- Extension CLI az datamigration
- Interface de ligne de commande de l’Assistant Migration de données
Pour les rapports récapitulatifs portant sur de grands patrimoines, les évaluations de l’Assistant Migration de données peuvent aussi être centralisées dans Azure Migrate.
Mettre à niveau des bases de données avec l’Assistant Migration de données
Pour un scénario de mise à niveau, vous pouvez avoir une série de recommandations qui vous permettent de garantir que vos bases de données utilisateur fonctionneront correctement après la migration. L’Assistant Migration de données fournit des détails sur les objets affectés, ainsi que des ressources pour la résolution de chaque problème. Veillez à résoudre tous les changements cassants et tous les changements de comportement avant de commencer la mise à niveau de production.
Pour les fonctionnalités déconseillées, vous pouvez choisir d’exécuter vos bases de données utilisateur dans leur mode de compatibilité d’origine, si vous souhaitez éviter d’effectuer ces changements afin d’accélérer la migration. Cette action empêchera la mise à niveau de la compatibilité de votre base de données tant que les éléments déconseillés n’auront pas été résolus.
Attention
Toutes les versions de SQL Server ne prennent pas en charge l’ensemble des modes de compatibilité. Vérifiez que votre version cible de SQL Server prend en charge la compatibilité de base de données choisie. Par exemple, SQL Server 2019 ne prend pas en charge les bases de données ayant le niveau de compatibilité 90 (qui correspond à SQL Server 2005). Ces bases de données nécessitent au moins une mise à niveau vers le niveau de compatibilité 100.
Migrer
Une fois que vous avez effectué les étapes de pré-migration, vous êtes prêt à migrer les bases de données utilisateur et les composants. Migrez vos bases de données à l’aide de la méthode de migration que vous préférez.
Les sections suivantes fournissent des options pour effectuer une migration dans l’ordre de préférence :
- migrer des bases de données avec l’extension de migration Azure SQL pour Azure Data Studio avec un temps d’arrêt minimal
- sauvegarder et restaurer
- détacher et attacher à partir d’une URL ;
- convertir en machine virtuelle, charger sur une URL et déployer en tant que nouvelle machine virtuelle
- copier les journaux de transaction
- expédier un disque dur.
- migrer les objets en dehors des bases de données utilisateur
Migrer avec l’extension de migration Azure SQL pour Azure Data Studio (temps d’arrêt minimal)
Pour effectuer une migration avec un temps d’arrêt minimal en utilisant Azure Data Studio, suivez les étapes générales ci-dessous. Pour obtenir un tutoriel pas à pas, consultez Migrer SQL Server vers SQL Server sur des machines virtuelles Azure en ligne avec Azure Data Studio :
- Téléchargez et installez Azure Data Studio et l’extension de migration Azure SQL.
- Lancez l’Assistant Migration vers Azure SQL de l’extension dans Azure Data Studio.
- Sélectionnez des bases de données pour évaluation, et consultez l’état de préparation ou les problèmes de la migration (le cas échéant). Collectez aussi des données de performances et obtenez une recommandation Azure pour une taille appropriée.
- Sélectionnez votre compte Azure et votre instance SQL Server cible sur des machines virtuelles Azure à partir de votre abonnement.
- Sélectionnez l’emplacement de vos sauvegardes de base de données. Vos sauvegardes de base de données peuvent se trouver sur un partage réseau local ou dans un conteneur Stockage Blob Azure.
- Créez un service Azure Database Migration Service en utilisant l’Assistant dans Azure Data Studio. Si vous avez déjà créé un service Azure Database Migration Service en utilisant Azure Data Studio, vous pouvez réutiliser le même si vous le souhaitez.
- Facultatif : Si vos sauvegardes se trouvent sur un partage réseau local, téléchargez et installez le runtime d’intégration auto-hébergé sur une machine qui peut se connecter au serveur SQL Server source et à l’emplacement contenant les fichiers de sauvegarde.
- Démarrez la migration de la base de données et surveillez la progression dans Azure Data Studio. Vous pouvez aussi surveiller la progression sous la ressource Azure Database Migration Service dans le portail Azure.
- Effectuez le basculement.
- Arrêtez toutes les transactions entrantes vers la base de données source.
- Apportez les changements de configuration nécessaires aux applications pour pointer vers la base de données cible dans SQL Server sur les machines virtuelles Azure.
- Effectuez les sauvegardes de fin de journal pour la base de données source à l’emplacement de sauvegarde spécifié.
- Vérifiez que toutes les sauvegardes de base de données sont à l’état Restauré dans la page des détails de la supervision.
- Sélectionnez Terminer le basculement dans la page des détails de la supervision.
Sauvegarde et restauration
Pour effectuer une migration standard à l’aide de la fonctionnalité de sauvegarde et restauration :
- Configurez la connectivité vers SQL Server sur les machines virtuelles Azure en fonction de vos exigences. Pour plus d’informations, consultez Se connecter à une machine virtuelle SQL Server sur Azure (Resource Manager).
- Suspendez ou arrêtez toutes les applications qui utilisent des bases de données qui doivent migrer.
- Vérifiez que les bases de données utilisateur sont inactives à l’aide du mode utilisateur unique.
- Effectuez une sauvegarde complète de la base de données vers un emplacement sur site.
- Copiez vos fichiers de sauvegarde locaux sur votre machine virtuelle avec le Bureau à distance, Azure Data Explorer ou l’utilitaire en ligne de commande AzCopy. (Espace recommandé pour les sauvegardes : supérieur à 2 To).
- Restaurez les sauvegardes complètes de base de données vers SQL Server sur les machines virtuelles Azure.
Détacher et attacher à partir d’une URL
Détachez votre base de données et vos fichiers journaux et transférez-les vers le stockage Blob Azure. Puis attachez la base de données sur votre machine virtuelle Azure à partir de l’URL. Utilisez cette méthode si vous souhaitez que les fichiers de la base de données physique résident dans le stockage Blob, ce qui peut être utile pour les bases de données très volumineuses. Utilisez les étapes générales suivantes pour faire migrer une base de données utilisateur à l’aide de cette méthode manuelle :
- Détachez les fichiers de base de données de l’instance de base de données sur site.
- Copiez les fichiers de la base de données détachée dans Stockage Blob Azure à l’aide de l’utilitaire de ligne de commande AZCopy.
- Attachez les fichiers de base de données à partir de l’URL Azure à l’instance de SQL Server dans la machine virtuelle Azure.
Effectuer une conversion vers une machine virtuelle, télécharger vers une URL et déployer en tant que nouvelle machine virtuelle
Cette méthode permet de migrer toutes les bases de données système et utilisateur dans une instance SQL Server locale vers une machine virtuelle Azure. Utilisez les étapes générales suivantes pour exécuter la migration d’une instance de SQL Server entière à l’aide de cette méthode manuelle :
- Convertir des machines physiques ou virtuelles en disques durs virtuels Hyper-V.
- Télécharger les fichiers VHD sur Azure Storage à l’aide de l’ applet de commande Add-AzureVHD.
- Déployer une nouvelle machine virtuelle en utilisant le VHD téléchargé.
Notes
Pour migrer une application entière, vous pouvez utiliser Azure Site Recovery.
Copie des journaux de transaction
La copie des journaux de transaction réplique les fichiers journaux de transactions locaux dans une instance SQL sur une machine virtuelle Azure. Cette option permet de réduire au minimum les temps d’arrêt pendant le basculement et de réduire les frais de configuration par rapport à la configuration d’un groupe de disponibilité Always On.
Pour plus d’informations, consultez Tables et procédures stockées liées à la copie des journaux de transaction.
Expédier un disque dur
Vous pouvez utiliser la méthode de service Import/Export Azure pour transférer de grandes quantités de données de fichiers vers le stockage d’objets blob Azure lorsque le coût de l’opération de téléchargement via le réseau est prohibitif, voire irréalisable. Avec ce service, vous envoyez un ou plusieurs disques durs contenant ces données à un centre de données Azure, où vos données seront téléchargées sur votre compte de stockage.
Migrer des objets en dehors des bases de données utilisateur
Des objets SQL Server supplémentaires sont parfois requis pour garantir un fonctionnement fluide de vos bases de données utilisateur après la migration.
Le tableau ci-dessous fournit une liste des composants de référence et des méthodes de migration recommandées à appliquer avant ou après la migration de vos bases de données utilisateur.
Fonctionnalité | Composant | Méthodes de migration |
---|---|---|
Bases de données | Modèle | Script avec SQL Server Management Studio. |
Base de données tempdb |
Pour des performances optimales, prévoyez le déplacement de la base de données tempdb sur un disque temporaire (SSD) de machine virtuelle Azure. Veillez à choisir une machine virtuelle disposant d’un disque SSD local dont la taille est suffisante pour accueillir votre base de données tempdb . |
|
Bases de données utilisateur avec FileStream | Utilisez les méthodes de sauvegarde et de restauration pour la migration. L’Assistant Migration de données ne prend pas en charge les bases de données avec FileStream. | |
Sécurité | Connexions SQL Server et Windows | Utilisez l’Assistant Migration de données pour migrer les connexions utilisateur. |
Rôles SQL Server | Script avec SQL Server Management Studio. | |
Fournisseurs de chiffrement | Recommandez la conversion pour utiliser Azure Key Vault. Cette procédure utilise le fournisseur de ressources de machines virtuelles SQL. | |
Objets de serveur | Unités de sauvegarde | Remplacez-les par une sauvegarde de base de données à l’aide de Sauvegarde Azure ou écrivez les sauvegardes dans le Stockage Azure (SQL Server 2012 SP1 CU2 +). Cette procédure utilise le fournisseur de ressources de machines virtuelles SQL. |
Serveurs liés | Script avec SQL Server Management Studio. | |
Déclencheurs de serveur | Script avec SQL Server Management Studio. | |
Réplication | Publications locales | Script avec SQL Server Management Studio. |
Abonnés locaux | Script avec SQL Server Management Studio. | |
PolyBase | PolyBase | Script avec SQL Server Management Studio. |
Gestion | Messagerie de base de données | Script avec SQL Server Management Studio. |
SQL Server Agent | travaux | Script avec SQL Server Management Studio. |
Alertes | Script avec SQL Server Management Studio. | |
Opérateurs | Script avec SQL Server Management Studio. | |
Proxies | Script avec SQL Server Management Studio. | |
Système d'exploitation | Fichiers, partages de fichiers | Notez tous les autres fichiers ou partages de fichiers utilisés par vos serveurs SQL Server et répliquez-les sur la cible de machine virtuelle Azure. |
Post-migration
Une fois la phase de migration terminée, vous devez effectuer une série de tâches post-migration pour vous assurer que tout fonctionne de la manière la plus fluide et efficace possible.
Corriger les applications
Une fois les données migrées vers l’environnement cible, toutes les applications qui consommaient la source doivent commencer à consommer la cible. Dans certains cas, il peut être nécessaire d’apporter des modifications aux applications.
Appliquez les correctifs recommandés par l’Assistant Migration de données aux bases de données utilisateur. Vous devez générer un script de ces correctifs pour garantir la cohérence et permettre l’automatisation.
Effectuer des tests
L’approche de test pour la migration de base de données comprend les activités suivantes :
- Développer des tests de validation : pour tester la migration d’une base de données, vous devez utiliser des requêtes SQL. Créez des requêtes de validation à exécuter sur les bases de données source et cible. Vos requêtes de validation doivent couvrir l’étendue que vous avez définie.
- Configurer un environnement de test : L’environnement de test doit contenir une copie de la base de données source et de la base de données cible. Veillez à isoler l’environnement de test.
- Exécuter des tests de validation : exécutez les tests de validation sur la source et sur la cible, puis analysez les résultats.
- Exécuter des tests de performance : exécutez des tests de performances sur la source et sur la cible, puis analysez et comparez les résultats.
Conseil
Utilisez l’Assistant Expérimentation de base de données pour faciliter l’évaluation des performances du serveur cible SQL Server.
Optimiser
La phase post-migration est cruciale pour résoudre les problèmes d’exactitude et vérifier l’exhaustivité des données, ainsi que pour traiter les problèmes de performances liés à la charge de travail.
Pour plus d’informations sur ces problèmes et les étapes pour les atténuer, consultez :
- Guide de validation et d’optimisation post-migration
- Réglage des performances sur les machines virtuelles Azure SQL
- Centre d’optimisation des coûts Azure
Étapes suivantes
Pour vérifier la disponibilité des services qui s’appliquent à SQL Server, consultez le Centre de l’infrastructure mondiale Azure.
Si vous souhaitez obtenir une matrice des services et outils Microsoft et tiers qui peuvent vous aider dans différents scénarios de migration de données et de base de données ainsi que pour des tâches spécialisées, consultez Services et outils disponibles pour les scénarios de migration de données.
Pour en savoir plus sur Azure SQL, consultez :
- Options de déploiement
- SQL Server sur les machines virtuelles Azure
- Outil de calcul du coût total de possession (TCO) Azure
Pour en savoir plus sur l’infrastructure et le cycle d’adoption des migrations cloud, consultez :
- Cloud Adoption Framework pour Azure
- Meilleures pratiques pour l’évaluation des coûts et le dimensionnement des charges de travail migrées vers Azure
Pour plus d’informations sur la gestion des licences, consultez :
- BYOL (apportez votre propre licence) avec Azure Hybrid Benefit
- Bénéficier du support étendu pour SQL Server
Pour évaluer la couche d’accès aux applications, consultez Data Access Migration Toolkit (préversion).
Pour plus d’informations sur la façon d’effectuer un test A/B pour la couche d’accès aux données, consultez Vue d’ensemble de l’Assistant Expérimentation de base de données.
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour