CORRECTIF : Vous constaterez une augmentation importante des temps de compilation lorsque vous activez les indicateurs de trace 2389 et 2390 dans SQL Server 2005 Service Pack 1

Bogue : 984 (correctif SQL)
N° de bogue : 441938 (SQLBUDT)
BOGUE : 984 (correctif SQL)bogue #: numéro de bogue 441938 (SQL BU le suivi des erreurs): 59199 (Maintenance du contenu)
Microsoft distribue les correctifs de Microsoft SQL Server 2005 en tant que fichier téléchargeable. Les correctifs étant cumulatifs, chaque nouvelle version contient tous les correctifs et correctifs de sécurité inclus dans la précédente de SQL Server 2005 version du correctif.
Cet article décrit les éléments suivants concernant cette version du correctif :
  • Les problèmes qui sont résolus par ce package de correctifs
  • Les conditions préalables à l’installation du package de correctifs
  • Savoir si vous devez redémarrer l’ordinateur après avoir installé le package de correctifs
  • Savoir si le correctif logiciel est remplacé par un autre package de correctif logiciel
  • Savoir si vous devez modifier le Registre
  • Les fichiers qui sont contenus dans le package de correctifs

Symptômes

Envisagez le scénario suivant. Vous exécutez SQL Server 2005 Service Pack 1 (SP1). Vous activez les indicateurs de trace 2389 et 2390 pour activer les statistiques rapide générés automatiquement pour les clés croissantes. Dans ce scénario, vous pouvez rencontrer le problème suivant :
  • Vous remarquerez une augmentation importante du moment de la compilation.
  • SQL Server ne génère pas un plan de requête efficace dans la mesure où la valeur maximale correcte de la colonne ne peut pas être déterminée.

Cause

Ce problème se produit car SQL Server effectue une analyse de la colonne appropriée. Cette analyse prend du temps de compilation supplémentaires.

Résolution

Un correctif pris en charge est disponible auprès de Microsoft. Toutefois, ce correctif vise à corriger uniquement le problème décrit dans cet article. Appliquez ce correctif uniquement aux systèmes rencontrant ce problème spécifique. Ce correctif va peut-être subir des tests supplémentaires. Par conséquent, si vous n'êtes pas sérieusement concerné par ce problème, nous vous recommandons d'attendre la prochaine mise à jour logicielle qui contiendra ce correctif.

Si le correctif est disponible pour le téléchargement, il existe une section « Téléchargement de correctif logiciel disponible » au début de cet article de la Base de connaissances. Si cette section n'apparaît pas, contactez le Service clientèle et Support de Microsoft pour obtenir le correctif.

Remarque Si des problèmes supplémentaires se produisent ou si des procédures de dépannage sont nécessaires, vous devrez peut-être formuler une demande de service distincte. Les coûts habituels du support technique s'appliqueront aux questions et problèmes qui ne relèvent pas de ce correctif logiciel. Pour une liste complète des numéros de téléphone service clientèle de Microsoft ou pour créer une demande de service distincte, visitez le site Web de Microsoft à l’adresse suivante :Remarque Le formulaire « Téléchargement de correctif logiciel disponible » affiche les langues pour lesquelles le correctif est disponible. Si vous ne voyez pas votre langue, c'est parce qu'il n'y a pas de correctif disponible pour cette langue.

Conditions préalables

Vous devez disposer de SQL Server 2005 Service Pack 1 (SP1) pour appliquer ce correctif.

Pour plus d’informations sur la façon d’obtenir SQL Server 2005 SP1, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

913089 comment obtenir le dernier service pack pour SQL Server 2005

Informations sur le redémarrage

Vous n’êtes pas obligé de redémarrer l’ordinateur après avoir appliqué ce correctif.

Informations concernant le Registre

Vous n’êtes pas obligé de modifier le Registre.

Informations sur les fichiers de correctif logiciel

Ce correctif contient uniquement les fichiers qui sont nécessaires pour corriger les problèmes décrits dans cet article. Ce correctif peut ne pas contienne tous les fichiers nécessaires à la mise à jour complète d’un produit vers la dernière version.

La version anglaise de ce correctif dispose des attributs de fichier (ou version ultérieure) répertoriés dans le tableau suivant. Les dates et heures de ces fichiers sont répertoriées en temps universel coordonné (UTC). Lorsque vous affichez les informations de fichier, elles sont converties en heure locale. Pour trouver la différence entre l’UTC et l’heure locale, utilisez l’onglet fuseau horaire dans l’élément de Date et d’heure dans le panneau de configuration.
Version SQL Server 2005 32 bits
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Msgprox.dll2005.90.2174.0197,92017-Jul-200620:03x86
Msmdlocal.dll9.0.2174.015,701,79217-Jul-200620:04x86
Msmdredir.dll9.0.2174.03,967,77617-Jul-200620:03x86
Replprov.dll2005.90.2174.0547,61617-Jul-200620:05x86
Replrec.dll2005.90.2174.0782,11217-Jul-200620:02x86
Sqlaccess.dll2005.90.2174.0347,93617-Jul-200620:03x86
Sqlservr.exe2005.90.2174.028,951,89617-Jul-200620:04x86
Xpstar90.dll2005.90.2174.0292,12817-Jul-200620:03x86
Version de base de x64 de SQL Server 2005
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Msgprox.dll2005.90.2174.0259,36018-Jul-200608:05x64
Msmdlocal.dll9.0.2174.015,701,79217-Jul-200620:04x86
Msmdredir.dll9.0.2174.03,967,77617-Jul-200620:03x86
Replprov.dll2005.90.2174.0745,24818-Jul-200608:06x64
Replrec.dll2005.90.2174.01,008,41618-Jul-200608:04x64
Sqlaccess.dll2005.90.2174.0355,10418-Jul-200608:05x86
Sqlservr.exe2005.90.2174.039,351,07218-Jul-200608:05x64
Xpstar90.dll2005.90.2174.0539,93618-Jul-200608:05x64
Version d’architecture Itanium de SQL Server 2005
Nom de fichierVersion de fichierTaille du fichierDateHeurePlateforme
Msgprox.dll2005.90.2174.0542,49617-Jul-200622:38IA-64
Msmdlocal.dll9.0.2174.048,828,70417-Jul-200622:39IA-64
Msmdredir.dll9.0.2174.06,154,01617-Jul-200622:39IA-64
Replprov.dll2005.90.2174.01,617,18417-Jul-200622:39IA-64
Replrec.dll2005.90.2174.02,141,47217-Jul-200622:39IA-64
Sqlaccess.dll2005.90.2174.0349,47217-Jul-200622:38x86
Sqlservr.exe2005.90.2174.072,235,29617-Jul-200622:40IA-64
Xpstar90.dll2005.90.2174.0950,04817-Jul-200622:36IA-64

État

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

Plus d'informations

Colonnes de clé croissantes peuvent entraîner des statistiques imprécises dans les tables qui ont des opérations d’insertion fréquentes. Ces colonnes de clé peuvent être les colonnes compteur ou les colonnes datetime représentant des horodatages réels. Un problème courant pour certaines applications de SQL Server sont les cas dans lesquels les données ascends en général. Par exemple, vous avez une table contenant une colonne datetime , et la colonne représente une date. SQL Server crée des statistiques qui supposent que données seront essentiellement similaires à l’avenir. Toutefois, lorsque les données ascends en général, la plupart des insertions de nouvelles sont en dehors de la plage trouvée précédemment. Ce comportement peut provoquer des plans médiocres à créer. Les filtres qui sélectionnent des données récentes peuvent exclure entièrement la relation même si un nombre significatif de lignes est inclus.

Les indicateurs de trace 2389 et 2390 sont nouvelles dans SQL Server 2005 SP1. Ces indicateurs de trace permettent de résoudre le problème. SQL Server 2005 SP1 effectue le suivi de la nature des colonnes par des mises à jour les statistiques. Lorsque SQL Server détermine que les statistiques augmentent trois fois, la colonne est marquée dans l’ordre croissant. Les statistiques seront actualisés automatiquement au moment de compilation de requête si les conditions suivantes sont remplies :
  • La valeur de l’indicateur de trace 2389.
  • Une colonne est marquée dans l’ordre croissant.
  • Il existe un index de couverture avec la colonne croissant comme la touche début.
Une instruction est compilée pour trouver la valeur la plus élevée, et une nouvelle étape est ajoutée à la fin de l’histogramme existant pour modéliser les données récemment ajoutées.

L’indicateur de trace 2390 permet le même comportement que l’indicateur de trace 2389, même si la nature croissant de la colonne n’est pas connue. Tant que la colonne est une colonne principale dans un index, l’optimiseur met à jour les statistiques ayant la valeur la plus élevée à la compilation de requête. N’utilisez jamais l’indicateur de trace 2390 seul car cette logique serait désactivée dès que la nature croissant de la colonne est connue.

Pour activer automatiquement généré des statistiques rapides pour les clés connues croissants, exécutez l’instruction suivante :
DBCC TRACEON ( 2389, -1 )
Pour activer les statistiques rapide générés automatiquement pour toutes les colonnes qui contiennent des clés croissants connus ou inconnu croissant, exécutez l’instruction suivante :
DBCC TRACEON ( 2389, 2390, -1 )
Vous pouvez également utiliser le commutateur de ligne de commande -T Sqlservr.exe pour activer ces indicateurs de deux trace au niveau du serveur. Pour plus d’informations, visitez le site Web de Microsoft Developer Network (MSDN) à l’adresse suivante :Pour plus d’informations sur le schéma d’appellation des mises à jour de Microsoft SQL Server, cliquez sur le numéro ci-dessous pour afficher l’article correspondant dans la Base de connaissances Microsoft :

Packages de mises à jour 822499 nouveau schéma d’appellation pour les logiciels de Microsoft SQL Server

Pour plus d'informations sur la terminologie de mise à jour logicielle, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

Description 824684 terminologie standard utilisée pour décrire les mises à jour logicielles de Microsoft

Propriétés

ID d'article : 922063 - Dernière mise à jour : 17 janv. 2017 - Révision : 1

Commentaires