DBCC TRACEON - Indicateurs de trace (Transact-SQL)

S’applique à :SQL ServerAzure SQL Managed Instance

Les indicateurs de trace sont utilisés pour définir des caractéristiques de serveur spécifiques ou pour modifier un comportement particulier. Par exemple, l’indicateur de trace 3226 est un indicateur de trace de démarrage couramment utilisé ; il supprime les messages de sauvegarde réussie dans le journal des erreurs. Les indicateurs de trace sont fréquemment utilisés pour diagnostiquer les problèmes de performances, ou pour déboguer des procédures stockées ou des systèmes informatiques complexes, mais ils peuvent également être recommandés par le Support Microsoft pour modifier un comportement qui a un impact négatif sur une charge de travail spécifique.

Tous les indicateurs de trace documentés et ceux qui sont recommandés par le Support Microsoft sont entièrement pris en charge dans un environnement de production quand ils sont utilisés comme indiqué. Les indicateurs de trace de cette liste peuvent faire l’objet de considérations supplémentaires relatives à leur utilisation particulière : il est donc conseillé d’examiner attentivement toutes les recommandations données ici et/ou par votre ingénieur de prise en charge. De plus, à l’instar de toute modification de configuration dans SQL Server, il est toujours préférable de tester minutieusement l’indicateur dans un environnement hors production avant de le déployer.

Notes

Dans SQL Server, il existe trois étendues au niveau desquelles les indicateurs de trace peuvent fonctionner : requête, session et global. Les indicateurs de trace de requête sont actifs dans le contexte d’une requête spécifique. Les indicateurs de trace de session sont actifs pour une connexion et visibles uniquement par celle-ci. Les indicateurs de trace globaux sont définis au niveau du serveur et sont visibles pour chaque connexion sur celui-ci. Certains indicateurs ne peuvent être activés qu'en tant qu'indicateurs globaux, tandis que d'autres peuvent être activés avec une étendue globale ou de session.

Les règles suivantes s’appliquent :

  • Un indicateur de trace global doit être activé globalement. Sinon, il est sans effet. Nous vous recommandons d’activer les indicateurs de trace globaux au démarrage, en utilisant l’option de ligne de commande -T sous Windows, ou mssql-confsous Linux. Cela garantit que l’indicateur de trace reste actif après le redémarrage d’un serveur. Redémarrez SQL Server pour que l’indicateur de trace prenne effet.

  • Si un indicateur de trace possède une étendue globale, de session ou de requête, il peut être activé avec l’étendue appropriée. Un indicateur de trace activé au niveau de la session n’affecte jamais une autre session. L’effet de l’indicateur de trace est perdu quand le SPID qui a ouvert la session se déconnecte.

Les indicateurs de trace sont activés (définis sur ON) ou désactivés (définis sur OFF) de l’une des façons suivantes :

  • Utilisation des commandes DBCC TRACEON et DBCC TRACEOFF.

    Par exemple, pour activer l’indicateur de trace 2528 globalement, utilisez DBCC TRACEON avec l’argument -1 : DBCC TRACEON (2528, -1). L’effet de l’activation d’un indicateur de trace global avec DBCC TRACEON est perdu lors du redémarrage du serveur. Pour désactiver un indicateur de trace global, utilisez DBCC TRACEOFF avec l’argument -1.

  • Utilisation de l’option de démarrage -T pour spécifier que l’indicateur de trace doit être défini au démarrage.

    L’option de démarrage -T active un indicateur de trace au niveau global. Vous ne pouvez pas activer un indicateur de trace de niveau session à l’aide d’une option de démarrage. Cela garantit que l’indicateur de trace reste actif après le redémarrage d’un serveur. Pour plus d’informations sur les options de démarrage, consultez Options de démarrage du service moteur de base de données.

  • Au niveau de la requête, utilisation de l’indicateur de requête QUERYTRACEON. L’option QUERYTRACEON est prise en charge seulement pour les indicateurs de trace de l’optimiseur de requête documentés dans le tableau figurant plus loin dans cet article.

Utilisez la commande DBCC TRACESTATUS afin de déterminer quels indicateurs de trace sont actuellement actifs.

Exemples

L’exemple suivant utilise DBCC TRACEON pour activer l’indicateur de trace 3205 sur toutes les sessions au niveau du serveur.

DBCC TRACEON (3205, -1);

Vous pouvez activer tous les correctifs affectant le plan contrôlés par les indicateurs de trace 4199 et 4137 pour une requête particulière.

SELECT x FROM correlated WHERE f1 = 0 AND f2 = 1 OPTION (QUERYTRACEON 4199, QUERYTRACEON 4137);

Indicateurs de trace

Le tableau ci-dessous répertorie et décrit les indicateurs de trace disponibles dans SQL Server.

Azure SQL Managed Instance prend en charge les indicateurs de trace globaux suivants : 460, 2301, 2389, 2390, 2453, 2467, 7471, 8207, 9389, 10316 et 11024. Les indicateurs de trace de session ne sont pas encore pris en charge dans SQL Managed Instance.

Certains indicateurs de trace ont été introduits dans des versions de SQL Server spécifiques. Pour plus d’informations sur la version applicable, consultez l’article du support technique Microsoft associé à un indicateur de trace spécifique.

Il est possible que le comportement des indicateurs de trace ne soit pas pris en charge dans les prochaines versions de SQL Server.

Les indicateurs de trace peuvent être référencés directement dans la table par le biais d’un signet que vous pouvez ajouter à la fin de l’URL au format suivant : #tfNNNN. Par exemple, pour accéder directement à l’indicateur de trace 1118 dans la table, utilisez dbcc-traceon-trace-flags-transact-sql#tf1118.

Indicateur de trace Description
101 Augmente le niveau de détail de la journalisation de l’agent de réplication de fusion.

Important : L’indicateur de trace 101 peut uniquement être activé pour l’Agent de fusion de réplication en utilisant l’option -T lors de l’exécution de replmerg.exe à partir de l’invite de commandes.

Avertissement : L’indicateur de trace 101 n’est pas destiné à rester activé en permanence dans un environnement de production. Il doit être activé seulement de façon temporaire à des fins de résolution des problèmes. Pour plus d’informations, consultez une version archivée de KB2892633.

Étendue : Agent de fusion de réplication uniquement.
102 Augmente le niveau de détail de la journalisation de l’agent de réplication de fusion et la dirige vers la table <Serveur_de_distribution>..msmerge_history.

Important : L’indicateur de trace 102 peut uniquement être activé pour l’Agent de fusion de réplication en utilisant l’option -T lors de l’exécution de replmerg.exe à partir de l’invite de commandes.

Avertissement : L’indicateur de trace 102 n’est pas destiné à rester activé en permanence dans un environnement de production. Il doit être activé seulement de façon temporaire à des fins de résolution des problèmes. Pour plus d’informations, consultez une version archivée de KB2892633.

Étendue : Agent de fusion de réplication uniquement.
139 Impose une sémantique de conversion correcte dans l’étendue de commandes DBCC CHECK telles que DBCC CHECKDB, DBCC CHECKTABLE et DBCC CHECKCONSTRAINTS lors de l’analyse de la logique de précision et de conversion améliorée introduite avec le niveau de compatibilité 130 pour des types de données spécifiques sur une base de données qui a un niveau de compatibilité inférieur. Pour plus d’informations, consultez KB4010261.

S’applique à : SQL Server 2016 (13.x) RTM CU 3, SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures.

Avertissement : L’indicateur de trace 139 n’est pas destiné à rester activé en permanence dans un environnement de production et doit être utilisé dans le seul but d’effectuer les vérifications de validation de base de données décrites dans l’article KB4010261. Il doit être désactivé immédiatement après l’exécution des vérifications de validation.

Étendue : globale uniquement.
174 Augmente le nombre de compartiments du cache du plan du Moteur de base de données SQL Server de 40 009 à 160 001 sur les systèmes 64 bits. Pour plus d’informations, consultez KB3026083.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale uniquement.
176 Résout les erreurs lors de la reconstruction de partitions en ligne pour des tables qui contiennent une colonne de partitionnement calculée. Pour plus d’informations, consultez KB3213683 et KB4541096.

Étendue : globale ou de session.
205 Crée un rapport dans le journal des erreurs quand une procédure stockée dépendante des statistiques est recompilée suite à une mise à jour automatique des statistiques. Pour plus d’informations, consultez une version archivée de KB195565.

Remarque : Cet indicateur de trace nécessite l’activation de l’indicateur de trace 3605.

Étendue : globale uniquement.
260 Imprime les informations de version relatives aux bibliothèques de liaison dynamique (DLL) des procédures stockées étendues. Pour plus d’informations sur GetXpVersion() , consultez Création de procédures stockées étendues.

Étendue : globale ou de session.
272 Désactive la préallocation d’identité pour éviter les écarts dans les valeurs d’une colonne d’identité si le serveur redémarre de façon inattendue ou bascule vers un serveur secondaire. La mise en cache d’identité est utilisée pour améliorer les performances INSERT sur les tables comprenant des colonnes d’identité.

Remarque : À compter de SQL Server 2017 (14.x), pour effectuer cette opération au niveau de la base de données, utilisez l’option IDENTITY_CACHE dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Étendue : globale uniquement.
460 Remplace l’ID de message de troncation de données 8152 par l’ID de message 2628. Pour plus d’informations, consultez KB4468101.

À compter de SQL Server 2019 (15.x), pour effectuer cette opération au niveau de la base de données, consultez l’option VERBOSE_TRUNCATION_WARNINGS dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

S’applique à : SQL Server 2016 (13.x) Service Pack 2 CU 6, SQL Server 2017 (14.x) CU 12 et versions ultérieures.

Remarque : À partir du niveau de compatibilité de la base de données 150, l’ID de message 2628 est utilisé par défaut, et cet indicateur de trace n’a aucun effet. Pour un niveau de compatibilité de base de données inférieur ou égal à 140, le message ID 2628 reste un message d’erreur d’activation qui nécessite l’activation de l’indicateur de trace 460, et cette configuration au niveau de la de base de données n’a pas d’effet.

Étendue : globale ou de session.
610 Contrôle les insertions faisant l’objet d’une journalisation minimale dans des tables indexées. Cet indicateur de trace n’est pas nécessaire à compter de SQL Server 2016 (13.x), car la journalisation minimale est activée par défaut pour les tables indexées. Dans SQL Server 2016 (13.x), quand l’opération de chargement en masse entraîne l’allocation d’une nouvelle page, toutes les lignes remplissant de manière séquentielle cette nouvelle page font l’objet d’une journalisation minimale si tous les autres prérequis de la journalisation minimale sont remplis. Les lignes insérées dans les pages existantes (aucune allocation de nouvelle page) pour conserver l’ordre d’index font toujours l’objet d’une journalisation intégrale, comme les lignes qui sont déplacées à la suite de fractionnements de pages lors du chargement.

Il est également important d’activer ALLOW_PAGE_LOCKS pour les index (valeur ON définie par défaut) afin que l’opération de journalisation minimale fonctionne quand des verrous de page sont acquis au cours de l’allocation et, de ce fait, seules les allocations de pages ou d’extensions sont journalisées. Pour plus d’informations, consultez Guide des performances de chargement des données.

Étendue : globale ou de session.
634 Désactive la tâche de compression de columnstore d'arrière-plan. SQL Server exécute régulièrement la tâche d’arrière-plan du moteur de tuple qui compresse les rowgroups d’index columnstore avec des données non compressées, un rowgroup à la fois.

La compression columnstore améliore les performances des requêtes mais consomme également des ressources système. Vous pouvez contrôler le temps que prend la compression columnstore manuellement, en désactivant la tâche de compression d’arrière-plan avec l’indicateur de trace 634, puis en appelant explicitement ALTER INDEX...REORGANIZE ou ALTER INDEX...REBUILD au moment souhaité.

Étendue : globale uniquement.
652 Désactive les analyses de prérécupération de page. Si vous activez l’indicateur de trace 652, SQL Server n’envoie plus les pages de base de données dans le pool de mémoires tampons avant que ces pages de base de données ne soient consommées par les analyses. Par conséquent, les requêtes qui tirent parti de la fonctionnalité de prérécupération de page ont des performances inférieures.

Étendue : globale ou de session.
661 Désactive le processus de suppression de l’enregistrement fantôme. L’indicateur de trace 661 désactive le processus de suppression de l’enregistrement fantôme. Un enregistrement fantôme est le résultat d’une opération de suppression. Lorsque vous supprimez un enregistrement, l’enregistrement supprimé est conservé en tant qu’enregistrement fantôme. Plus tard, l’enregistrement supprimé est purgé par le processus de suppression des enregistrements fantômes. Lorsque vous désactivez ce processus, l’enregistrement supprimé n’est pas purgé. Par conséquent, l’espace consommé par l’enregistrement supprimé n’est pas libéré. Ce comportement affecte la consommation d’espace et les performances des opérations d’analyse. Pour plus d’informations, consultez le guide de processus de nettoyage des éléments fantômes.

Étendue : globale uniquement.
692 Désactive les insertions rapides lors du chargement en masse des données dans un segment de mémoire ou un index cluster. À compter de SQL Server 2016 (13.x), les insertions rapides sont activées par défaut, et utilisent une journalisation minimale quand la base de données est en mode de récupération simple ou utilisant les journaux de transactions pour optimiser les performances d’insertion des enregistrements insérés dans de nouvelles pages. Avec les insertions rapides, chaque lot de chargement en masse acquiert de nouvelles extensions en ignorant la recherche d’allocation des extensions existantes avec l’espace libre disponible pour optimiser les performances d’insertion.

Avec les insertions rapides, les chargements en masse de lots de petite taille peuvent aboutir à une plus grande quantité d’espace inutilisé consommée par les objets ; par conséquent, il est recommandé d’utiliser une taille importante pour chaque lot afin de remplir complètement l’extension. S’il n’est pas possible d’augmenter la taille de lot, cet indicateur de trace peut aider à réduire l’espace inutilisé réservé au détriment des performances.

S’applique à : SQL Server 2016 (13.x) et versions ultérieures.

Étendue : globale ou de session.
715 Active le verrou de table pour les opérations de chargement en masse dans un segment de mémoire sans index non-cluster. Quand cet indicateur de trace est activé, les opérations de chargement en masse acquièrent des verrous de mise à jour en bloc lors de la copie en bloc des données dans une table. Les verrous BU permettent à plusieurs threads de charger simultanément en masse des données dans la même table tout en empêchant les processus qui n’effectuent pas de chargement de données en masse d’accéder à cette table.

Le comportement est similaire quand l’utilisateur spécifie explicitement l’indicateur TABLOCK lors du chargement en masse ou quand le verrou de table sp_tableoption sur le chargement en masse est activé pour une table donnée. Toutefois, quand cet indicateur de trace est activé, ce comportement s’applique par défaut sans aucune modification de la requête ni de la base de données.

Étendue : globale ou de session.
809 Active le comportement appelé écriture directe du pool de mémoires tampons hybride. Ce mode exige que la mémoire tampon de journal persistante soit activée dans la même base de données que le pool de mémoires tampons hybride. L’écriture directe permet au pool de mémoires tampons hybride de servir de cache pour les pages de modifications et les pages nettoyées, ce qui réduit le nombre de demandes envoyées aux pools de mémoires tampons DRAM pour les charges de travail de type OLAP et OLTP. Cet indicateur de trace a été introduit dans SQL Server 2022 (16.x). Le comportement est activé par défaut dans SQL Server 2022 (16.x) CU 1. Si vous utilisez SQL Server 2022 (16.x) CU 1 ou version ultérieure, l’indicateur de trace est ignoré.
818 Active des diagnostics d’E/S supplémentaires pour vérifier les conditions de perte d’écriture ou de lecture obsolète pendant les opérations d’E/S de fichier. L’indicateur de trace 818 active un tampon en anneau en mémoire, qui est utilisé pour le suivi des 2 048 dernières opérations d’écriture réussies effectuées par SQL Server, à l’exclusion des E/S de triage et de fichier de travail. Lorsque des erreurs telles que l’erreur 605, 823 ou 3448 se produisent, la valeur du numéro séquentiel dans le journal (LSN) du tampon entrant est comparée à celles de la liste des écritures récentes. Si le numéro LSN récupéré est plus ancien que celui spécifié pendant l’opération d’écriture, un nouveau message d’erreur est consigné dans le journal des erreurs SQL Server. Pour plus d’informations, consultez Les diagnostics SQL Server détectent les problèmes d’E/S non signalés.

Remarque : à compter de SQL Server 2017 (14.x), cet indicateur de trace n’a pas d’effet.

Étendue : globale uniquement.
830 Désactive la détection et la création de rapports de demandes d’E/S qui prennent beaucoup de temps. Par défaut, SQL Server utilise un mécanisme pour détecter les demandes d’E/S de lecture et d’écriture qui prennent beaucoup de temps (généralement plus de 15 secondes). Cet indicateur de trace désactive cette détection. Pour plus d’informations, consultez MSSQLSERVER_833

Remarque : Il n’est pas recommandé d’activer cet indicateur de trace, car votre capacité à détecter les problèmes d’E/S sur le système peut en être affectée.

Étendue : globale uniquement.
834 Utilise des allocations de pages de grande taille pour le pool de mémoires tampons, les index columnstore et les tables en mémoire. La taille des grandes pages varie en fonction de la plateforme matérielle, mais la taille de la page peut être comprise entre 2 et 16 Mo. Les pages de grande taille sont allouées au démarrage et sont conservées pendant toute la durée de vie du processus. L’indicateur de trace 834 améliore les performances en rendant la mémoire tampon TLB (Translation Look-aside Buffer) plus efficace dans le processeur. En d’autres termes, l’indicateur de trace 834 optimise la gestion de la traduction d’adresses mémoire physique en adresses mémoire virtuelle qui est effectuée par le matériel de gestion de la mémoire. Pour plus d’informations sur SQL Server et sur les pages de grande taille, consultez le blog .

Remarque : L’indicateur de trace 834 s’applique uniquement aux versions 64 bits de SQL Server. Vous devez avoir le droit d’utilisateur Verrouiller les pages en mémoire pour activer l’indicateur de trace 834. Vous pouvez activer l’indicateur de trace 834 uniquement au démarrage. L’indicateur de trace 834 peut empêcher le serveur de démarrer si la mémoire est fragmentée et si les pages de grande taille ne peuvent pas être allouées. Par conséquent, l’indicateur de trace 834 convient mieux aux serveurs dédiés à SQL Server.

Remarque : Quand il est activé, le modèle de mémoire de grandes pages préalloue toute la mémoire SQLOS au démarrage de l’instance et ne la renvoie pas au système d’exploitation.

Remarque : Si vous utilisez la fonctionnalité d’index columnstore de SQL Server 2012 (11.x) et versions ultérieures, nous vous déconseillons d’activer l’indicateur de trace 834. Pour plus d’informations, consultez KB3210239. Si vous utilisez SQL Server 2019 (15.x) et columnstore, consultez l’indicateur de trace 876 à la place.

Étendue : globale uniquement.
836 Utilisez l'option Mémoire maximum du serveur pour le pool de mémoires tampons. L’indicateur de trace 836 force SQL Server à dimensionner le pool de mémoires tampons au démarrage en fonction de la valeur de l’option Mémoire maximum du serveur plutôt qu’en fonction de la mémoire physique totale. Vous pouvez utiliser l’indicateur de trace 836 pour réduire le nombre de descripteurs de mémoire tampon alloués au démarrage en mode AWE (Address Windowing Extensions) 32 bits.

Remarque : L’indicateur de trace 836 s’applique uniquement aux versions 32 bits de SQL Server dont l’allocation AWE est activée. Vous pouvez activer l’indicateur de trace 836 uniquement au démarrage.

Étendue : globale uniquement.
845 Active les pages verrouillées sur les références standard de SQL Server quand le privilège Verrouiller les pages en mémoire est activé pour le compte de service de SQL Server. Pour plus d’informations, consultez KB970070 et Options de configuration du serveur Mémoire du serveur.

Remarque : à compter de SQL Server 2012 (11.x), ce comportement est activé par défaut pour les références SKU Standard, et l’indicateur de trace 845 ne doit pas être utilisé.

Étendue : globale uniquement.
876 Utilise des allocations de grandes pages pour columnstore.

Remarque : Contrairement à l’indicateur de trace 834, l’utilisation de l’indicateur de trace 876 ne préalloue pas la mémoire SQLOS au démarrage de l’instance, et la mémoire inutilisée peut être libérée.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale uniquement.
888 Résout la dégradation des performances sur les appareils PMEM avec le pool de mémoires tampons hybride activé dans SQL Server quand les appareils PMEM s’exécutent à faible niveau de mémoire. Pour plus d’informations, consultez KB4548103.

S’applique à : SQL Server 2019 (15.x) CU 4 et versions ultérieures.

Étendue : globale uniquement.
890 Supprimer les messages de fin d’analyse du pool de mémoires tampons longue (erreur 898) dans le journal des erreurs. Pour plus d’informations sur l’analyse du pool de mémoires tampons et le message consigné dans le journal des erreurs, consultez Les opérations qui déclenchent une analyse du pool de mémoires tampons peuvent s’exécuter lentement sur des ordinateurs à mémoire volumineuse.

S’applique à : SQL Server 2017 (14.x) et versions ultérieures.

Étendue : globale uniquement.
898 Désactive le comportement d’écriture directe du pool de mémoires tampons hybride à des fins de résolution des problèmes ou de débogage. Pour plus d’informations, consultez KB 5022375.

S’applique à : SQL Server 2022 (16.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
902 Ignore l’exécution du script de mise à niveau de base de données lors de l’installation d’une mise à jour cumulative ou d’un Service Pack. Si vous rencontrez une erreur en mode de mise à niveau de script, il est recommandé de contacter le support technique/service clientèle Microsoft SQL pour obtenir des instructions supplémentaires. Pour plus d’informations, consultez KB2163980.

Avertissement : Cet indicateur de trace est destiné à la résolution des problèmes de mises à jour ayant échoué en mode de mise à niveau de script et son exécution en permanence n’est pas prise en charge dans un environnement de production. Les scripts de mise à niveau de base de données doivent s’exécuter correctement pour une installation complète des mises à jour cumulatives et des Service Packs. Dans le cas contraire, des problèmes inattendus peuvent affecter votre instance de SQL Server.

Étendue : globale uniquement.
1117 Quand un fichier du groupe de fichiers atteint le seuil de croissance automatique, la taille de tous les fichiers augmente. Cet indicateur de trace affecte toutes les bases de données. Il est uniquement recommandé si chaque base de données peut augmenter en toute sécurité tous les fichiers d’un groupe de fichiers dans les mêmes proportions.

Remarque : à compter de SQL Server 2016 (13.x), ce comportement est contrôlé par les options AUTOGROW_SINGLE_FILE et AUTOGROW_ALL_FILES de ALTER DATABASE, et l’indicateur de trace 1117 n’a pas d’effet. Pour plus d’informations, consultez Options de fichiers et de groupes de fichiers ALTER DATABASE (Transact-SQL).

Étendue : globale uniquement.
1118 Force les allocations de pages sur des étendues uniformes, et non sur des étendues mixtes, réduisant ainsi la contention dans la page SGAM. Par défaut, quand un objet est créé, les huit premières pages sont allouées depuis des extensions différentes (extensions mixtes). Par la suite, quand d'autres pages seront nécessaires, elles seront allouées à partir de cette même étendue (étendue uniforme). La page SGAM permet d'effectuer le suivi de ces étendues mixtes et peut rapidement devenir un goulot d'étranglement en cas de nombreuses allocations de pages mixtes. Au moment de la création d'objets, l'indicateur de trace alloue les huit pages à partir de la même étendue, ce qui réduit la nécessité d'analyser la page SGAM. Pour plus d’informations, consultez KB328551.

Remarque : À compter de SQL Server 2016 (13.x), ce comportement est contrôlé par l’option SET MIXED_PAGE_ALLOCATION d’ALTER DATABASE, et l’indicateur de trace 1118 n’a pas d’effet. Pour plus d’informations, consultez Options SET d’ALTER DATABASE (Transact-SQL).

Étendue : globale uniquement.
1204 Retourne les ressources et les types de verrous participant à l'interblocage et la commande active affectée. Pour plus d’informations sur les interblocages, consultez le Guide des interblocages.

Remarque : N’utilisez pas l’indicateur de trace 1204 sur des systèmes gourmands en charge de travail qui provoquent des blocages. Pour plus d’informations sur les autres moyens de détection des interblocages, consultez le Guide des interblocages.

Étendue : globale uniquement.
1211 Désactive l'escalade de verrous en fonction de la sollicitation de la mémoire ou du nombre de verrous. Le Moteur de base de données SQL Server ne promeut aucun verrou de ligne ou de page au rang de verrou de table.

L’utilisation de cet indicateur de trace peut générer un nombre excessif de verrous. Si la mémoire des verrous devient trop importante, toute tentative d’allocation de verrous supplémentaires pour une requête peut échouer. Ceci peut entraîner un ralentissement des performances du Moteur de base de données ou provoquer des erreurs de type 1204 (impossible d'allouer la ressource du verrou) pour cause de mémoire insuffisante.

Si les deux indicateurs de trace 1211 et 1224 sont définis, 1211 est prioritaire sur 1224. Toutefois, comme l’indicateur de trace 1211 empêche l’escalade dans chaque cas, même si la mémoire est très sollicitée, nous vous recommandons d’utiliser l’indicateur de trace 1224 à la place. Cela permet d'éviter les erreurs liées au manque de verrous, lorsque de nombreux verrous sont utilisés.

Pour plus d’informations sur la résolution des problèmes de blocage provoqués par l’escalade de verrous dans SQL Server, consultez KB323630.

Étendue : globale ou de session.
1222 Retourne les ressources et les types de verrous participant au blocage et la commande active affectée, au format XML n’ayant à être validé par aucun schéma XSD particulier. Pour plus d’informations sur les interblocages, consultez le Guide des interblocages.

Remarque : N’utilisez pas l’indicateur de trace 1222 sur des systèmes gourmands en charge de travail qui provoquent des blocages. Pour plus d’informations sur les autres moyens de détection des interblocages, consultez le Guide des interblocages.

Étendue : globale uniquement.
1224 Désactive l'escalade de verrous en fonction du nombre de verrous. Cependant, une sollicitation de la mémoire peut toujours activer l'escalade de verrous. Le Moteur de base de données promeut les verrous de ligne ou de page au rang de verrous de table (ou de partition) si l'une des conditions suivantes n'est pas respectée :

– 40 % de la mémoire utilisée par le Moteur de base de données. Ceci s’applique seulement quand le paramètre locks de sp_configure est défini sur 0.
– 40 % de la mémoire de verrouillage configurée en utilisant le paramètre locks de sp_configure. Pour plus d’informations, consultez Options de configuration de serveur (SQL Server).

Si les deux indicateurs de trace 1211 et 1224 sont définis, 1211 est prioritaire sur 1224. Toutefois, comme l’indicateur de trace 1211 empêche l’escalade dans chaque cas, même si la mémoire est très sollicitée, nous vous recommandons d’utiliser l’indicateur de trace 1224. Cela permet d'éviter les erreurs liées au manque de verrous, lorsque de nombreux verrous sont utilisés.

Remarque : L’escalade de verrous jusqu’à la granularité de niveau table ou HoBT peut également être contrôlée avec l’option LOCK_ESCALATION de l’instruction ALTER TABLE.

Pour plus d’informations sur la résolution des problèmes de blocage provoqués par l’escalade de verrous dans SQL Server, consultez KB323630.

Étendue : globale ou de session.
1229 Désactive le partitionnement de verrous, quel que soit le nombre de processeurs. Par défaut, SQL Server active le partitionnement de verrous quand un serveur a 16 processeurs ou plus pour améliorer les caractéristiques de scalabilité des systèmes plus importants. Pour plus d’informations sur le partitionnement de verrous, consultez le guide du verrouillage des transactions et du contrôle de version de ligne.

Avertissement : L’indicateur de trace 1229 peut provoquer une contention de verrouillages spinlock et des performances médiocres.

Étendue : globale uniquement.
1236 Active le partitionnement de verrou de base de données. Pour plus d’informations, consultez KB2926217.

Remarque : à compter de SQL Server 2012 (11.x) Service Pack 3 et SQL Server 2014 (12.x) Service Pack 1, ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 1236 n’a pas d’effet.

Étendue : globale uniquement.
1237 Permet à l’instruction ALTER PARTITION FUNCTION de respecter la priorité d’interblocage de session définie par l’utilisateur actuel au lieu d’être la victime d’interblocage probable par défaut. Pour plus d’informations, consultez KB4025261.

Remarque : à compter de SQL Server 2017 (14.x) et du niveau de compatibilité de la base de données 140, il s’agit du comportement par défaut, et l’indicateur de trace 1237 n’a pas d’effet.

Étendue : globale, de session ou de requête (QUERYTRACEON).
1260 Désactive les vidages du moniteur du planificateur.

Étendue : globale uniquement.
1448 Permet à l’agent de lecture du journal de réplication d’avancer même si les éléments secondaires asynchrones n’ont pas accusé réception d’une modification. Même si cet indicateur de trace est activé, le lecteur de journal attend toujours les secondaires synchrones dont l’état de synchronisation est SYNCHRONISÉ. Le lecteur de journal n’ira pas au-delà du numéro séquentiel dans le journal minimal reconnu des secondaires SYNCHRONISÉS. Cet indicateur de trace s'applique à l'instance de SQL Server, et pas simplement à un groupe de disponibilité, à une base de données de disponibilité ou à une instance de l'agent de lecture de journal. Prend effet immédiatement, sans redémarrage. Cet indicateur de trace peut être activé à l’avance ou quand un réplica secondaire asynchrone échoue.

Étendue : globale uniquement.
1462 Désactive la compression du flux de journal pour les groupes de disponibilité asynchrones. Cette fonctionnalité est activée par défaut sur les groupes de disponibilité asynchrones pour optimiser la bande passante réseau. Pour plus d’informations, consultez Régler la compression pour le groupe de disponibilité.

Étendue : globale uniquement.
1800 Permet l’optimisation de SQL Server quand des disques de tailles de secteur différentes sont utilisés pour les fichiers journaux de réplicas principal et secondaire dans les environnements de copie des journaux de transaction et SQL Server Always On. Cet indicateur de trace ne doit être activé que sur les instances de SQL Server avec le fichier journal des transactions résidant sur le disque avec une taille de secteur de 512 octets. Il n’est pas nécessaire de l’activer sur un disque avec une taille de secteur de 4 Ko. Pour plus d’informations, consultez l’article KB3009974 de la Base de connaissances.

S’applique à : SQL Server 2012 (11.x) Service Pack 1 CU 13, SQL Server 2012 (11.x) Service Pack 2 CU 3, SQL Server 2014 (12.x) RTM CU 5 et versions ultérieures.

Étendue : globale uniquement.
1802 Désactive la vérification de la liste de contrôle d’accès et l’emprunt d’identité lors des opérations d’attachement ou de détachement de base de données. Cela peut être utile lors de l’attachement d’une base de données et lorsque vous rencontrez des erreurs d’autorisation d’accès, comme l’erreur 5120.

Étendue : globale uniquement.
1819 Autorise la sauvegarde sur URL à utiliser un serveur proxy lors de l’accès aux objets blob de blocs Azure. En plus de cet indicateur de trace, vous devez définir la configuration du proxy WinHTTP sur le serveur à l’aide de l’une des méthodes suivantes :

-L’utilitaire proxycfg.exe sur Windows XP ou Windows Server 2003 et versions antérieures.
- L’utilitaire netsh.exe sur Windows Vista et Windows Server 2008 et versions ultérieures.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2301 Activez les optimisations d’aide à la décision avancées spécifiques aux requêtes d’aide à la décision. Cette option s’applique au traitement de l’aide à la décision des jeux de données volumineux.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2312 Définit le modèle d’estimation de la cardinalité de l’optimiseur de requête sur SQL Server 2014 (12.x) et versions ultérieures, quel que soit le niveau de compatibilité de la base de données.

Remarque : Si le niveau de compatibilité de la base de données est inférieur à 120, l’activation de l’indicateur de trace 2312 entraîne l’utilisation du modèle d’estimation de la cardinalité de SQL Server 2014 (12.x) (120). Pour plus d’informations, consultez KB2801413.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'FORCE_DEFAULT_CARDINALITY_ESTIMATION' au lieu d’utiliser cet indicateur de trace.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2335 Amène SQL Server à supposer qu’une quantité fixe de mémoire est disponible pendant l’optimisation des requêtes pour un scénario dans lequel l’option de configuration du serveur « max server memory » est définie avec une valeur trop élevée, ce qui conduit SQL Server à générer un plan inefficace pour une requête spécifique. Il ne limite pas la mémoire accordée par SQL Server pour exécuter la requête. La mémoire configurée pour SQL Server sera toujours utilisée par le cache de données, l’exécution des requêtes et d’autres consommateurs.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2338 Pousse SQL Server à utiliser un plan étroit lors de l’exécution d’une instruction UPDATE pour mettre à jour des index dans une table. Quand vous exécutez UPDATE sur une colonne d’index cluster, SQL Server met à jour non seulement l’index cluster lui-même, mais aussi tous les index non cluster, car ils contiennent la clé du cluster. Souvent, la mise à jour est effectuée en mettant à jour l’index cluster, puis tous les index non cluster en même temps. SQL Server met généralement à jour une ligne, puis passe à la ligne suivante jusqu’à ce que tout soit terminé. C’est ce qu’on appelle une mise à jour « plan étroit » ou mise à jour « par ligne ». Dans certains cas, le Moteur de base de données peut choisir d’effectuer une mise à jour au niveau du plan. Cet indicateur de trace force une mise à jour « plan étroit ».

Étendue : globale, de session ou de requête (QUERYTRACEON).
2340 Amène SQL Server à ne pas appliquer d’opération de tri (tri par lots) sur les jointures de boucles imbriquées optimisées lors de la génération d’un plan. Par défaut, SQL Server peut utiliser une jointure de boucles imbriquées optimisée à la place d’une analyse complète ou une jointure de boucles imbriquées avec un tri explicite, quand l’optimiseur de requête estime qu’un tri n’est probablement pas nécessaire, sans pour autant en exclure la possibilité si la cardinalité ou les estimations de coût seraient incorrectes. Pour plus d’informations, consultez KB2009160.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'DISABLE_OPTIMIZED_NESTED_LOOP' au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2371 Remplace le seuil de mise à jour des statistiques fixe par un seuil de mise à jour des statistiques linéaire. Pour plus d'informations, consultez cette Option AUTO_UPDATE_STATISTICS.

Remarque : à compter de SQL Server 2016 (13.x) et à partir du niveau de compatibilité de la base de données 130, ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 2371 n’a aucun effet.

Étendue : globale uniquement.
2389 Active automatiquement la génération de statistiques rapides pour les clés croissantes (modification de l’histogramme). Si l’indicateur de trace 2389 est défini et qu’une première colonne de statistiques est marquée comme croissante, l’histogramme utilisé pour estimer la cardinalité sera ajusté au moment de la compilation de la requête.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Remarque : Cet indicateur de trace ne s’applique pas à CE version 120 ou ultérieure. Utilisez l’indicateur de trace 4139 à la place.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2390 Active automatiquement la génération de statistiques rapides pour les clés croissantes ou inconnues (modification de l’histogramme). Si l’indicateur de trace 2390 est défini et qu’une première colonne de statistiques est marquée comme croissante ou inconnue, l’histogramme utilisé pour estimer la cardinalité sera ajusté au moment de la compilation de la requête. Pour plus d’informations, consultez KB2801413.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Remarque : Cet indicateur de trace ne s’applique pas à CE version 120 ou ultérieure. Utilisez l’indicateur de trace 4139 à la place.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2422 Permet au Moteur de base de données SQL Server d’annuler une demande quand la durée maximale définie par la configuration REQUEST_MAX_CPU_TIME_SEC de Resource Governor est dépassée. Pour plus d’informations, consultez KB4038419.

S’applique à : SQL Server 2016 (13.x) Service Pack 2, SQL Server 2017 (14.x) CU 3 et versions ultérieures.

Étendue : globale uniquement.
2430 Active un nettoyage de classe de verrous de remplacement. Pour plus d’informations, consultez KB2754301.

Étendue : globale uniquement.
2446 Provoque la génération par SQL Server d’un fragment XML Showplan avec sys.dm_exec_query_statistics_xml lors de l’utilisation de l’infrastructure de profilage des statistiques d’exécution de requêtes légères ou l’exécution de la vue de gestion dynamique ParameterRuntimeValue lors de la résolution des problèmes de requêtes d’exécution longue.

S’applique à : SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 19, et SQL Server 2022 (16.x) et versions ultérieures.

Avertissement : L’indicateur de trace 2446 n’est pas destiné à rester activé en permanence dans un environnement de production. Il doit être activé seulement de façon temporaire à des fins de résolution des problèmes. L’utilisation de cet indicateur de trace introduit une surcharge de mémoire et de processeur supplémentaire potentiellement significative, car nous créons un fragment XML de plan d’exécution de requêtes avec des informations de paramètre d’exécution, que la vue de gestion dynamique sys.dm_exec_query_statistics_xml soit ou non appelée.

Remarque : À compter de SQL Server 2022 (16.x), pour effectuer cette opération au niveau de la base de données, consultez l’option FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Étendue : globale uniquement.
2451 Active l’équivalent du dernier plan d’exécution réel dans sys.dm_exec_query_plan_stats.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Remarque : à compter de SQL Server 2019 (15.x), pour effectuer cette opération au niveau de la base de données, consultez l’option LAST_QUERY_PLAN_STATS dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Étendue : globale uniquement.
2453 Permet à une variable de table de déclencher une recompilation quand un nombre suffisant de lignes a changé. Pour plus d’informations, consultez KB2952444.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2467 Permet une stratégie d’allocation de thread de travail parallèle, selon le nœud auquel le moins de threads sont alloués. Pour plus d’informations, voir Traitement de requêtes parallèles. Reportez-vous à Configurer l'option de configuration du nombre maximum de threads de travail pour plus d’informations sur la configuration de l’option Nombre maximum de threads de travail du serveur.

Remarque : Le degré de requête de parallélisme doit tenir dans un seul nœud pour utiliser cette stratégie de remplacement, sinon la stratégie d’allocation de threads par défaut est utilisée à la place. Avec cet indicateur de trace, il est déconseillé d’exécuter des requêtes spécifiant un degré de parallélisme supérieur au nombre de planificateurs dans un seul nœud, car cela peut interférer avec des requêtes spécifiant un degré de parallélisme inférieur ou égal au nombre de planificateurs dans un seul nœud.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale uniquement.
2469 Active un autre échange pour INSERT INTO ... SELECT dans un index columnstore partitionné. Pour plus d’informations, consultez KB3204769.

Étendue : globale, de session ou de requête (QUERYTRACEON).
2528 Désactive la vérification parallèle des objets par DBCC CHECKDB, DBCC CHECKFILEGROUP et DBCC CHECKTABLE. Par défaut, le degré de parallélisme est déterminé automatiquement par le processeur de requête. Le degré maximum de parallélisme est configuré de la même manière que celui des requêtes parallèles. Pour plus d’informations, consultez Configurer l’option de configuration du serveur max degree of parallelism.

Remarque : Les vérifications DBCC en parallèle doivent normalement être activées (c’est le cas par défaut). Le processeur de requêtes réévalue et ajuste automatiquement le parallélisme pour chaque table ou lot de tables vérifiées par DBCC CHECKDB.

Le scénario d’utilisation classique est quand un administrateur système sait qu’une charge serveur va augmenter avant la fin de l’exécution de DBCC CHECKDB et choisit donc de réduire ou désactiver manuellement le parallélisme afin d’augmenter la concurrence avec une autre charge de travail utilisateur. Toutefois, la désactivation des vérifications en parallèle dans DBCC CHECKDB peut rallonger son exécution.

Remarque : Si DBCC CHECKDB est exécuté avec l’option TABLOCK et que le parallélisme est désactivé, les tables peuvent être verrouillées pendant de longues périodes.

Remarque : À compter de SQL Server 2014 (12.x) Service Pack 2, une option MAXDOP est disponible pour remplacer l’option de configuration du degré maximal de parallélisme de sp_configure pour les instructions DBCC.

Étendue : globale ou de session.
2544 Transforme un vidage mémoire de SQL Server en vidage complet (l’opération par défaut est un vidage minimal). Les vidages complets sont une copie complète de la mémoire de processus cible active. Cela inclut l’état de tous les threads, la mémoire allouée à tous les processus et tous les modules chargés. Par conséquent, la taille des images mémoires completes est approximativement celle de la quantité de mémoire utilisée par le processus SQL Server, qui peut, en conséquence, être aussi importante que la mémoire RAM système totale. Sur les serveurs de grande taille dédiés à une seule instance SQL Server, cela peut représenter un fichier d’une taille de plusieurs centaines de gigaoctets ou plus.

Avertissement : La génération d’un vidage mémoire complet peut interrompre le processus SQL Server pendant une période prolongée (de plusieurs secondes à plusieurs minutes) et peut générer un fichier de vidage volumineux. Utilisez cette fonction avec précaution et dans de rares cas si la situation l’exige.

Pour plus d’informations, consultez Utiliser l’utilitaire Sqldumper.exe pour générer un fichier de vidage dans SQL Server.

Étendue : globale uniquement.
2549 Force la commande DBCC CHECKDB à supposer que chaque fichier de base de données se trouve sur un lecteur de disque unique, tout en traitant différents fichiers physiques comme un seul fichier logique. La commande DBCC CHECKDB génère une liste interne de pages à lire par lecteur de disque unique sur tous les fichiers de base de données. Cette logique détermine les lecteurs de disque uniques en fonction de la lettre de lecteur du nom de fichier physique de chaque fichier.

Remarque : N’utilisez pas cet indicateur de trace, sauf si vous savez que chaque fichier est basé sur un disque physique unique.

Remarque : même si cet indicateur de trace améliore les performances des commandes DBCC CHECKDB qui ciblent l’utilisation de l’option PHYSICAL_ONLY, certains utilisateurs peuvent ne constater aucune amélioration. Alors que cet indicateur de trace améliore l’utilisation des ressources d’E/S de disque, les performances sous-jacentes des ressources de disque peuvent limiter les performances globales de la commande DBCC CHECKDB. Pour plus d’informations, consultez KB2634571.

Étendue : globale uniquement.
2551 Transforme un vidage mémoire de SQL Server en vidage filtré (l’opération par défaut est un vidage minimal). Cette opération capture un pourcentage de la mémoire complète, où de grandes zones de structures de mémoire appartenant à SQL Server sont filtrées de manière intentionnelle, et non sérialisées, sur le disque, car elles n’apportent aucune valeur ajoutée à la résolution des problèmes (en général, les pages de données/d’index, certains caches internes comme les pages de données OLTP en mémoire et la mémoire du pool de journal). Il en résulte un fichier qui est plus petit qu’un vidage mémoire complet tout en conservant la plus grande partie de son utilité comme option préférée dans la plupart des situations où les vidages minimaux ne suffisent pas. Pour plus d’informations, consultez Utiliser l’utilitaire Sqldumper.exe pour générer un fichier de vidage dans SQL Server.

Étendue : globale uniquement.
2562 Exécute la commande DBCC CHECKDB dans un seul « lot », quel que soit le nombre d’index dans la base de données. Par défaut, la commande DBCC CHECKDB tente de réduire les ressources tempdb en limitant le nombre d’index ou de « faits » générés à l’aide d’un concept de « lots ». Mais cet indicateur de trace impose tout le traitement dans un lot.

Un effet de l’utilisation de cet indicateur de trace est que l’espace nécessaire pour tempdb peut augmenter. La taille de tempdb peut atteindre jusqu’à 5 % ou plus de la base de données utilisateur qui est en cours de traitement par la commande DBCC CHECKDB.

Remarque : même si cet indicateur de trace améliore les performances des commandes DBCC CHECKDB qui ciblent l’utilisation de l’option PHYSICAL_ONLY, certains utilisateurs peuvent ne constater aucune amélioration. Alors que cet indicateur de trace améliore l’utilisation des ressources d’E/S de disque, les performances sous-jacentes des ressources de disque peuvent limiter les performances globales de la commande DBCC CHECKDB. Pour plus d’informations, consultez KB2634571.

Étendue : globale ou de session.
2566 Exécute la commande DBCC CHECKDB sans vérification de l’intégrité des données, sauf si l’option DATA_PURITY est spécifiée.

Remarque : Les vérifications d’intégrité sur la base colonne-valeur sont activées par défaut et ne nécessitent pas l’option DATA_PURITY. Pour les bases de données mises à niveau à partir de versions antérieures de SQL Server, les vérifications sur la base colonne-valeur ne sont pas activées par défaut tant que la commande DBCC CHECKDB WITH DATA_PURITY n’est pas exécutée sans erreur sur cette base de données au moins une fois. Ensuite, DBCC CHECKDB vérifie l’intégrité sur la base colonne-valeur par défaut. Pour plus d’informations, consultez une version archivée de KB945770.

Étendue : globale uniquement.
2592 Permet la résolution des symboles lors des vidages de pile, lorsque les outils de débogage pour Windows sont installés. Par exemple, l’utilisation de l’indicateur de trace 3656 requiert l’activation de l’indicateur de trace 2592.

Avertissement : Il s’agit d’un indicateur de trace de débogage qui ne doit pas être utilisé dans un environnement de production.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Étendue : globale et de session.
2610 Active la compression d’image mémoire et la génération d’image mémoire plus rapide avec SQLDumper et via DBCC STACKDUMP. Pour plus d’informations, consultez Utiliser l’utilitaire Sqldumper.exe pour générer un fichier d’image mémoire dans SQL Server.

S’applique à : SQL Server 2022 (16.x) CU 8, SQL Server 2019 (15.x) CU 23 et versions ultérieures.

Étendue : globale et de session.
3023 Active l’option CHECKSUM comme valeur par défaut pour la commande BACKUP.

Remarque : à compter de SQL Server 2014 (12.x), ce comportement est contrôlé en définissant l’option de configuration du paramètre par défaut de la somme de contrôle de sauvegarde. Pour plus d’informations, consultez paramètre par défaut de la somme de contrôle de sauvegarde et Options de configuration du serveur (SQL Server).

Étendue : globale et de session.
3042 Contourne l’algorithme de préallocation de compression de sauvegarde par défaut pour permettre au fichier de sauvegarde de croître uniquement pour atteindre sa taille définitive. Cet indicateur de trace est utile si vous devez économiser de l'espace en allouant uniquement la taille réelle requise pour la sauvegarde compressée. L'utilisation de cet indicateur de trace peut diminuer légèrement les performances (augmentation possible de la durée de l'opération de sauvegarde). Pour plus d’informations sur l’algorithme de préallocation, consultez Compression de sauvegarde (SQL Server).

Étendue : globale uniquement.
3051 Active la journalisation de la sauvegarde SQL Server vers une URL pour les objets blob de pages dans Stockage Azure uniquement. La journalisation écrit dans un fichier journal d’erreurs spécifique. Pour plus d’informations, consultez Bonnes pratiques et dépannage de sauvegarde SQL Server vers une URL.

Étendue : globale uniquement.
3205 Par défaut, si une unité sur bande gère la compression matérielle, l'instruction DUMP ou BACKUP en fera usage. Cet indicateur de trace permet de désactiver la compression matérielle pour les unités de sauvegarde sur bande. Cette option peut s’avérer utile lorsque vous souhaitez échanger des bandes avec d’autres sites ou les utiliser avec des unités qui ne gèrent pas la compression.

Étendue : globale ou de session.
3226 Par défaut, chaque opération de sauvegarde réussie ajoute une entrée au journal des erreurs SQL Server et au journal des événements système. Si vous créez de fréquentes sauvegardes du fichier journal, ces messages de réussite peuvent rapidement s’accumuler, ce qui entraîne des journaux des erreurs très volumineux dans lesquels la recherche d’autres messages devient compliquée.

Avec cet indicateur de trace, vous pouvez supprimer ces entrées de journal. L'activation de cet indicateur de trace est utile si vous exécutez des sauvegardes de fichiers journaux fréquentes et si aucun de vos scripts ne dépend de ces entrées.

Étendue : globale uniquement.
3427 Active un correctif pour un problème se produisant quand de nombreuses transactions consécutives insèrent des données dans des tables temporaires dans SQL Server 2016 (13.x) où cette opération consomme plus de processeur que dans SQL Server 2014 (12.x). Pour plus d’informations, consultez KB3216543.

S’applique à : SQL Server 2016 (13.x) Service Pack 1 CU 2 jusqu’à SQL Server 2016 (13.x) Service Pack 2 CU 2. À compter de SQL Server 2016 (13.x) Service Pack 2 CU3 et SQL Server 2017 (14.x), cet indicateur de trace n’a pas d’effet.

Étendue : globale uniquement.
3428 Le thread de restauration par progression Always On sur un réplica secondaire peut parfois être bloqué par des requêtes T-SQL, ce qui peut entraîner des retards de synchronisation. Cet indicateur de trace met fin à ces requêtes bloquantes en définissant le dépassement de délai d’attente de verrou sur 60 secondes. Pour plus d’informations sur la latence du thread de restauration par progression, consultez Le thread de restauration par progression prend du retard en raison d’une contention de ressources et Résolution des problèmes de file d’attente de restauration par progression (problèmes de latence des données) sur les réplicas secondaires accessibles en lecture Always On.

Avertissement : Veillez à tester cette option et à comprendre son fonctionnement avant de la déployer dans un environnement de production, car des requêtes peuvent être arrêtées.

S’applique à : SQL Server 2019 (15.x)

Étendue : globale uniquement.
3459 Désactive la restauration par progression parallèle. Pour plus d’informations, consultez KB3200975, KB4101554 et ce billet de blog, Modèle de restauration par réplica secondaire du groupe de disponibilité et performances.

S’applique à : SQL Server 2016 (13.x), SQL Server 2017 (14.x) et versions ultérieures.

Étendue : globale uniquement.
3468 Désactive les points de contrôle indirects sur tempdb.

S’applique à : SQL Server 2016 (13.x) Service Pack 1 CU 5, SQL Server 2017 (14.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
3502 Permet d’envoyer les modifications de l’état du point de contrôle au journal des erreurs.

S’applique à : SQL Server 2012 (11.x) et versions ultérieures.

Étendue : globale ou de session.
3605 Redirige les messages de traçage vers le journal des erreurs SQL Server. Par exemple, l’utilisation des indicateurs de trace 205 et 8721 nécessite l’activation de l’indicateur de trace 3605.

Avertissement : Il s’agit d’un indicateur de trace de débogage qui ne doit pas être activé en continu dans un environnement de production.

Étendue : globale ou de session.
3608 Empêche SQL Server de démarrer automatiquement et de récupérer des bases de données, sauf la base de données master. Si des activités qui nécessitent tempdb sont lancées, model est récupérée et tempdb est créée. Les autres bases de données ne sont démarrées et récupérées qu’en cas d’accès. Certaines fonctionnalités, telles que le niveau d'isolement d'instantané et l'instantané Read Committed, peuvent ne pas fonctionner. Utilisé pour Déplacer des bases de données système et Déplacer des bases de données utilisateur.

Remarque : Ne pas utiliser au cours du fonctionnement normal.

Étendue : globale uniquement.
3625 Limite la quantité d’informations retournée aux utilisateurs qui ne sont pas membres du rôle serveur fixe sysadmin, en masquant les paramètres de certains messages d’erreur à l’aide de '******'. Cela peut permettre d'éviter la divulgation d'informations sensibles.

Étendue : globale uniquement.
3656 Permet la résolution des symboles lors des vidages de pile, lorsque les outils de débogage pour Windows sont installés.

Avertissement : Il s’agit d’un indicateur de trace de débogage qui ne doit pas être utilisé dans un environnement de production.

Remarque : À compter de SQL Server 2019 (15.x), l’indicateur de trace 2592 doit être activé avec l’indicateur de trace 3656 pour permettre la résolution des symboles.

Étendue : globale et de session.
3880 Désactive la tâche du minuteur qui vérifie l’état d’un index pouvant être repris.

S’applique à : SQL Server 2017 (14.x) et versions ultérieures. Destiné aux systèmes haut de gamme avec des charges de travail hautes performances.

Étendue : globale ou de session.
3924 Active la suppression automatique des transactions DTC orphelines avec SPID=-2, ce qui représente un problème pour certains moniteurs de transactions tiers. Pour plus d’informations, consultez KB4519668 et KB4511816.

Étendue : globale uniquement.
3972 Désactive la fonctionnalité de mises à jour PFS (Page Free Space) simultanées. Pour plus d’informations sur les mises à jour PFS simultanées, consultez Performances intelligentes. Pour un problème où cet indicateur de trace est utile, consultez les dumps du planificateur improductif pendant la récupération d’une base de données de disponibilité secondaire avec un instantané de base de données dans KB5007794.

Étendue : globale uniquement.
4022 Désactive l’exécution automatique des procédures stockées au démarrage de SQL Server. Pour plus d’informations sur l’exécution automatique des procédures stockées de démarrage, consultez sp_procoption.

Étendue : globale uniquement.
4043 Corrige une erreur qui se produit lorsque vous appliquez une stratégie de sécurité sur une table externe PolyBase et utilisez la Sécurité au niveau des lignes (SNL) dans SQL Server 2019 (15.x). Le message d’erreur ressemble à ce qui suit : « Les prédicats de sécurité ne peuvent être ajoutés qu’à des tables utilisateur et à des vues liées au schéma ». Pour plus d’informations, consultez KB4552159.

Étendue : globale ou de session.
4136 Désactive la détection des paramètres, sauf si OPTION(RECOMPILE), WITH RECOMPILE ou OPTIMIZE FOR <value> est utilisé. Pour plus d’informations, consultez KB980653.

À compter de SQL Server 2016 (13.x), pour effectuer cette opération au niveau de la base de données, consultez l’option PARAMETER_SNIFFING dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Pour obtenir le même résultat au niveau de la requête, ajoutez l’indicateur de requête OPTIMIZE FOR UNKNOWN. L’indicateur OPTIMIZE FOR UNKNOWN ne désactive pas le mécanisme de détection de paramètres, mais l’ignore pour obtenir le même résultat prévu.
À compter de SQL Server 2016 (13.x) Service Pack 1, une seconde option pour effectuer cette opération au niveau de la requête consiste à ajouter l’USE HINT 'DISABLE_PARAMETER_SNIFFING'indicateur de requête au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale ou de session.
4137 Amène SQL Server à générer un plan qui utilise la sélectivité minimale lors de l’évaluation des prédicats AND des filtres à prendre en compte pour la corrélation partielle à la place de l’indépendance, sous le modèle d’estimation de la cardinalité (CE) de l’optimiseur de requête de SQL Server 2012 (11.x) et versions antérieures (70). Pour plus d’informations, consultez KB2658214.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' au lieu d’utiliser cet indicateur de trace avec le modèle d’estimation de la cardinalité (CE) 70.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Remarque : Cet indicateur de trace ne s’applique pas à CE version 120 ou ultérieure. Utilisez l’indicateur de trace 9471 à la place.

Étendue : globale, de session ou de requête (QUERYTRACEON).
4138 Indique à SQL Server de générer un plan qui n’utilise pas les ajustements d’objectif de lignes avec les requêtes contenant les mots clés TOP, OPTION (FAST N), IN ou EXISTS. Pour plus d’informations, consultez KB2667211.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'DISABLE_OPTIMIZER_ROWGOAL' au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
4139 Active automatiquement la génération de statistiques rapides (modification de l’histogramme) quel que soit l’état de la colonne clé. Si l’indicateur de trace 4139 est défini, quel que soit l’état de la première colonne de statistiques (croissant, décroissant ou stationnaire), l’histogramme utilisé pour estimer la cardinalité sera ajusté au moment de la compilation de la requête. Pour plus d’informations, consultez KB2952101.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS' au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Remarque : Cet indicateur de trace ne s’applique pas à CE version 70. Utilisez les indicateurs de trace 2389 et 2390 à la place.

Étendue : globale, de session ou de requête (QUERYTRACEON).
4199 Active les corrections de l’optimiseur de requête publiées dans les mises à jour cumulatives et les Service Packs de SQL Server.

Les modifications de l’optimiseur de requête apportées à de précédentes versions de SQL Server sont activées par défaut sous le niveau de compatibilité de la base de données le plus récent dans une version de produit donnée, sans activation de l’indicateur de trace 4199. Pour plus d’informations, consultez KB974006.

Modifications de l’optimiseur de requête de tous les précédents niveaux de compatibilité de la base de données :
- Si l’indicateur de trace 4199 est activé, les modifications de l’optimiseur de requête de tous les niveaux de compatibilité de la base de données précédents sont également activées.
- Si l’indicateur de trace 4199 est désactivé ou n’est pas défini, les modifications de l’optimiseur de requête sont activées à partir du niveau de compatibilité 130. Pour les niveaux de compatibilité inférieurs à 130, les modifications de l’optimiseur de requête sont désactivées.

Modifications de l’optimiseur de requête pour la version post-RTM du moteur de base de données :
- Si l’indicateur de trace 4199 est activé, les modifications de l’optimiseur de requête sont activées pour la version post-RTM du moteur de base de données.
- Si l’indicateur de trace 4199 est désactivé ou n’est pas défini, les modifications de l’optimiseur de requête sont désactivées pour la version post-RTM du moteur de base de données.

À compter de SQL Server 2016 (13.x), pour effectuer cette opération au niveau de la base de données, consultez l’option QUERY_OPTIMIZER_HOTFIXES dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'ENABLE_QUERY_OPTIMIZER_HOTFIXES' au lieu d’utiliser cet indicateur de trace.

Important : Les correctifs de l’optimiseur de requête qui résolvent les erreurs relatives à des résultats erronés ou à des violations d’accès ne sont pas activés par l’indicateur de trace 4199. Ces correctifs ne sont pas facultatifs et sont donc activés par défaut une fois que le package de mise à jour est installé.

Étendue : globale, de session ou de requête (QUERYTRACEON).
4610 Augmente la taille de la table de hachage qui stocke les entrées de cache d’un facteur de 8. Combiné à l’indicateur de trace 4618, il augmente le nombre d’entrées dans le magasin de cache TokenAndPermUserStore jusqu’à 8 192. Pour plus d’informations sur la résolution des problèmes de taille du cache TokenAndPermUserStore, consultez Les requêtes prennent plus de temps pour s’exécuter lorsque la taille du cache TokenAndPermUserStore augmente dans SQL Server.

Étendue : globale uniquement.
4616 Permet aux rôles d'application d'accéder aux métadonnées au niveau du serveur. Dans SQL Server, un rôle d’application ne peut pas accéder à des métadonnées situées en dehors de sa propre base de données car les rôles d’application ne sont pas associés à un principal au niveau serveur. Il s'agit là d'une différence par rapport aux versions antérieures de SQL Server. La définition de cet indicateur global désactive les nouvelles restrictions et permet aux rôles d'application d'accéder aux métadonnées au niveau du serveur.

Étendue : globale uniquement.
4618 Limite le nombre d’entrées dans la banque de cache TokenAndPermUserStore à 1 024. Combiné à l’indicateur de trace 4610, il augmente le nombre d’entrées dans le magasin de cache TokenAndPermUserStore jusqu’à 8 192. Pour plus d’informations sur la résolution des problèmes de taille du cache TokenAndPermUserStore, consultez Les requêtes prennent plus de temps pour s’exécuter lorsque la taille du cache TokenAndPermUserStore augmente dans SQL Server.

Étendue : globale uniquement.
4621 Limite le nombre d’entrées dans le magasin de cache TokenAndPermUserStore au nombre spécifié par l’utilisateur dans une clé de Registre. Pour plus d’informations, consultez KB959823.

Étendue : globale uniquement.
4631 Désactive SHA2_256/AES256 pour le hachage des mots qui génèrent des clés de chiffrement. À compter de SQL Server 2017 (14.x), SHA2 est utilisé à la place de SHA1. Cela signifie que des étapes supplémentaires peuvent s’avérer nécessaires pour que votre installation SQL Server 2017 (14.x) déchiffre les éléments qui étaient chiffrés par SQL Server 2016 (13.x), comme décrit dans Créer des clés symétriques identiques sur deux serveurs. Pour plus d’informations, consultez KB4053407.

S’applique à : SQL Server 2017 (14.x) et versions ultérieures.

Étendue : globale uniquement.
5004 Suspend l’analyse du chiffrement TDE et provoque l’arrêt du travail d’analyse du chiffrement sans effectuer la moindre tâche. La base de données reste dans l’état de chiffrement (chiffrement en cours). Pour reprendre l’analyse de rechiffrement, désactivez l’indicateur de trace 5004 et exécutez l’instruction ALTER DATABASE <nom_base_de_données> SET ENCRYPTION ON.

Étendue : globale uniquement.
6408 Active la visibilité du plan d’exécution estimé pour voir le plan de requête distant du calcul pushdown PolyBase.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures. Pour plus d’informations, consultez Comment savoir si un pushdown externe s’est produit.

Étendue : globale, de session ou de requête (QUERYTRACEON).
6498 Active la compilation de plusieurs requêtes volumineuses pour donner accès à la passerelle de grande taille quand la mémoire disponible est suffisante. Cet indicateur de trace peut être utilisé pour garder sous contrôle l’utilisation de la mémoire pour la compilation des requêtes entrantes, évitant ainsi les délais de compilation en cas de requêtes volumineuses simultanées. Il est basé sur une valeur de 80 % de la mémoire cible SQL Server et il permet la compilation d’une requête volumineuse par 25 Go de mémoire. Pour plus d’informations, consultez KB3024815.

Remarque : à compter de SQL Server 2014 (12.x) Service Pack 2 et SQL Server 2016 (13.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 6498 n’a pas d’effet.

Étendue : globale uniquement.
6527 Désactive la génération d'un vidage de la mémoire sur la première occurrence d'une exception mémoire insuffisante dans l'intégration du CLR. Par défaut,SQL Server génère un petit vidage de la mémoire sur la première occurrence d’une exception d’insuffisance de mémoire dans le CLR. Le comportement de l'indicateur de trace est comme suit :

– S’il est utilisé comme indicateur de trace de démarrage, un vidage de mémoire n’est jamais généré. Toutefois, un vidage de la mémoire peut être généré si d'autres indicateurs de trace sont utilisés.
- Si cet indicateur de trace est activé sur un serveur en cours d’exécution, une image de mémoire n’est pas générée automatiquement à partir de ce point. Toutefois, si une image mémoire a déjà été générée en raison d’une exception mémoire insuffisante dans le CLR, cet indicateur de trace n’a pas d’effet.

Étendue : globale uniquement.
6532 Permet l’amélioration des performances des opérations de requête avec les types de données spatiales dans SQL Server 2012 (11.x) et SQL Server 2014 (12.x). Les gains de performances varient en fonction de la configuration, des types de requêtes et des objets. Pour plus d’informations, consultez KB3107399.

Remarque : à compter de SQL Server 2016 (13.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 6532 n’a pas d’effet.

Étendue : globale et de session.
6533 Permet l’amélioration des performances des opérations de requête avec les types de données spatiales dans SQL Server 2012 (11.x) et SQL Server 2014 (12.x). Les gains de performances varient en fonction de la configuration, des types de requêtes et des objets. Pour plus d’informations, consultez KB3107399.

Remarque : à compter de SQL Server 2016 (13.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 6533 n’a pas d’effet.

Étendue : globale et de session.
6534 Permet l’amélioration des performances des opérations de requête avec les types de données spatiales à compter de SQL Server 2012 (11.x). Les gains de performances varient en fonction de la configuration, des types de requêtes et des objets. Pour plus d’informations, consultez KB3107399.

Étendue : globale uniquement.
6545 Active la sécurité CLR stricte. Pour plus d’informations, consultez KB4018930.

S’applique à : SQL Server 2012 (11.x) Service Pack 3 CU 10, SQL Server 2014 (12.x) Service Pack 2 CU 6, SQL Server 2016 (13.x) RTM CU 7, SQL Server 2016 (13.x) Service Pack 1 CU 4 et versions ultérieures. À compter de SQL Server 2017 (14.x), cette fonctionnalité est activée par défaut et l’indicateur de trace 6545 n’a aucun effet.

Étendue : globale uniquement.
6559 Permet la correction qui change la logique du modèle de thread CLR par défaut. Pour plus d’informations, consultez KB4517771.

S’applique à : SQL Server 2016 (13.x) Service Pack 2 CU 10, SQL Server 2017 (14.x) CU 18, SQL Server 2019 (15.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
7117 Atténue un échec d’assertion que vous pouvez rencontrer quand vous avez plusieurs insertions imbriquées. Cet indicateur de trace permet au thread du magasin de versions persistantes (PVS) propre de continuer, si le bit PVS est défini pour une ligne qui a peut-être fait partie d’une transaction abandonnée. Cet indicateur de trace permet au nettoyeur PVS d’ignorer le bit et de poursuivre l’opération de nettoyage.

S’applique à : SQL Server 2022 (16.x) CU 9 et versions ultérieures.

Étendue : globale uniquement.
7314 Impose le traitement des valeurs NUMBER avec une précision/échelle inconnue comme des valeurs double avec le fournisseur OLE DB. Pour plus d’informations, consultez KB3051993.

Étendue : globale et de session.
7412 Active l’infrastructure légère de profilage des statistiques sur l’exécution des requêtes. Pour plus d’informations, consultez KB3170113.

S’applique à : SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures. À compter de SQL Server 2019 (15.x), cet indicateur de trace n’a aucun effet, car le profilage léger est activé par défaut.

Étendue : globale uniquement.
7470 Active des calculs supplémentaires concernant les allocations de mémoire nécessaires pour les opérations de tri. Pour plus d’informations, consultez KB3088480.

S’applique à : SQL Server 2012 (11.x) Service Pack 2 CU 8, SQL Server 2014 (12.x) RTM CU 10, SQL Server 2014 (12.x) Service Pack 1 CU 3 et versions ultérieures.

Avertissement : L’indicateur de trace 7470 augmente les besoins en mémoire pour les requêtes utilisant des opérateurs de tri et peut affecter la disponibilité de la mémoire pour les autres requêtes simultanées.

Étendue : globale, de session ou de requête (QUERYTRACEON).
7471 Permet l’exécution de plusieurs instructions UPDATE STATISTICS pour différentes statistiques sur une seule table simultanément. Pour plus d’informations, consultez KB3156157.

S’applique à : SQL Server 2014 (12.x) Service Pack 1 et versions ultérieures.

Étendue : globale uniquement.
7745 Force le magasin des requêtes à ne pas vider les données sur le disque lors de l’arrêt de la base de données.

Remarque : L’utilisation de cet indicateur de trace peut, en cas d’arrêt, entraîner la perte des données du magasin des requêtes qui n’ont pas été vidées précédemment sur le disque. Pour un arrêt de SQL Server, la commande SHUTDOWN WITH NOWAIT peut être utilisée à la place de cet indicateur de trace pour forcer un arrêt immédiat.

Étendue : globale uniquement.
7752 Permet le chargement asynchrone du magasin des requêtes.

Remarque : Utilisez cet indicateur de trace si SQL Server rencontre un nombre élevé d’attentes QDS_LOADDB liées à la charge synchrone du magasin des requêtes (comportement par défaut lors de la récupération de base de données).

Remarque : à compter de SQL Server 2019 (15.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 7752 n’a pas d’effet.

Étendue : globale uniquement.
7806 Active une connexion administrateur dédiée (DAC) sur SQL Server Express. Par défaut, aucune ressource DAC n'est réservée sur SQL Server Express. Pour plus d’informations, consultez Connexion de diagnostic pour les administrateurs de base de données.

Étendue : globale uniquement.
8011 Désactive la mémoire tampon en anneau pour le moniteur de ressource. Vous pouvez utiliser les informations de diagnostic de cette mémoire tampon en anneau pour diagnostiquer les conditions de mémoire insuffisante. Cependant, si vous utilisez cet indicateur de trace, les informations disponibles pour diagnostiquer les problèmes de performance et de fonctionnement avec SQL Server sont considérablement limitées. L’indicateur de trace 8011 s’applique toujours sur le serveur et a une étendue globale. Vous pouvez activer l’indicateur de trace 8011 au démarrage ou dans une session utilisateur.

Étendue : globale uniquement.
8012 Désactive la mémoire tampon en anneau pour les planificateurs. SQL Server enregistre un événement dans la mémoire tampon en anneau de planification chaque fois que l’un des événements suivants se produit :
- un planificateur bascule le contexte vers un autre Worker
- un Worker est suspendu
- un Worker est repris
- un Worker passe en mode préemptif ou en mode non préemptif.

Vous pouvez utiliser les informations de diagnostic de cette mémoire tampon en anneau pour analyser les problèmes de planification. Par exemple, vous pouvez utiliser les informations de cette mémoire tampon en anneau pour résoudre les problèmes lorsque SQL Server cesse de répondre. L’indicateur de trace 8012 désactive l’enregistrement des événements pour les planificateurs. Vous pouvez activer l’indicateur de trace 8012 uniquement au démarrage.

Avertissement : Lorsque vous utilisez cet indicateur de trace, les informations disponibles pour diagnostiquer les problèmes de performance et de fonctionnement avec SQL Server sont considérablement limitées.

Étendue : globale uniquement.
8015 Désactive la détection automatique et l’installation de NUMA. Pour plus d’informations, consultez KB2813214.

Étendue : globale uniquement.
8018 Désactive la mémoire tampon en anneau de l’exception. La mémoire tampon en anneau d’exception enregistre les 256 dernières exceptions levées sur un nœud. Chaque enregistrement contient des informations sur l’erreur et contient une trace. Un enregistrement est ajouté à la mémoire tampon en anneau lorsqu’une exception est levée. L’indicateur de trace 8018 désactive la création de la mémoire tampon en anneau et aucune information sur les exceptions n’est enregistrée. L’indicateur de trace 8019 désactive la collection de pile pendant la création de l’enregistrement.

Avertissement : Lorsque vous utilisez cet indicateur de trace, les informations disponibles pour diagnostiquer les problèmes de performance et de fonctionnement avec SQL Server sont considérablement limitées.

Étendue : globale uniquement.
8019 Désactive la collecte de piles pour la mémoire tampon en anneau de l’exception. L’indicateur de trace 8019 n’a pas d’effet si l’indicateur de trace 8018 est activé.

Avertissement : Lorsque vous utilisez cet indicateur de trace, les informations disponibles pour diagnostiquer les problèmes de performance et de fonctionnement avec SQL Server sont considérablement limitées.

Étendue : globale uniquement.
8020 Désactive la surveillance de la plage de travail. SQL Server utilise la taille de l’ensemble de travail lorsqu’elle reçoit des signaux d’état de la mémoire globale du système d’exploitation. L’indicateur de trace 8020 supprime la taille de la mémoire de l’ensemble de travail à prendre en compte lorsque SQL Server interprète les signaux d’état de la mémoire globale. Si vous utilisez cet indicateur de trace de manière incorrecte, une pagination importante peut se produire et les performances peuvent être médiocres. Par conséquent, contactez le support Microsoft avant d’activer l’indicateur de trace 8020. Vous pouvez activer l’indicateur de trace 8020 uniquement au démarrage.

Étendue : globale uniquement.
8032 Rétablit les paramètres de limitation du cache au paramètre SQL Server 2005 (9.x) qui permet en général des caches plus volumineux. Utilisez ce paramètre quand les entrées du cache fréquemment utilisées ne tiennent pas dans le cache et que l’option de configuration de serveur Optimiser pour les charges de travail ad hoc ne permet pas de résoudre le problème avec le cache du plan.

Avertissement : L’indicateur de trace 8032 peut altérer les performances si des caches volumineux diminuent la mémoire disponible pour les autres consommateurs, tels que le pool de mémoires tampons.

Étendue : globale uniquement.
8048 Convertit les objets mémoire partitionnés par NUMA en objets partitionnés par UC. Pour plus d’informations, consultez KB2809338.

Remarque : à compter de SQL Server 2014 (12.x) Service Pack 2 et SQL Server 2016 (13.x), ce comportement est dynamique et contrôlé par le Moteur de base de données.

Étendue : globale uniquement.
8075 Réduit la fragmentation VAS quand vous recevez des erreurs d’allocation de page mémoire sur une version 64 bits de SQL Server 2012 (11.x) ou SQL Server 2014 (12.x). Pour plus d’informations, consultez KB3074434.

S’applique à : SQL Server 2012 (11.x), SQL Server 2014 (12.x) RTM CU 10, et SQL Server 2014 (12.x) Service Pack 1 CU 3. À compter de SQL Server 2016 (13.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 8075 n’a pas d’effet.

Étendue : globale uniquement.
8079 Permet à SQL Server 2014 (12.x) Service Pack 2 d’interroger la disposition matérielle et de configurer automatiquement le NUMA logiciel sur les systèmes ayant 8 processeurs ou plus par nœud NUMA. Le comportement soft-NUMA automatique est en mesure de prendre en charge le multithreading simultané (processeur SMT/logique). Le partitionnement et la création de nœuds supplémentaires permettent de dimensionner le traitement en arrière-plan en augmentant le nombre d’écouteurs, le nombre d’instances, ainsi que les capacités réseau et de chiffrement.

S’applique à : SQL Server 2014 (12.x) Service Pack 2. À compter de SQL Server 2016 (13.x), ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 8079 n’a pas d’effet.

Étendue : globale uniquement.
8086 Désactive la vérification de localité NUMA pour les validations de mémoire.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Étendue : globale.
8089 Dans SQL Server 2017 (14.x) CU 16, vous pouvez activer le filtrage de bitmaps pour réduire la taille des images mémoire filtrées. SQL Server alloue une bitmap qui effectue le suivi des pages mémoire à exclure d’une image mémoire filtrée. Sqldumper.exe lit la bitmap et filtre les pages sans avoir besoin de lire d’autres métadonnées du gestionnaire de mémoire.

S’applique à : SQL Server 2017 (14.x) CU 16 jusqu’à CU 19 uniquement. À partir de SQL Server 2017 (14.x) CU 20, le filtrage de bitmaps est activé par défaut. L’indicateur de trace 8089 ne s’appliquera plus et sera ignoré s’il est activé. Le filtrage de bitmap peut être désactivé via l’indicateur de trace 8095. Pour plus d’informations, consultez KB4488943.

Étendue : globale uniquement.
8095 Désactive le filtrage de bitmap pour les images mémoire filtrées. SQL Server alloue une bitmap qui effectue le suivi des pages mémoire à exclure d’une image mémoire filtrée. Sqldumper.exe lit la bitmap et filtre les pages sans avoir besoin de lire d’autres métadonnées du gestionnaire de mémoire.

S’applique à : builds où le filtrage de bitmap est activé par défaut : SQL Server 2016 (13.x) CU 13 et versions ultérieures, SQL Server 2017 (14.x) CU 20 et versions ultérieures, et SQL Server 2019 (15.x).

Étendue : globale uniquement.
8099 Active un correctif de contention de verrouillage tournant pour les systèmes haut de gamme qui exécutent SQL Server 2019 (15.x) traitant de nombreux utilisateurs simultanés.

S’applique à : SQL Server 2019 (15.x) CU 2 et CU 3 uniquement. À partir de SQL Server 2019 (15.x) CU 4, ce comportement est activé par défaut. Pour plus d’informations sur la contention de verrouillage tournant, consultez l’Indicateur de trace 8101 et l’article KB4538688.

S’applique à : SQL Server 2019 (15.x)

Étendue : globale uniquement.
8101 Résout l’utilisation élevée du processeur sur du matériel moderne, comme les processeurs Intel Skylake, avec un grand nombre de processeurs et d’utilisateurs simultanés. Pour diagnostiquer la contention de verrouillage tournant, consultez le livre blanc Diagnostiquer et résoudre la contention de verrouillage tournant dans SQL Server.

S’applique à : SQL Server 2019 (15.x) uniquement, à compter de CU 8, avec d’autres améliorations introduites dans CU 14 et CU 16.

Pour plus d’informations, consultez KB4538688.

S’applique à : SQL Server 2019 (15.x)

Étendue : globale uniquement.
8121 Corrige un problème de faible mémoire à l’échelle du système qui se produit lorsque SQL Server valide la mémoire au-delà de la mémoire maximale du serveur sous le modèle de mémoire avec les pages de verrouillage dans le paramètre de stratégie de sécurité de mémoire. Cet indicateur de trace offre la mémoire dont le thread système du Moniteur de ressources a besoin pour réduire la consommation de mémoire de SQL Server. Pour plus d’informations, consultez KB5008996.

Étendue : globale uniquement.
8142 Cet indicateur de trace partitionne la liste spécifique protégée par spinlock par processeur, jusqu’à 64 partitions. Cela doit être utilisé uniquement sur les machines à mémoire volumineuse qui rencontrent une contention de verrouillage de spinlock SOS_BLOCKALLOCPARTIALLIST avec une utilisation élevée du processeur. Voir également Indicateur de trace 8145. Pour plus d’informations, consultez KB5025808.

S’applique à : SQL Server 2019 (15.x) CU 21 et versions ultérieures.

Étendue : globale uniquement.
8145 Modifie le partitionnement activé par l’indicateur de trace 8142 pour qu’il soit par nœud soft-NUMA, au lieu du processseur. L’indicateur de trace 8142 doit également être activé pour que cela prenne effet. Pour plus d’informations, consultez KB5025808.

S’applique à : SQL Server 2019 (15.x) CU 21 et versions ultérieures.

Étendue : globale uniquement.
8207 Active les mises à jour singleton pour la réplication transactionnelle et CDC. Les mises à jour des abonnés peuvent être répliquées en une paire DELETE et une paire INSERT. Il est possible que cela ne réponde pas aux règles d’entreprise, par exemple le lancement d’un déclencheur UPDATE. Avec l’indicateur de trace 8207, la mise à jour d’une colonne unique qui affecte une seule ligne (une mise à jour singleton) est répliquée comme UPDATE, et non comme une paire DELETE ou INSERT. Si la mise à jour affecte une colonne qui a une contrainte d’unicité ou si la mise à jour affecte plusieurs lignes, elle est néanmoins répliquée en tant que paire DELETE ou INSERT. Pour plus d’informations, consultez une version archivée de KB302341.

Étendue : globale uniquement.
8284 Corrige un problème de nettoyage manuel où les escalades répétées de verrous sur les tables provoquent une contention et une lenteur dans le nettoyage des métadonnées de suivi des modifications expirées.

Remarque : Cet indicateur de trace s’applique à SQL Server 2019 (15.x) CU 21 et versions ultérieures.

Étendue : globale uniquement.
8285 Convertit un échec d’assertion (Expression : m_versionStatus.IsVisible ()) en exception pour empêcher un problème d’image de mémoire dans certaines circonstances, quand vous activez le suivi des modifications sur une base de données dont l’isolation des clichés est activée.

S’applique à : SQL Server 2022 (16.x) CU 6, SQL Server 2019 (15.x) CU 21 et versions ultérieures.

Étendue : globale uniquement.
8286 Force la requête de nettoyage à utiliser l’indicateur FORCE ORDER à des fins d’amélioration des performances. Peut être employé avec TF 8287 pour exploiter l’indicateur FORCESEEK. Pour plus d’informations, consultez KB 5022375.

S’applique à : SQL Server 2022 (16.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
8287 Force la requête de nettoyage à utiliser l’indicateur FORCESEEK à des fins d’amélioration des performances. Peut être employé avec TF 8286 pour exploiter l’indicateur FORCE ORDER. Pour plus d’informations, consultez KB 5022375.

S’applique à : SQL Server 2022 (16.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
8290 Une fois cet indicateur de recherche est activé, le processus de nettoyage automatique du suivi des modifications (CT) réinitialise toute version de nettoyage invalide à une version de nettoyage en fonction de la période de conservation. Après avoir activé cet indicateur de trace, vous devez laisser le processus de nettoyage automatique s’exécuter. Pour plus d’informations, consultez KB4538365.

S’applique à : SQL Server 2017 (14.x) CU 19, SQL Server 2019 (15.x) CU 4, et SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale ou de session.
8558 Active un correctif pour vous assurer que vous n’observez pas des cas de figure en périphérie pendant lesquels, quand le niveau d’isolation RCSI est activé, une transaction ne peut parfois pas voir les données les plus récentes des tables qui ont été modifiées à l’aide de transactions DTC même après que xa_commit a retourné un message de réussite pendant une courte durée.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

S’applique à : SQL Server 2019 (15.x) CU 18, SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale uniquement.
8721 Indique dans le journal des erreurs quand une mise à jour automatique des statistiques s’exécute. Pour plus d’informations, consultez une version archivée de KB195565.

Remarque : Cet indicateur de trace nécessite l’activation de l’indicateur de trace 3605.

Étendue : globale uniquement.
8744 Désactive la prérécupération pour l’opérateur Boucles imbriquées.

Avertissement : Une utilisation incorrecte de cet indicateur de trace peut entraîner des lectures physiques supplémentaires quand SQL Server exécute des plans qui contiennent l’opérateur de boucles imbriquées.

Étendue : globale et de session.
8790 Pousse SQL Server à utiliser un plan de requête large lors de l’exécution d’une instruction UPDATE pour mettre à jour des index dans une table. Quand vous exécutez UPDATE sur une colonne d’index cluster, SQL Server met à jour non seulement l’index cluster lui-même, mais aussi tous les index non cluster, car ils contiennent la clé d’index du cluster. Pour optimiser les performances et réduire le nombre d’E/S aléatoires, SQL Server peut choisir de trier toutes les données d’index non cluster en mémoire, puis de mettre à jour tous les index dans l’ordre. Il s’agit d’une mise à jour de type « plan large » (ou « par index »), qui peut être forcée à l’aide de cet indicateur de trace

Étendue : globale, de session ou de requête (QUERYTRACEON).
8902 Désactive les pages verrouillées pour les opérations d’E/S pour les systèmes haut de gamme avec des charges de travail hautes performances.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Étendue : globale.
8904 Active un correctif pour résoudre un échec de restauration par progression parallèle sur un réplica secondaire. Pour plus d’informations, consultez KB5004649.

S’applique à : SQL Server 2019 (15.x), à compter de CU 12.

S’applique à : SQL Server 2019 (15.x)

Étendue : globale uniquement.
9024 Convertit un objet mémoire en pool du journal global en objet mémoire partitionné par nœud NUMA. Pour plus d’informations, consultez KB2809338.

Remarque : à compter de SQL Server 2012 (11.x) Service Pack 3 et SQL Server 2014 (12.x) Service Pack 1, ce comportement est contrôlé par le Moteur de base de données, et l’indicateur de trace 9024 n’a pas d’effet.

Étendue : globale uniquement.
9109 Désactive le démarrage de la fonctionnalité de notification de requête. Pour plus d’informations, consultez La restauration ou récupération peut échouer ou prendre beaucoup de temps si la notification de requête est utilisée dans une base de données.

Avertissement : Soyez prudent avec cet indicateur de trace. Cet indicateur de trace peut être utile pour un ensemble limité de scénarios, principalement pour le dépannage ou l’isolation d’un problème.

Étendue : globale et de session.
9135 Empêche l’utilisation des vues indexées. Pour ce faire, ajoutez l’indicateur de requête USE HINT 'EXPAND VIEWS' au lieu d’utiliser cet indicateur de trace. Pour plus d’informations, consultez Indicateurs de table (Transact-SQL).

S’applique à : SQL Server 2019 (15.x) CU 23 et versions ultérieures.

Étendue : globale uniquement.
9347 Désactive le mode batch pour l’opérateur de tri. SQL Server 2016 (13.x) contient un nouvel opérateur de tri en mode batch qui améliore les performances pour de nombreuses requêtes analytiques. Pour plus d’informations, consultez KB3172787.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9348 Permet l’utilisation des estimations de cardinalité de l’optimiseur de requête pour décider si BULK INSERT pour un index Columnstore de cluster doit être initié ou non. Si le nombre estimé de lignes à insérer est inférieur à 102 400, le Moteur de base de données utilise BULK INSERT. Si plus de 102 400 lignes sont estimées, une BULK INSERT est lancée. Pour plus d’informations, consultez KB2998301.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9349 Désactive le mode batch pour l’opérateur de tri des N premiers. SQL Server 2016 (13.x) contient un nouvel opérateur de tri en mode batch des premiers qui améliore les performances pour de nombreuses requêtes analytiques.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9358 Désactive le mode batch pour l’opérateur de tri. Pour plus d’informations, consultez KB3171555.

Remarque : à compter de SQL Server 2017 (14.x), ce comportement est activé par défaut et l’indicateur de trace n’a aucun effet.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9389 Permet une allocation de mémoire dynamique supplémentaire pour les opérateurs en mode batch. Si une requête n’obtient pas toute la mémoire dont elle a besoin, elle déverse des données sur tempdb, ce qui occasionne des E/S supplémentaires et affecte potentiellement les performances des requêtes. Si l’indicateur de trace d’allocation de mémoire dynamique est activé, un opérateur en mode batch peut demander plus de mémoire et éviter le déversement sur tempdb si de la mémoire supplémentaire est disponible. Pour plus d’informations, consultez la section Effets de min memory per query du Guide d’architecture de gestion de la mémoire.

Étendue : globale ou de session.
9398 Désactive l’opérateur de jointure adaptative qui permet de différer une méthode de jointure hachée ou de jointure de boucles imbriquées tant que la première entrée n’a pas été analysée. Il s’agit là d’une nouvelle fonctionnalité de SQL Server 2017 (14.x). Pour plus d’informations, consultez KB4099126.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9410 Active un correctif non défini par défaut pour une requête qui utilise un opérateur d’agrégation de code de hachage et des débordements. L’activation de cet indicateur de trace augmente la mémoire disponible pour les opérations de code de hachage distinctes. Pour plus d’informations, consultez KB3167159.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9440 Désactive le correctif pour le bogue 2112485 et bogue 2636294. Le correctif de bogue ne s’applique pas pendant l’utilisation du modèle d’estimation de cardinalité (CE) hérité. Quand une base de données utilise le modèle CE par défaut, les estimations de la cardinalité de joncture externe peuvent augmenter plus que la cardinalité des tables impliquées dans la joncture quand les prédicats de joncture sont composés de clés primaires des tables (par exemple, la clé primaire des clés étrangères). Un plafond est appliqué qui limitera le montant de la surestimation de la cardinalité semblable à la limite de surestimation qui existe dans l’ancien CE pour ce scénario.

Remarque : Cet indicateur de trace s’applique uniquement aux bases de données avec un niveau de compatibilité de 160 et inférieur.

S’applique à : SQL Server 2019 (15.x) CU 20, SQL Server 2022 (16.x) CU 9 et versions ultérieures.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9453 Désactive l’exécution en mode batch. Pour plus d’informations, consultez KB4016902.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9471 Amène SQL Server à générer un plan qui utilise la sélectivité minimale pour les filtres de table unique sous le modèle d’estimation de la cardinalité de l’optimiseur de requête de SQL Server 2014 (12.x) et versions ultérieures.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Remarque : Cet indicateur de trace ne s’applique pas à CE version 70. Utilisez l’indicateur de trace 4137 à la place.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9476 Amène SQL Server à générer un plan qui utilise l’hypothèse de relation contenant-contenu simple au lieu de l’hypothèse par défaut de relation contenant-contenu de base, sous le modèle d’estimation de la cardinalité de l’optimiseur de requête de SQL Server 2014 (12.x) et versions ultérieures. Pour plus d’informations, consultez KB3189675.

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS' au lieu d’utiliser cet indicateur de trace.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9481 Définit le modèle d’estimation de la cardinalité de l’optimiseur de requête sur SQL Server 2012 (11.x) et antérieur (version 70), quel que soit le niveau de compatibilité de la base de données. Pour plus d’informations, consultez KB2801413.

À compter de SQL Server 2016 (13.x), pour effectuer cette opération au niveau de la base de données, consultez l’option LEGACY_CARDINALITY_ESTIMATION dans ALTER DATABASE SCOPED CONFIGURATION (Transact-SQL).

Avec SQL Server 2016 (13.x) Service Pack 1 et versions ultérieures, pour effectuer cette opération au niveau de la requête, ajoutez l’indicateur de requêteUSE HINT 'FORCE_LEGACY_CARDINALITY_ESTIMATION' au lieu d’utiliser cet indicateur de trace.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9485 Désactive l’autorisation SELECT pour DBCC SHOW_STATISTICS. Pour plus d’informations, consultez KB2683304.

Étendue : globale uniquement.
9488 Définit l’estimation fixe pour les fonctions table sur la valeur par défaut 1 (correspondant à la valeur par défaut sous le modèle d’estimation de la cardinalité de l’optimiseur de requête des versions SQL Server 2008 R2 (10.50.x) et antérieures) quand vous utilisez le modèle d’estimation de la cardinalité de l’optimiseur de requête de SQL Server 2012 (11.x) et versions ultérieures.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9495 Désactive le parallélisme lors de l’insertion pour les opérations INSERT...SELECT et applique cette mesure à la fois aux tables utilisateur et temporaires. Pour plus d’informations, consultez KB3180087.

Étendue : globale ou de session.
9567 Active la compression du flux de données pour les groupes de disponibilité Always On au cours de l’amorçage automatique. La compression peut réduire considérablement le temps de transfert pendant l’amorçage automatique et augmente la charge sur le processeur. Pour plus d’informations, consultez Initialiser automatiquement le groupe de disponibilité Always On et Régler la compression pour un groupe de disponibilité.

Étendue : globale ou de session.
9571 Désactive l’amorçage automatique des groupes de disponibilité pour le chemin d’accès de la base de données par défaut. Pour plus d’informations, consultez Disposition du disque.

Étendue : globale ou de session.
9576 Désactive la collection d’erreurs améliorée pour les basculements de groupes de disponibilité qui a été introduite dans SQL Server 2016 (13.x) Service Pack 1 CU 10, SQL Server 2016 (13.x) Service Pack 2 CU 2 et SQL Server 2017 (14.x) CU 9. Pour plus d’informations, consultez SQL Server, Groupes de disponibilité et SQL Server, Basculement de niveau de base de données.

Étendue : globale uniquement.
9591 Désactive la compression de bloc de journal dans les groupes de disponibilité Always On. La compression de bloc de journal est le comportement par défaut utilisé avec les réplicas synchrones et asynchrones dans SQL Server 2012 (11.x) et SQL Server 2014 (12.x). Dans SQL Server 2016 (13.x), la compression est utilisée uniquement avec la réplication asynchrone.

Étendue : globale ou de session.
9592 Active la compression du flux de journal pour les groupes de disponibilité synchrones. Cette fonctionnalité est désactivée par défaut sur les groupes de disponibilité synchrones, car la compression ajoute une latence. Pour plus d’informations, consultez Régler la compression pour le groupe de disponibilité.

Étendue : globale ou de session.
9708 Active la collecte de métriques de publication d’événements pour les sessions d’événements étendues. Pour plus d’informations, consultez sys.dm_xe_session_events.

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale uniquement.
9810 Désactive le moteur OLTP In-Memory de la récupération de la mémoire Thread Local Storage (TLS). Dans SQL Server 2019 (15.x) et versions antérieures, la récupération de la mémoire TLS est le comportement par défaut. Dans SQL Server 2022 (16.x), une nouvelle optimisation de la mémoire a été introduite qui permet au moteur OLTP In-Memory de récupérer la mémoire TLS et de réduire le risque de problèmes de mémoire insuffisante. Cet indicateur de trace rétablit le comportement antérieur à SQL Server 2022 (16.x).

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale uniquement.
9929 Réduit les fichiers de point de contrôle en mémoire à 1 Mo chacun. Pour plus d’informations, consultez KB3147012.

Étendue : globale uniquement.
9939 Active les plans parallèles et l’analyse parallèle des tables à mémoire optimisée et des variables de table dans les opérations DML qui référencent des tables à mémoire optimisée ou des variables de table, tant qu’ils ne sont pas la cible de l’opération DML dans SQL Server 2016 (13.x). Pour plus d’informations, consultez KB4013877.

Remarque : L’indicateur de trace 9939 n’est pas nécessaire si l’indicateur de trace 4199 est également activé de façon explicite.

Étendue : globale, de session ou de requête (QUERYTRACEON).
9944 Active un correctif non défini par défaut pour ralentir la durée de récupération de base de données lorsqu’elle contient un grand nombre de tables optimisées en mémoire ou de types de tables optimisées en mémoire, et que le blocage avec les types d’attente PREMPTIVE_OS_FINDFILE ou PREEMPTIVE_OS_CREATEDIRECTORY peut être observé. Pour plus d’informations, consultez KB4090789 and KB4052338.

Étendue : globale uniquement.
9953 Réutilise les planificateurs masqués utilisés par les tables à mémoire optimisée.

S’applique à : SQL Server 2019 (15.x) CU 20 et versions ultérieures, et SQL Server 2022 (16.x) CU 3 et versions ultérieures.

Étendue : globale uniquement.
10054 Désactive la règle de l’optimiseur de requête SQL Server qui décorrèle les sous-requêtes des prédicats OR en jointures externes.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Remarque : Veillez à tester soigneusement cette option avant de la déployer dans un environnement de production.

Étendue : globale, de session ou de requête (QUERYTRACEON).
10204 Désactive la fusion/recompression au cours de la réorganisation d’index columnstore. Dans SQL Server 2016 (13.x), quand un index columnstore est réorganisé, il existe une nouvelle fonctionnalité pour fusionner automatiquement les petits rowgroups compressés dans des rowgroups compressés plus importants, ainsi que pour recompresser les rowgroups avec un grand nombre de lignes supprimées.

Remarque : L’indicateur de trace 10204 ne s’applique pas aux index columnstore qui sont créés sur des tables à mémoire optimisée.

Étendue : globale ou de session.
10207 Autorise les analyses de l’index Columnstore en cluster (CCI) pour ignorer les segments ou les métadonnées endommagés, ce qui permet l’extraction des données à partir d’une CCI endommagée. Pour plus d’informations, consultez KB3067257.

Étendue : globale ou de session.
10316 Permet de créer des index supplémentaires sur une table temporelle de mise en lots à mémoire optimisée interne à côté de l’index par défaut. Si vous avez un modèle de requête spécifique avec des colonnes qui ne sont pas couvertes par l’index par défaut, vous pouvez envisager d’ajouter des indexes supplémentaires.

Remarque : Les tables temporelles avec contrôle de version du système pour les tables à mémoire optimisée sont conçues pour fournir un débit transactionnel élevé. La création d’index supplémentaires peut introduire une charge pour les opérations DML qui mettent à jour ou suppriment des lignes dans la table actuelle. Avec les index supplémentaires, vous devez trouver le juste équilibre entre les performances des requêtes temporelles et une charge DML supplémentaire.

Étendue : globale ou de session.
10460 Amène la fonctionnalité SQL Server Stretch Database à approvisionner une table étendue dans le niveau de service Hyperscale d’Azure SQL Database.

S’applique à : SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 18, et SQL Server 2022 (16.x) et versions ultérieures.

À compter de SQL Server 2017 (14.x) CU 31, de SQL Server 2019 (15.x) CU 18 et de SQL Server 2022 (16.x), le comportement par défaut de la fonctionnalité d’instance Stretch Database approvisionne une table étendue dans un niveau de service standard (S3) d’Azure SQL Database. Pour plus d’informations, consultez KB5018050.

Étendue : globale uniquement.
11023 Désactive l’utilisation du dernier taux d’échantillonnage enregistré pour toutes les mises à jour des statistiques suivantes où un taux d’échantillonnage n’est pas spécifié explicitement dans le cadre de l’instruction UPDATE STATISTICS. Pour plus d’informations, consultez KB4039284.

Étendue : globale uniquement.
11024 Active le déclenchement de la mise à jour automatique des statistiques quand le nombre de modifications de n’importe quelle partition dépasse le seuil local. Pour plus d’informations, consultez KB4041811.

S’applique à : SQL Server 2016 (13.x) Service Pack 2, SQL Server 2017 (14.x) CU 3 et versions ultérieures.

Étendue : globale uniquement.
11047 Applique le délai d’attente par défaut défini par query wait (s) ou la configuration REQUEST_MEMORY_GRANT_TIMEOUT_SEC de Resource Governor aux opérations de génération d’index columnstore. Pour plus d’informations, consultez KB4480641.

S’applique à : SQL Server 2016 (13.x) Service Pack 2 CU 5, SQL Server 2017 (14.x) CU 14 et versions ultérieures.

Étendue : globale uniquement.
11064 Améliore la scalabilité des opérations de chargement des données dans les index columnstore, en optimisant la distribution de la mémoire entre les instructions SELECT et INSERT. Pour plus d’informations sur le chargement de données dans un index columnstore, consultez Index columnstore - Conseils en matière de chargement de données.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Étendue : globale uniquement.
11068 Utilise la valeur configurée indiquant le degré maximal de parallélisme (MAXDOP) du serveur, de la base de données ou de la liste de ressources partagées pour les opérations d’insertion d’index columnstore. Pour plus d’informations sur le remplacement des degrés de parallélisme, consultez le Guide d’architecture de traitement des requêtes.

Important : Cet indicateur de trace est effectif uniquement si l’indicateur de trace 11064 est également activé.

Important : Utilisez cet indicateur de trace quand des chargements de données plus rapides sont préférés au maintien de la qualité de segment columnstore. Par exemple, l’utilisation de cet indicateur de trace lors du chargement de 1 048 577 lignes dans un columnstore peut générer plusieurs rowgroups compressés, si l’opération d’insertion s’exécute en mode parallèle. Sans cet indicateur de trace, l’opération d’insertion produirait un rowgroup compressé.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures.

Étendue : globale uniquement.
11561 Désactive l’authentification Azure Active Directory (Azure AD) pour la réplication.

Remarque : Cet indicateur de trace s’applique à SQL Server 2022 (16.x) CU 6 et versions ultérieures.

Étendue : globale ou de session.
11631 Un ALTER INDEX ... REORGANIZE et la tâche de fusion en arrière-plan nettoient les lignes supprimées d’un groupe de lignes d’index columnstore seulement si un certain seuil de lignes a été supprimé de ce groupe de lignes. Le seuil par défaut est de 10 % de la limite maximale de lignes (1 million), soit 100 000 lignes.

Cet indicateur de trace change le seuil à 10 % du total des lignes actuelles d’un rowgroup dolumnstore. Par exemple, si un groupe de lignes contient 20 000 lignes, le seuil est de 2 000 lignes supprimées avant de pouvoir nettoyer ce groupe de lignes. Pour plus d’informations, consultez KB5000895.

S’applique à : SQL Server 2019 (15.x) CU 9 et versions ultérieures.

Étendue : globale uniquement.
11634 ALTER INDEX ... REORGANIZE et la tâche de fusion en arrière-plan nettoient les lignes supprimées d’un groupe de lignes d’index columnstore seulement si un certain seuil de lignes a été supprimé de ce groupe de lignes. Le seuil par défaut est de 10 % de la limite maximale de lignes (1 million), soit 100 000 lignes.

Cet indicateur de trace change le seuil à 1 % du total des lignes actuelles d’un groupe de lignes columnstore. S’il est activé avec l’indicateur de trace 11631, il est de 1 % du nombre actuel de lignes d’un groupe de lignes, au lieu de 1 % de 1 million de lignes. Pour plus d’informations, consultez KB5000895.

S’applique à : SQL Server 2019 (15.x) CU 9 et versions ultérieures.

Étendue : globale uniquement.
12310 Augmente les limites de contrôle de flux pour le nombre de messages que chaque porte de groupe de disponibilité autorise. Ces limites sont les nouvelles valeurs par défaut dans SQL Server 2022 (16.x) et, par conséquent, l’indicateur de trace n’a aucun effet dans cette version. Pour plus d’informations, consultez Portes de contrôle de flux.

S’applique à : SQL Server 2019 (15.x) CU9, SQL Server 2017 (14.x) CU 18, et SQL Server 2016 (13.x) SP 1 CU.16 et versions ultérieures.

Étendue : globale uniquement.
12324 Résout un problème introduit avec les modifications apportées à la fonctionnalité de liaison pour Azure SQL Managed Instance, qui empêche la synchronisation des groupes de disponibilité lorsque les réplicas s’exécutent sur différentes mises à jour cumulatives. Pour plus d’informations, consultez KB5024276.

S’applique à : SQL Server 2019 (15.x) CU 20 et versions ultérieures.

Étendue : globale uniquement.
12481 Désactive la journalisation des informations d’audit pour les autorisations externes dans le champ external_policy_permission_checked des enregistrements d’audit. Pour plus d’informations, consultez KB 5022375.

S’applique à : SQL Server 2022 (16.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
12502 Désactive les stratégies d’autorisation externes pour les instances SQL Server locales.

S’applique à : SQL Server 2022 (16.x) CU 5 et versions ultérieures.

Étendue : globale uniquement.
12618 Permet au modèle de correction de plan automatique (APC) de la fonctionnalité de réglage automatique d’effectuer plusieurs vérifications consécutives de régression de plan sur le même plan, ce qui permet d’accumuler des statistiques supplémentaires pour l’évaluation par le nouveau modèle. Pour plus d’informations, consultez KB5026717.

S’applique à : SQL Server 2022 (16.x) CU 4 et versions ultérieures.

Étendue : globale uniquement.
12656 Permet au modèle de correction de plan automatique (APC) de la fonctionnalité de réglage automatique d’utiliser une vérification de régression de plan basée sur le temps. Cette vérification se produit cinq minutes après la détection d’une modification du plan, ce qui évite de fausser les vérifications de régression en raison de requêtes s’exécutant rapidement. Cela permet à la correction APC de prendre en compte les exécutions de requêtes susceptibles de durer plus longtemps ou sujettes à un délai d’expiration en raison d’un changement de plan. Pour plus d’informations, consultez KB5026717.

S’applique à : SQL Server 2022 (16.x) CU 4 et versions ultérieures.

Étendue : globale uniquement.
13116 Désactive le correctif pour le bogue 13685819. Utilisez cet indicateur de trace si, après avoir appliqué SQL Server 2016 (13.x) Service Pack 2 CU16, vous rencontrez un problème qui empêche les requêtes DML (insertion/mise à jour/suppression) utilisant des plans parallèles de terminer l’exécution avec des attentes HP_SPOOL_BARRIER.

S’applique à : SQL Server 2016 (13.x) Service Pack 2 CU 16.

Étendue : globale uniquement.
13127 Active des optimisations de critères spéciaux de chaîne supplémentaires.

S’applique à : SQL Server 2019 (15.x) et versions ultérieures. Destiné aux systèmes haut de gamme avec des charges de travail hautes performances.

Étendue : globale ou de session.
13156 Désactive le correctif pour le problème « L’appel UDF avec un grand nombre de réévaluations d’expressions scalaires peut provoquer une erreur de planificateur sans rendement ». Ce correctif d’origine peut parfois entraîner une régression des performances. Pour plus d’informations, consultez KB4538581.

Étendue : globale uniquement.
15025 Désactive l’accès Azure Key Vault requis pour un nouveau fichier journal virtuel, ce qui permet aux charges de travail client à volume élevé de se poursuivre sans interruption. Une fois cet indicateur de trace activé, SQL Server utilise la gestion de clés extensible pour le chiffrement et la génération de clés, et ne contacte pas Azure Key Vault pendant la création du fichier journal virtuel. Pour plus d’informations, consultez Problèmes d’accessibilité de la base de données avec des charges de travail client à volume élevé qui utilisent EKM pour le chiffrement et la génération de clés.

S’applique à : SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) CU 1 et versions ultérieures.

Étendue : globale uniquement.
15096 Désactive les opérations de remplissage (popcnt) avec les jeux d’instructions AVX-512.

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale ou de session.
15097 Active la prise en charge d’AVX-512 pour SQL Server 2022 (16.x) et versions ultérieures.

Important : Nous vous recommandons d’activer la prise en charge d’AVX-512 pour les processeurs suivants :

- Intel Ice Lake et versions ultérieures
- AMD EYPC Genoa et versions ultérieures

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale ou de session.
15212 Désactive les messages du minuteur Service Broker qui font office de notification détaillée sur l’événement de délai d’expiration. Les messages affectés par cet indicateur de trace sont SSBDT: Dialog timer delete during registration dans la séquence de nettoyage de boîte de dialogue Service Broker et SSBDT: Dialog timer delete during dispatch dans la séquence de fermeture de boîte de dialogue Service Broker. Une fois cet indicateur de trace activé, l’impression de ces messages informels est ignorée.

S’applique à : SQL Server 2022 (16.x) et versions ultérieures.

Étendue : globale uniquement.