KB2535705-FIX : une violation d’accès se produit lorsque vous restaurez une base de données et que vous exécutez la procédure stockée sp_replcounters en même temps sur un serveur qui exécute SQL Server 2008 ou SQL Server 2008 R2

S’applique à : SQL Server 2008SQL Server 2008 R2

Microsoft distribue les correctifs Microsoft SQL Server 2008 Microsoft SQL Server 2008 R2 comme un fichier téléchargeable. Dans la mesure où les correctifs sont cumulatifs, chaque nouvelle version contient tous les correctifs et les correctifs de sécurité inclus dans la version du correctif SQL Server 2008 SQL Server 2008 R2 antérieure.

Symptômes


Prenons l’exemple du scénario suivant :
  • Vous avez un serveur exécutant la réplication dans un environnement Microsoft SQL Server 2008 ou dans un environnement Microsoft SQL Server 2008 R2.
  • Un deuxième serveur exécute Microsoft SQL Server 2008 ou Microsoft SQL Server 2008 R2, et la réplication est désactivée ou n’est pas installée.
  • Vous restaurez une base de données répliquée du premier serveur sur le second serveur.
  • Pendant le processus de restauration de la base de données, un utilisateur ou une application exécute la procédure stockée sp_replcounters sur le second serveur.
Dans ce scénario, une violation d’accès est susceptible de se produire sur le second serveur. Par ailleurs, un fichier de vidage de pile est créé dans le dossier journal de SQL Server. Lorsque ce problème se produit, vous devrez peut-être redémarrer le second serveur.

Cause


Ce problème se produit car la procédure stockée sp_replcounters s’exécute sur un serveur sur lequel la réplication est désactivée ou n’est pas installée. Lorsque sp_replcounters tente d’accéder au cache de l’article, l’opération de restauration de la base de données a déjà appelé clear_db_repl_cache pour supprimer la base de données du cache de l’article avant que la base de données ne soit rajoutée dans le cache de l’article.

Résolution


Informations sur les mises à jour cumulatives

SQL Server 2008 R2

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 9. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008 R2, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2567713 Package de mise à jour cumulative 9 pour SQL Server 2008 R2
Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 R2. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
981356 Builds SQL Server 2008 R2 publiées après la sortie de SQL Server 2008 R2

SQL Server 2008 R2 Service Pack 1

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 2 pour SQL Server 2008 R2 Service Pack 1. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2567714 Package de mise à jour cumulative 2 pour SQL Server 2008 R2 Service Pack 1
Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans la version précédente du correctif SQL Server 2008 R2. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
2567616 Builds SQL Server 2008 R2 publiées après la sortie de SQL Server 2008 R2 Service Pack 1

SQL Server 2008

Le correctif de ce problème a été émis pour la première fois dans la mise à jour cumulative 4. Pour plus d’informations sur la façon d’obtenir ce package de mise à jour cumulative pour SQL Server 2008, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2527180 Package de mise à jour cumulative 4 pour SQL Server 2008 Service Pack 2
Remarque Dans la mesure où les builds sont cumulatives, chaque nouvelle version du correctif contient tous les correctifs et les correctifs de sécurité inclus dans l’ancienne version du correctif SQL Server 2008. Nous vous recommandons d’appliquer la version de correctif la plus récente qui contient ce correctif. Pour plus d'informations, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
956909 Builds SQL Server 2008 publiées après la sortie de SQL Server 2008

Statut


Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « S’applique à ».

Informations supplémentaires


Pour plus d’informations sur les fichiers qui ont été modifiés et pour plus d’informations sur les conditions préalables à l’application du package de mise à jour cumulative contenant le correctif décrit dans cet article de la base de connaissances Microsoft, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
2527180 Package de mise à jour cumulative 4 pour SQL Server 2008 Service Pack 2

Références


Pour plus d’informations sur les statistiques de réplication, visitez le site Web Microsoft Developer Network (MSDN) suivant :Pour plus d’informations sur la liste des builds disponibles après la publication de SQL Server 2008, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
956909 Builds SQL Server 2008 publiées après la sortie de SQL Server 2008
Pour plus d’informations sur le modèle de service incrémentiel pour SQL Server, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
935897 Un modèle de maintenance incrémentiel est disponible auprès de l’équipe SQL Server pour obtenir des correctifs pour les problèmes signalés
Pour plus d’informations sur le schéma d’appellation des mises à jour de SQL Server, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
822499 Nouveau schéma d’affectation de noms pour les packages de mise à jour logicielle Microsoft SQL Server
Pour plus d’informations sur la terminologie des mises à jour logicielles, cliquez sur le numéro ci-dessous pour consulter l’article de la base de connaissances Microsoft :
824684 Terminologie standard utilisée pour décrire les mises à jour logicielles Microsoft