SQL Server mise à niveau échoue et retourne l’erreur 4860
Cet article vous aide à résoudre l’erreur 4860 qui se produit lorsque vous installez une mise à jour cumulative (CU) ou un Service Pack (SP) pour Microsoft SQL Server. L’erreur se produit lorsque des scripts de mise à niveau de base de données sont exécutés.
Symptômes
Lorsque vous installez une mise à jour cumulative ou un fournisseur de services pour SQL Server, le programme d’installation signale l’erreur suivante :
Attendez que le handle de récupération du moteur de base de données ait échoué. Vérifiez les causes potentielles dans le journal des erreurs SQL Server.
Lorsque vous case activée le journal des erreurs SQL Server, vous remarquez des messages d’erreur tels que les suivants :
Error: 4860, Severity: 16, State: 1.
Cannot bulk load. The file "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Install\SqlTraceCollect.dtsx"<Filename> does not exist.
Error: 912, Severity: 21, State: 2.
Script level upgrade for database 'master' failed because upgrade step 'msdb110_upgrade.sql' encountered error 4860, state 1, severity 16. This is a serious error condition which might interfere with regular operation and the database will be taken offline. If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting. Examine the previous errorlog entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion.
Error: 3417, Severity: 21, State: 3.
Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it.For more information about how to rebuild the master database, see SQL Server Books Online.
Cause
Cette erreur se produit si une opération de chargement en masse échoue lorsque vous appliquez un cu ou un fournisseur de services. Cela se produit en raison de fichiers d’installation de support manquants. Pour plus d’informations sur les scripts de mise à niveau de base de données qui s’exécutent pendant l’installation de CU ou du fournisseur de services, consultez Résoudre les échecs de script de mise à niveau lors de l’application d’une mise à jour.
Par exemple, si le programme d’installation ne trouve pas SqlTraceCollect.dtsx, il signale une erreur semblable à l’entrée suivante :
Error: 4860, Severity: 16, State: 1.
Cannot bulk load. The file "C:\Program Files\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Install\SqlTraceCollect.dtsx"
Résolution
Pour résoudre l’erreur 4860, procédez comme suit :
Démarrez SQL Server avec l’indicateur de trace (TF) 902. Pour plus d’informations, consultez Étapes de démarrage de SQL avec l’indicateur de trace 902.
Réparez l’installation SQL Server selon la procédure décrite dans Réparer une installation ayant échoué SQL Server. Vous pouvez également copier le fichier manquant à partir d’un autre système qui a la même build que votre installation SQL Server et restaurer le fichier sur l’ordinateur sur lequel l’installation échoue.
Supprimez TF 902 des paramètres de démarrage, puis redémarrez SQL Server. Une fois SQL Server démarré sans TF 902, le script de mise à niveau s’exécute à nouveau.
- Si le script de mise à niveau se termine correctement, la mise à niveau du fournisseur de services ou cu est terminée. Vous pouvez case activée le journal des erreurs SQL Server et le dossier bootstrap pour vérifier l’installation terminée.
- Si le script de mise à niveau échoue à nouveau, case activée le journal des erreurs SQL Server pour les entrées d’erreur supplémentaires, puis résolvez les nouvelles erreurs.