Partager via


Résoudre les problèmes lors de la migration vers Azure SQL Managed Instance

Cet article vous aide à résoudre les problèmes courants que vous pouvez rencontrer lors de la migration de bases de données SQL Server vers Azure SQL Managed Instance à l’aide de SQL Server migration dans Azure Arc.

Note

Vous pouvez fournir des commentaires sur votre expérience de migration directement vers le groupe de produits.

Version de l’agent Arc

Lorsque vous utilisez SQL Server migration dans Azure Arc, certaines fonctionnalités nécessitent une version minimale de l’agent Arc. L’agent Arc est un exécutable qui s’exécute en même temps que votre instance de SQL Server pour fournir une connectivité à Azure. Conservez toujours la version de votre agent Arc à jour pour obtenir les derniers correctifs et mises à jour.

Une fois les mises à jour automatiques activées, l’agent Arc reste à jour automatiquement. Toutefois, lorsqu’une nouvelle version de l’agent Arc est déployée, la mise à jour peut prendre quelques jours pour atteindre tous les serveurs. Vous pouvez accélérer le processus en exécuter manuellement une mise à jour de l’agent Arc à la demande via le portail Azure ou les interfaces de ligne de commande.

Si vous voyez l’erreur suivante lors de l’accès au volet Database dans le portail Azure, vous devez mettre à niveau votre agent Arc vers une version prise en charge :

To enable migration and monitoring capabilities, 
please update your Azure Arc agent extension "WindowsAgentSQLServer" to the latest version.

Problèmes liés à l’agent Arc

Si vous rencontrez des problèmes avec l’agent Arc, comme un état d’extension non sain ou une instance de SQL Server déconnectée, utilisez le guide de résolution des problèmes d’extension suivant : Troubleshoot Azure extension pour SQL Server.

Problèmes d’évaluation de préparation de la migration

Le système exécute les évaluations de préparation de la migration tous les dimanches à 11 h (23 h 00) localement sur le serveur. Les évaluations de SQL Server instances nouvellement activées par Azure Arc peuvent prendre plusieurs jours pour apparaître dans le portail Azure. Utilisez Exécuter l'évaluation pour lancer une évaluation à la demande. L’évaluation s’affiche après quelques minutes.

Si la page des évaluations de préparation à la migration de base de données est vide dans le portail Azure, l'évaluation planifiée n'a probablement pas été exécutée, ou il y a eu un problème lors de l'exécution de l'évaluation sur l'instance de SQL Server. La désactivation de l’agent Arc empêche l’exécution des évaluations. Vérifiez que l’agent Arc est activé. Pour plus d’informations, consultez Modifier les paramètres d’évaluation.

Tenez compte du problème connu suivant :

  • Lorsque xp_cmdshell est activé et utilisé, l’évaluation enregistre un avertissement pour SQL Managed Instance, car vous pouvez toujours migrer la base de données. Toutefois, il interrompt les fonctionnalités de l’objet qui utilise xp_cmdshellspécifiquement . Utilisez les recommandations de remédiation fournies dans l’évaluation pour atténuer le problème.

Contactez Support Microsoft si vous rencontrez l’un des problèmes suivants :

  • Les rapports d’évaluation n’apparaissent pas dans le portail, même après l’heure planifiée.
  • La disponibilité des données de performances n’augmente pas après une semaine de collecte des données.

Afficher Azure journal d’activité pour les problèmes de migration

Le journal d’activité dans le portail Azure, lorsqu’il est accessible à partir d’une ressource, fournit des informations sur les événements au niveau des ressources qui se produisent dans Azure. Cet aperçu comprend des informations sur la modification ou la suppression de ressources, ainsi que des détails sur l’état de santé du service et d’autres événements importants.

Lors de la résolution des problèmes de migration vers Azure SQL Managed Instance à l’aide de SQL Server migration dans Azure Arc, le journal d’activité est une ressource précieuse pour identifier les problèmes et comprendre la séquence d’événements qui ont conduit à un problème.

Pour accéder au journal d’activité dans le portail Azure pour votre instance de SQL Server activée par Azure Arc ressource, procédez comme suit :

  1. Accédez à votre instance SQL Server activée par Azure Arc ressource dans le portail Azure.

  2. Sélectionnez Le journal d’activité dans le menu de ressources :

    Screenshot du journal d’activité mis en surbrillance pour une ressource d’instance SQL Server dans le portail Azure.

Vous pouvez également accéder au journal d’activité au niveau de l’abonnement pour une vue plus large des événements sur toutes les ressources de votre abonnement en sélectionnant l’icône de cloche de notification de la barre de navigation supérieure, puis en sélectionnant Plus d’événements dans le journal d’activité :

Screenshot de l’icône de cloche de notification mise en surbrillance dans le portail Azure.

Sélectionnez un événement dans le journal d’activité pour ouvrir un volet des détails de l’événement. Utilisez les onglets Résumé et JSON pour afficher des informations détaillées sur l’événement, y compris des messages d’erreur particuliers. Si vous créez une demande de support, communiquez ces informations avec autant de détails que possible.

Nouvelles bases de données indisponibles dans le portail Azure

Les bases de données récemment ajoutées à votre instance de SQL Server peuvent ne pas être immédiatement visibles dans le portail Azure lorsque vous essayez de sélectionner des bases de données pour la migration. Cela est dû au fait qu’il faut environ une heure pour que l’agent Arc actualise automatiquement la liste de bases de données.

Pour contourner ce problème, vous pouvez redémarrer le service Arc pour déclencher une actualisation immédiate de la liste de bases de données.

Sur Windows, utilisez la commande suivante dans une invite de commandes avec élévation de privilèges sur le serveur qui héberge votre instance de SQL Server :

Restart-Service himds
Restart-Service gcarcservice
Restart-Service extensionservice

Attendez que les services redémarrent, puis utilisez la commande suivante pour vérifier que le service s’exécute avec la commande suivante :

& "$env:ProgramW6432\AzureConnectedMachineAgent\azcmagent.exe" show

Sur les serveurs Linux, utilisez la commande suivante dans un terminal avec élévation de privilèges :

sudo systemctl restart himdsd
sudo systemctl restart gcad
sudo systemctl restart extd

Attendez que les services redémarrent, puis utilisez la commande suivante pour vérifier que le service s’exécute avec la commande suivante :

azcmagent show

Accédez à la page Databases dans le portail Azure de votre instance SQL Server, puis sélectionnez Refresh pour afficher les bases de données nouvellement ajoutées. Vous pouvez maintenant sélectionner ces nouvelles bases de données pour la migration.

Cette section décrit certains des problèmes courants liés à la fonctionnalité de lien Managed Instance lors de la migration vers Azure SQL Managed Instance via SQL Server migration dans Azure Arc :

Service Pack incorrect installé

Vérifiez que le appropriate SQL Server Service Pack (SP) ou la mise à jour cumulative (CU) est installé.

Vous pouvez vérifier la version correcte en exécutant la commande T-SQL suivante sur votre instance de SQL Server :

EXEC sp_certificate_add_issuer @CERTID, N'*.database.windows.net'

Si vous obtenez l'erreur indiquant que SQL Server ne trouvez pas la procédure stockée sp_certificate_add_issuer, vous n'avez probablement pas installé le pack de maintenance approprié (par exemple, le pack de fonctionnalités Azure Connect). Installez les mises à jour de maintenance nécessaires et réessayez.

Fonctionnalité de groupe de disponibilité Always On désactivée

Vérifiez que la fonctionnalité Always On availability group est activée sur votre instance de SQL Server. Le lien Managed Instance nécessite que la fonctionnalité de groupe de disponibilité Always On soit activée pour des fonctionnalités appropriées.

Utilisation de SQL Server 2016

Pour SQL Server 2016 (13.x), vous devez suivre les étapes supplémentaires décrites dans Prepare SQL Server 2016 prérequis pour le lien. Ces étapes supplémentaires ne sont pas requises pour SQL Server 2017 (14.x) et les versions ultérieures prises en charge par le lien.

Problèmes de connectivité réseau

La connectivité réussie entre votre environnement de SQL Server et Azure SQL Managed Instance est essentielle pour que la fonctionnalité de liaison Managed Instance fonctionne. Si vous rencontrez des problèmes de connectivité réseau, tenez compte des points suivants :

  • Le lien Managed Instance ne fonctionne pas sur un réseau public. Par conséquent, la connexion entre votre instance de SQL Server et Azure SQL Managed Instance doit être privée, par exemple à l'aide d'un VPN.
  • Vous pouvez tester la connectivité directement à partir du portail Azure dans le cadre du processus de migration. Si le test de connexion réussit dans le portail, mais que le lien ne peut pas être créé, consultez le journal d’activité pour plus d’informations sur l’échec. Vous pouvez également tester manuellement la connectivité à l’aide de Transact-SQL et du SQL Server Agent.
  • Vérifiez la présence de pare-feu d'entreprise sur votre réseau. Bien que la connectivité réseau puisse fonctionner, il est possible que les pare-feu bloquent un type spécifique de paquets que SQL Server utilise pour les groupes de disponibilité distribués. Vérifiez que les pare-feu ne bloquent pas ou ne filtrent pas les types de paquets.

Les avertissements suivants peuvent apparaître lors du démarrage de la tâche de migration de liens Managed Instance. Vous pouvez poursuivre la migration malgré ces avertissements :

  • Warning: Database Mirroring Endpoint does not exist
  • Warning: Database Mirroring Endpoint is not secure with a certificate
  • Warning: Database Mirroring Endpoint is not enabled
  • Warning: Database Mirroring Endpoint encryption algorithm is not set to AES

Ces avertissements sont actuellement un problème connu et le processus de migration les résout automatiquement afin de pouvoir poursuivre la migration.

Examinez d’autres avertissements. Certains avertissements peuvent nécessiter une résolution de votre part avant de pouvoir démarrer la migration, tandis que certains peuvent être résolus une fois la migration terminée.

La configuration d'un lien via le portail Azure pour la migration n'est pas compatible avec les liens existants que vous créez manuellement, via SQL Server Management Studio (SSMS) ou Transact-SQL (T-SQL). Si un lien existe déjà, vous ne pouvez pas créer de lien via le portail Azure.

Si un lien existe déjà sur la source SQL Server ou la cible Azure SQL Managed Instance, vous devez effectuer les étapes suivantes avant de créer un lien entre cette source et la cible via le portail Azure :

  1. Supprimez manuellement le lien depuis SQL Managed Instance à l’aide de Remove-AzSqlInstanceLink ou az sql mi link delete depuis Azure Cloud Shell ou d’un ordinateur connecté avec le contexte Azure.
  2. Supprimez manuellement le lien de SQL Server à l’aide de DROP AVAILABILITY GROUP avec le nom du groupe de disponibilité distribué associé au lien.
  3. Supprimez tous les certificats liés au lien de l’instance de SQL Server à l’aide de DROP CERTIFICATE. Les certificats que vous devez supprimer contiennent généralement les valeurs suivantes : DigiKey PKI, Microsoft PKI, endpoint et database.windows.net. Vous pouvez utiliser SELECT * FROM sys.certificates pour répertorier tous les certificats sur SQL Server.
  4. Supprimez tous les certificats liés aux liaisons de SQL Managed Instance à l’aide de Remove-AzSqlInstanceServerTrustCertificate ou az sql mi partner-cert delete en utilisant Azure Cloud Shell ou d’une machine connectée à un contexte Azure. Vous pouvez utiliser Get-AzSqlInstanceServerTrustCertificate ou az sql mi partner-cert show pour répertorier les certificats d’authentification existants sur SQL Managed Instance.
  5. Les étapes précédentes effacent tous les certificats d’authentification liés au lien générés manuellement pour un lien créé manuellement. Si vous n’utilisez pas de groupe de disponibilité existant localement, envisagez de supprimer le point de terminaison de mise en miroir de bases de données existant à l’aide de DROP ENDPOINT. Vous pouvez utiliser SELECT * FROM sys.endpoints pour répertorier tous les points de terminaison existants sur SQL Server. Vous devez supprimer le certificat associé au point de terminaison avant de pouvoir supprimer le point de terminaison.

Résolution détaillée des problèmes avec XE Profiler

Pour une résolution détaillée des problèmes de lien, utilisez XE Profiler.

Problèmes de migration du service Log Replay

Cette section répertorie les problèmes courants que vous pouvez rencontrer lors de la migration à l’aide du service Log Replay (LRS) :

Impossible de répertorier les répertoires dans Stockage Blob Azure

Si vous voyez le message d'erreur indiquant que vous êtes Unable to list directories lors de la sélection d'un répertoire dans la page New Data Migration dans le portail Azure, l'utilisateur actuellement connecté au portail n'a pas le rôle Storage Blob Data Reader affecté au compte de stockage. Accordez à l’utilisateur l’accès au compte de stockage pour résoudre le problème.

Aucun résultat n’a été trouvé dans le répertoire

Si vous voyez le message indiquant que No results were found in directory lors de la sélection d'un répertoire dans la page New Data Migration dans le portail Azure, aucune sauvegarde de base de données n'est disponible dans le conteneur de stockage Blob Azure. Pour résoudre ce problème, chargez une sauvegarde complète de la base de données sur Azure Blob Storage.

Vérifier l’état de restauration des fichiers

Pour vérifier le nombre de fichiers détectés, mis en file d'attente, sautés, ou non réparables pendant la migration, utilisez la page Surveillance et basculement dans le portail Azure. Une fois la migration démarrée, accédez à la page Surveiller et commutation, puis sélectionnez la base de données en migration afin d'ouvrir les détails de la migration de cette base de données.

Erreur 2009 : l’identité managée n’est pas configurée correctement

Si votre migration démarre correctement, mais échoue avec l'erreur 2009 - managed identity is not set up properly, l'identité principale de l'instance managée n'a pas l'autorisation Lecteur de données BlobStorage attribuée au compte de stockage Blob Azure. Accordez à l’identité managée l’accès au compte de stockage pour résoudre le problème. Vérifiez que l’identité appropriée (l’identité managée par défaut ou une identité personnalisée définie par l’utilisateur) dispose des autorisations requises ou que l’identité n’a pas changé depuis que les autorisations ont été accordées à l’origine. Si l’identité a changé, accordez les autorisations appropriées à la nouvelle identité pour résoudre le problème.

Résoudre les problèmes de migration avec DMS

Le démarrage d’un travail de migration LRS dans Azure Arc crée automatiquement un travail de migration Database Migration Service (DMS) afin de pouvoir utiliser Azure Database Migration Service dans le portail Azure pour afficher des détails supplémentaires sur la tâche de migration.

Pour afficher les détails du travail de migration LRS dans DMS, procédez comme suit :

  1. Accédez à Azure Database Migration Service dans le portail Azure.

  2. Sélectionnez toutes les ressources , puis sélectionnez le travail de migration DMS associé à votre migration LRS pour ouvrir la page des détails de la migration :

    Capture d'écran de la page de toutes les ressources DMS dans le portail Azure.

  3. Dans la page des détails de la migration, sélectionnez Surveiller les migrations pour afficher l’état des bases de données migrées pour une instance particulière à l’aide de LRS. Sélectionnez Réussite, Annulation ou Erreur pour afficher plus de détails sur l’état.

    Une autre façon d’accéder à cette page consiste à utiliser la ressource Azure Database Migration Service ajoutée au groupe de ressources qui contient le SQL Managed Instance cible après le démarrage d’une migration via Azure Arc.

Supprimer des travaux de migration

Les travaux de migration LRS restent sur la page Surveillance et basculement pendant 28 jours après leur achèvement (réussite ou échec). Vous pouvez supprimer manuellement les travaux si vous souhaitez les effacer de la page de surveillance plus tôt.

Pour supprimer manuellement les travaux, accédez au travail de migration DMS associé à votre migration LRS , comme décrit dans la section précédente. Sélectionnez la tâche de migration à supprimer, puis utilisez le bouton Supprimer la corbeille pour supprimer le travail. Confirmez en sélectionnant « Cochez cette case pour confirmer la suppression ». Cette action efface les tâches de la page Monitor et basculement dans Azure Arc.

Problèmes connus après la migration vers SQL Managed Instance

Tenez compte des problèmes connus suivants après la migration vers Azure SQL Managed Instance :

Échecs d’opération de restauration après la migration vers SQL Managed Instance

Si vous migrez une base de données vers Azure SQL Managed Instance à partir de SQL Server 2019 et versions ultérieures avec récupération accélérée de base de données activée, mais avec le magasin de versions persistantes (PVS) configuré sur une valeur autre que le groupe de fichiers PRIMARY, vous pouvez rencontrer des échecs d’opération de restauration sur l’instance SQL managée cible.

Pour contourner ce problème, veillez à définir le magasin de versions persistent sur PRIMARY sur la base de données source SQL Server avant de la migrer vers SQL Managed Instance. Si vous avez déjà migré la base de données sans définir le pvS sur PRIMARY, vous pouvez la définir sur la base de données source SQL Server, puis la migrer à nouveau vers SQL Managed Instance.

Impossible d’utiliser la récupération de base de données accélérée après la migration vers SQL Managed Instance

À compter de SQL Server 2019, si vous migrez une base de données vers Azure SQL Managed Instance, et que la base de données source a accéléré récupération de base de données désactivée, vous ne pouvez pas utiliser la récupération accélérée de la base de données sur l'instance managée SQL cible.

Pour contourner ce problème, veillez à activer la récupération accélérée de la base de données sur la base de données source SQL Server avant de la migrer vers SQL Managed Instance. Si vous avez déjà migré la base de données sans activer la récupération accélérée de la base de données, vous pouvez l’activer sur la base de données source SQL Server, puis migrer à nouveau la base de données vers l’instance managée SQL.

SQL Server 2017 et les versions antérieures ne prennent pas en charge la récupération accélérée des bases de données. Ce problème ne s'applique donc pas aux bases de données migrées à partir de ces versions de SQL Server.

Impossible d’utiliser Service Broker après la migration vers SQL Managed Instance

Si vous migrez une base de données vers Azure SQL Managed Instance et que Service Broker est désactivé sur la base de données source, vous ne pouvez pas utiliser Service Broker sur l'instance managée SQL cible.

Pour contourner ce problème, veillez à activer Service Broker sur la base de données source SQL Server avant de la migrer vers SQL Managed Instance. Si vous avez déjà migré la base de données sans activer Service Broker, vous pouvez l’activer sur la base de données source SQL Server, puis migrer à nouveau la base de données vers SQL Managed Instance.

Contacter Microsoft

Vous pouvez contacter Microsoft pour ouvrir un ticket de support avec un problème que vous rencontrez ou pour fournir des commentaires directement au groupe de produits.

Contacter le support technique

Utilisez https://aka.ms/azure-support pour accéder à la page Help + support dans le portail Azure, puis suivez ces étapes pour ouvrir un ticket de support lié à la migration :

  1. Sélectionnez Créer une demande de support pour ouvrir le volet Support + résolution des problèmes .
  2. Tapez migration dans le champ de texte, puis sélectionnez Aucun des services ci-dessus sous Quel service rencontrez-vous un problème ?
  3. Dans la liste déroulante Select a service, sélectionnez SQL Server enabled by Azure Arc, puis utilisez Next pour continuer.
  4. Sélectionnez votre abonnement dans la liste déroulante.
  5. Sélectionnez votre instance SQL Server activée par Azure Arc ressource dans la liste déroulante Resource puis sélectionnez Next.
  6. Sélectionnez Problèmes de migration dans la vignette Vous rencontrez l’un des problèmes suivants ? Sélectionnez Suivant.
  7. Sélectionnez Créer une demande de support dans la barre de navigation supérieure dans le volet Support + résolution des problèmes pour ouvrir le formulaire de ticket de support.
  8. Utilisez les valeurs de sous-type Problème suivantes pour router votre problème vers la file d’attente de prise en charge appropriée :
    • Évaluer : si vous rencontrez des problèmes avec l’évaluation de préparation de la migration.
    • Migration de données LRS : si vous rencontrez des problèmes avec une migration de Log Replay Service (LRS).
    • MI Link Data Migration : si vous rencontrez des problèmes avec une migration de liens Managed Instance.
    • Surveillance et basculement : si vous rencontrez des problèmes de surveillance de la migration ou de basculement.
    • Approvisionnement de la Cible : si vous rencontrez des problèmes lors de l'approvisionnement de l'instance gérée SQL Azure cible.
  9. Utilisez Suivant pour suivre les étapes restantes du formulaire de demande de support, puis sélectionnez Créer pour soumettre votre demande de support.

Fournir des commentaires au groupe de produits

Vous pouvez fournir des commentaires au groupe de produits pour améliorer l’expérience de migration. Utilisez le lien suivant pour envoyer vos commentaires :