KB4466108 - CORRECTIF : La sauvegarde d’une base de données SQL Server à l’aide d’une application de sauvegarde VSS peut échouer après l’installation de SQL Server 2016 et 2017

S’applique à
SQL Server 2017 Developer on Windows SQL Server 2017 Enterprise on Windows SQL Server 2017 Enterprise Core on Windows SQL Server 2017 Standard on Windows SQL Server 2016 Developer - duplicate (do not use) SQL Server 2016 Enterprise - duplicate (do not use) SQL Server 2016 Enterprise Core - duplicate (do not use) SQL Server 2016 Standard - duplicate (do not use)

Symptômes

Prenons le scénario suivant :

  • Vous exécutez un serveur qui héberge plusieurs instances avec différentes versions principales, y compris non seulement Microsoft SQL Server 2008, 2008 R2, 2012 ou 2014, mais aussi SQL Server 2016 ou 2017 (cela inclut les instances d’éditions légères telles que SQL Express).

Dans ce scénario, l’application VSS peut ne pas collecter correctement les bases de données SQL Server. En outre, un message d’erreur semblable à celui qui suit peut s’afficher dans les journaux d’événements d’application Windows :

Pour une instance de SQL Server 2008 OU 2008 R2

Remarque

État de l’erreur : 1, Gravité : 16
Source : Microsoft SQL Server Native Client 11.0
Message d’erreur : Nom d’objet « master.sys.availability_replicas non valide ».

Remarque : L’erreur se produit lorsque vous exécutez la requête suivante :
declare @sql nvarchar(MAX)DECLARE @DatabaseName VARCHAR(256)set @DatabaseName =N’master’set @sql = SELECT 1 FROM master.sys.availability_replicas AS IN JOIN master.sys.databases AS d ON DB_ID(''' + @DatabaseName + ''') = d.database_id AND ar.replica_id = d.replica_id INNER JOIN master.sys.dm_hadr_availability_replica_states AS st ON ar.replica_id = st.replica_id AND st.role = 2'EXEC(@sql)

Pour un SQL Server 2012 ou SQL Server 2014 instance hébergement AlwaysOn Groupe de disponibilité Bases de données secondaires

Remarque

État de l’erreur : 1, Gravité : 16
Source : Microsoft SQL Server Native Client 11.0
Message d’erreur : Nom de colonne « basic_features non valide ».

Et dans ce cas, la requête rencontrant l’erreur sera :

Remarque

'select database_id, ar.replica_id, replica_server_name, is_primary_replica, ar.group_id, basic_features from master.sys.availability_replicas ar, master.sys.dm_hadr_database_replica_states rs, master.sys.availability_groups ag where database_id = DB_ID(''' + @DatabaseName + ''' ) AND replica_server_name = ''' + @INSTANCENAME + ''' AND ar.replica_id = rs.replica_id AND ar.group_id = ag.group_id'

Résolution

Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :

Mise à jour cumulative 12 pour SQL Server 2017

Mise à jour cumulative 4 pour SQL Server 2016 SP2

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :

Dernière mise à jour cumulative pour SQL Server 2017

Dernière mise à jour cumulative pour SQL Server 2016

État

Microsoft a confirmé qu’il s’agissait d’un problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Références

Découvrez la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.