Résoudre les échecs de script de mise à niveau lors de l’application d’une mise à jour
Scripts de mise à niveau de base de données
Les scripts de mise à niveau T-SQL sont fournis avec chaque mise à jour cumulative SQL Server. Ils sont exécutés une fois les fichiers binaires SQL Server remplacés par les dernières versions. Lorsque vous appliquez une mise à jour cumulative (CU) à une instance existante de SQL Server ou que vous la mettez à jour vers une version plus récente, le processus d’installation associé exécute la procédure en deux phases différentes :
Dans la phase initiale, le processus d’installation met uniquement à jour les fichiers binaires (DLL, EXEs), et non la base de données et ses objets.
Une fois la mise à niveau terminée et le service redémarré pour la première fois, le processus de mise à jour démarre la mise à niveau de la base de données à l’aide du script msdb110_upgrade.sql dans le dossier C :\Program Files\Microsoft SQL Server\MSSQLXX. AAAA\MSSQL\Install\.
Ces scripts T-SQL s’assurent que les bases de données système sont prêtes pour de nouveaux correctifs ou fonctionnalités fournis dans le cadre des unités de gestion cloud ou service Packs correspondantes (SP) ou pour la nouvelle version. Une installation complète de CU et de SP ou une mise à niveau vers une nouvelle version nécessite l’exécution réussie du script de mise à niveau de la base de données. L’échec de cette opération peut entraîner des problèmes inattendus avec votre instance SQL Server. L’échec d’exécution du script de mise à niveau est une cause courante des échecs d’installation de cu et de SP. Cette série de résolution des problèmes couvre les défaillances courantes de cette catégorie et les étapes que vous pouvez effectuer pour les résoudre.
Méthodologie générale de résolution des problèmes
- Pour plus d’informations sur l’échec, consultez les journaux d’erreurs SQL Server (ERRORLOG).
- Pour contourner l’exécution du script de mise à niveau, démarrez SQL Server à l’aide de l’indicateur de trace 902.
- Résolvez la cause de l’échec en fonction de différents scénarios.
Comme indiqué dans MSSQLSERVER_912, lorsque les scripts de mise à niveau échouent, l’Assistant Installation signale l’échec initial de l’assistant d’installation « Attendre l’échec du handle de récupération Moteur de base de données. Vérifiez le journal des erreurs SQL Server pour connaître les causes potentielles ». Le journal des erreurs SQL Server contient des entrées pour les messages d’erreur 912 et 3417. Les erreurs 912 et 3417 sont des erreurs génériques associées aux échecs de script de mise à niveau de base de données. Et les messages précédents de l’erreur 912 fournissent généralement des informations sur ce qui a échoué exactement pendant l’exécution de ces scripts. La résolution et la résolution de ces erreurs vous obligeront à démarrer SQL Server avec l’indicateur de trace 902.
Note
Le démarrage de SQL Server avec l’indicateur de trace 902 fait partie de la résolution des problèmes et de la résolution des erreurs de script de mise à niveau. Il s’applique à tous les scénarios dans lesquels une mise à niveau ou une mise à niveau vers une nouvelle version échoue pendant l’exécution du script de mise à niveau de la base de données. Pour démarrer votre instance SQL Server à l’aide de l’indicateur de trace 902, consultez Étapes de démarrage de SQL Server avec l’indicateur de trace 902.
Après avoir démarré SQL Server avec l’indicateur de trace 902, vous pouvez sélectionner l’un des articles de la section suivante pour résoudre et résoudre vos problèmes.
Messages d’erreur de script de mise à niveau de base de données
Le message d’erreur « Attendre sur le handle de récupération Moteur de base de données a échoué » est le message d’erreur courant pour les erreurs suivantes :
- Erreur 574 : Impossible d’utiliser l’instruction Config dans une transaction
- Erreur 945 : Mise à niveau de SSISDB qui fait partie du groupe de disponibilité
- Erreur 1712 : Les opérations d’index en ligne ne peuvent être effectuées que dans l’édition Entreprise
- Erreur 2714 : L’objet existe déjà une erreur
- Erreur 4860 : Le nom de fichier n’existe pas
- Erreur 5133 : Échec de la création d’une base de données temporaire
- Erreur 6528 : Échec de la mise à niveau de SQL Server avec l’erreur 6528
- Erreur 15151 : Problèmes liés aux principaux SSISDB
- Erreur 15173 : Problèmes de suppression des principaux de serveur
- Erreur 17182 : TLS 1.0 désactivé
- Erreurs lors de la mise à niveau de SQL Server lorsque les principaux basés sur un certificat possèdent des objets utilisateur