Mises à jour et options de configuration recommandées pour SQL Server avec des charges de travail hautes performances
Cet article inclut une liste des améliorations des performances et des options de configuration disponibles pour SQL Server 2012 et versions ultérieures.
Version d’origine du produit : SQL Server 2014, SQL Server 2012
Numéro de la base de connaissances d’origine : 2964518
Appliquer les mises à jour recommandées et améliorer les performances de SQL Server 2014 et SQL Server 2012
Cet article décrit les améliorations de performances et les modifications disponibles pour SQL Server versions 2014 et SQL Server 2012 par le biais de différentes mises à jour de produit et options de configuration. Vous pouvez envisager d’appliquer ces mises à jour afin d’améliorer les performances de la instance de SQL Server. Le degré d’amélioration que vous constatez dépend de divers facteurs, notamment le modèle de charge de travail, les points de contention, la disposition du processeur (nombre de groupes de processeurs, sockets, nœuds NUMA, cœurs dans un nœud NUMA) et la quantité de mémoire présente dans le système. SQL Server équipe de support technique a utilisé ces mises à jour et modifications de configuration pour obtenir des gains de performances raisonnables pour les charges de travail client qui utilisaient des systèmes matériels avec plusieurs nœuds NUMA et un grand nombre de processeurs. L’équipe de support continue à mettre à jour cet article avec d’autres mises à jour à l’avenir.
Systèmes haut de gamme Un système haut de gamme a généralement plusieurs sockets, huit cœurs ou plus par socket, et un demi-téraoctet ou plus de mémoire.
Remarque
Dans SQL Server 2016 et versions ultérieures, la plupart des indicateurs de trace mentionnés dans cet article sont le comportement par défaut et vous n’avez pas besoin de les activer dans ces versions.
Les recommandations sont regroupées en trois tables comme suit :
- Le tableau 1 contient les mises à jour et indicateurs de trace les plus fréquemment recommandés pour la scalabilité sur les systèmes haut de gamme.
- Le tableau 2 contient des recommandations et des conseils pour un réglage supplémentaire des performances.
- Le tableau 3 contient des correctifs de scalabilité supplémentaires qui ont été inclus avec une mise à jour cumulative.
Tableau 1. Mises à jour importantes et indicateurs de trace pour les systèmes haut de gamme
Passez en revue le tableau suivant et activez les indicateurs de trace dans la colonne Indicateur de trace après vous être assuré que votre instance de SQL Server répond aux exigences de la colonne Versions applicables et plages de build.
Remarque
La version et la build applicables indiquent la mise à jour spécifique dans laquelle l’indicateur de modification ou de trace a été introduit. Si aucune cu n’est spécifiée, toutes les cu du sp sont incluses.
Non applicable Version et build indiquent la mise à jour spécifique dans laquelle l’indicateur de modification ou de trace est devenu le comportement par défaut. Par conséquent, il suffit d’appliquer cette mise à jour pour obtenir les avantages.
Importante
Lorsque vous activez des correctifs avec des indicateurs de trace dans des environnements Always On, n’oubliez pas que vous devez activer les indicateurs de correctif et de trace sur tous les réplicas qui font partie du groupe de disponibilité.
Scénario et symptôme à prendre en compte | Indicateur de trace | Plages de versions et de build applicables | Versions et plages de build non applicables | Lien article/blog de la Base de connaissances qui fournit plus de détails |
---|---|---|---|---|
|
T8048 |
|
|
|
|
T8079 | SQL Server 2014 SP2 à SP/CU actuel |
|
|
|
T9024 | Package de mise à jour cumulative 3 pour SQL Server 2012 Service Pack 1 vers SP2 SQL Server 2014 RTM |
|
CORRECTIF : Valeur élevée du compteur « attentes d’écriture du journal » sur un instance SQL Server 2012 ou SQL Server 2014 |
Votre instance de SQL Server gère des milliers de réinitialisations de connexion en raison du regroupement de connexions. | T1236 | Package de mise à jour cumulative 9 pour SQL Server 2012 Service Pack 1 vers SP2 Mise à jour cumulative 1 pour SQL Server 2014 |
|
|
|
T1118 |
|
|
Améliorations de la concurrence pour la base de données tempdb NOTE Activez l’indicateur de trace et ajoutez plusieurs fichiers de données pour la base de données tempdb. |
|
T1117 |
|
|
Recommandations pour réduire la contention d’allocation dans SQL Server base de données tempdb |
Les conflits de verrouillage tournant lourds SOS_CACHESTORE ou vos plans sont fréquemment supprimés sur les charges de travail de requête ad hoc. |
T174 |
|
Aucun |
|
|
T8032 |
|
Aucun |
|
Les statistiques existantes ne sont pas fréquemment mises à jour en raison du grand nombre de lignes dans la table. | T2371 |
|
Aucun | |
|
T7471 | SQL Server 2014 SP1 CU6 à SP/CU actuel | Aucun | Amélioration des performances des statistiques de mise à jour avec SQL 2014 & SQL 2016 |
La commande CHECKDB prend beaucoup de temps pour les bases de données volumineuses. |
|
|
Aucun | |
La commande CHECKDB prend beaucoup de temps pour les bases de données volumineuses. | T2566 |
|
Aucun |
|
L’exécution de requêtes d’entrepôt de données simultanées qui prennent beaucoup de temps de RESOURCE_SEMAPHORE_QUERY_COMPILE compilation entraîne des attentes. |
T6498 | Package de mise à jour cumulative 6 pour SQL Server 2014 vers SP1 |
|
|
Vous résolvez des problèmes de performances de requête spécifiques Les correctifs de l’optimiseur sont désactivés par défaut. | T4199 |
|
Aucun | |
Vous rencontrez des performances lentes à l’aide d’opérations de requête avec des types de données spatiales. |
|
|
|
|
|
T8075 |
|
|
CORRECTIF : Erreur de mémoire insuffisante lorsque l’espace d’adressage virtuel du processus de SQL Server est faible en SQL Server |
|
T3449 |
|
|
CORRECTIF : SQL Server création d’une base de données sur un système avec un grand volume de mémoire prend plus de temps que prévu |
Tableau 2. Considérations générales et meilleures pratiques pour améliorer les performances de votre instance de SQL Server
Passez en revue le contenu de l’article de la Base de connaissances/ressource en ligne de la documentation et envisagez d’implémenter les instructions dans la colonne Actions recommandées.
Article de la Base de connaissances/Ressource de la documentation en ligne | Actions recommandées |
---|---|
Configurer l’option de configuration de serveur max degree of parallelism | Utilisez la procédure stockée sp_configure pour apporter des modifications de configuration à Configurer l’option de configuration de serveur de degré maximal de parallélisme pour votre instance de SQL Server conformément à l’article de la Base de connaissances. |
Limites de capacité de calcul par édition de SQL Server | Êdition Entreprise avec licence de licence d’accès client (CAL) serveur + est limité à 20 cœurs par SQL Server instance. Il n’existe aucune limite sous le modèle de licence de serveur core. Envisagez de mettre à niveau votre édition de SQL Server vers la référence SKU appropriée pour tirer parti de toutes les ressources matérielles. |
Performances lentes sur Windows Server lors de l’utilisation du mode de gestion de l’alimentation « équilibré » | Consultez l’article et collaborez avec votre administrateur Windows pour implémenter l’une des solutions indiquées dans la section « Résolution » de l’article. |
Affectez manuellement des nœuds NUMA aux K-groupes. | |
Optimiser pour les charges de travail ad hocPARAMÉTRISATION FORCÉE | Les entrées du cache du plan sont supprimées en raison de la croissance dans d’autres caches ou commis de mémoire. Vous pouvez également rencontrer l’éviction du cache du plan lorsque le cache atteint son nombre maximal d’entrées. En plus de l’indicateur de trace 8032 décrit ci-dessus, envisagez l’option de serveur Optimiser pour les charges de travail ad hoc et également l’option de base de données FORCED PARAMETERIZATION . |
Comment réduire la pagination de la mémoire du pool de mémoires tampons dans SQL ServerConsidérations relatives à la configuration et au dimensionnement de la mémoire mémoire dans SQL Server 2012 et versions ultérieures | Affectez le droit d’utilisateur Activer l’option Verrouiller les pages en mémoire (Windows) au compte de démarrage du service SQL. Consultez Comment activer la fonctionnalité « pages verrouillées » dans SQL Server 2012. Définissez la mémoire maximale du serveur sur environ 90 % de la mémoire physique totale. Assurez-vous que le paramètre Options de configuration de la mémoire du serveur prend en compte la mémoire à partir des nœuds configurés pour utiliser les paramètres de masque d’affinité. |
SQL Server et pages volumineuses expliquées...Options de paramétrage pour SQL Server lors de l’exécution dans des charges de travail hautes performances | Envisagez d’activer TF 834 si vous avez un serveur avec une grande quantité de mémoire, en particulier avec une charge de travail analytique ou d’entreposage de données. Gardez à l’esprit que TF 834 n’est pas recommandé si vous utilisez des index columnstore. |
Description des options « access case activée cache bucket count » et « access case activée cache quota » disponibles dans la procédure stockée sp_configure | Utilisez access case activée cache Server Configuration Options pour configurer ces valeurs conformément aux recommandations de l’article de la Base de connaissances. Les valeurs recommandées pour les systèmes haut de gamme sont les suivantes : « nombre de compartiments de cache case activée d’accès » : 256 « access case activée cache quota » : 1024 |
Indicateurs de requête d’allocation de mémoireALTER WORKLOAD GROUP | Si vous avez de nombreuses requêtes qui épuisent les allocations de mémoire volumineuses, réduisez request_max_memory_grant_percent pour le groupe de charge de travail par défaut dans la configuration du gouverneur de ressources de 25 % à une valeur inférieure. De nouvelles options d’allocation de mémoire de requête sont disponibles (min_grant_percent et max_grant_percent ) dans SQL Server |
Initialisation instantanée d’un fichier | Collaborez avec votre administrateur Windows pour accorder au compte de service SQL Server le droit d’utilisateur « Effectuer des tâches de maintenance en volume » conformément aux informations de la rubrique de la documentation en ligne. |
Considérations relatives aux paramètres « croissance automatique » et « autoshrink » dans SQL Server | Vérifiez les paramètres actuels de votre base de données et assurez-vous qu’ils sont configurés conformément aux recommandations de l’article de la Base de connaissances. |
Points de contrôle de base de données (SQL Server) | Envisagez d’activer des points de contrôle indirects sur les bases de données utilisateur pour optimiser le comportement des E/S dans SQL Server 2012 et 2014. |
CORRECTIF : Synchronisation lente lorsque les disques ont des tailles de secteur différentes pour les fichiers journaux de réplica principal et secondaire dans SQL Server environnements de groupe de disponibilité et de journalisation | Si vous avez un groupe de disponibilité où le journal des transactions sur le réplica principal se trouve sur un disque avec une taille de secteur de 512 octets et que le journal des transactions de l’réplica secondaire se trouve sur un lecteur avec une taille de secteur de 4 Ko, vous pouvez rencontrer un problème où la synchronisation est lente. Dans ce cas, l’activation de TF 1800 doit corriger le problème. Pour plus d’informations, consultez Indicateur de trace 1800. |
Si votre SQL Server n’est pas déjà lié au processeur et qu’une surcharge de 1,5 % à 2 % est négligeable pour vos charges de travail, nous vous recommandons d’activer TF 7412 comme indicateur de trace de démarrage. Cet indicateur permet un profilage léger dans SQL Server 2014 SP2 ou version ultérieure, ce qui vous permet d’effectuer des dépannages de requête en direct dans des environnements de production. |
Tableau 3. Correctifs de performances inclus dans une mise à jour cumulative
Passez en revue la description dans la colonne Symptômes et appliquez les mises à jour requises dans la colonne Mise à jour requise dans les environnements applicables. Vous pouvez consulter l’article de la Base de connaissances pour plus d’informations sur les problèmes respectifs. Ces recommandations ne vous obligent pas à activer des indicateurs de trace supplémentaires en tant que paramètres de démarrage. Il suffit d’appliquer la dernière mise à jour cumulative ou le Dernier Service Pack qui inclut ces correctifs pour bénéficier de l’avantage.
Remarque
Le nom cu dans la colonne Mise à jour requise fournit la première mise à jour cumulative de SQL Server qui résout ce problème. Une mise à jour cumulative contient tous les correctifs logiciels et toutes les mises à jour qui ont été incluses dans la version précédente SQL Server mise à jour. Par conséquent, nous vous recommandons d’installer la dernière mise à jour cumulative afin de résoudre les problèmes.
Remarques importantes
Si toutes les conditions du tableau 1 s’appliquent à vous :
- Conseils pour SQL Server 2014 : Appliquez au moins la mise à jour cumulative 1 pour SQL Server 2014 pour RTM et ajoutez « -T8048 -T9024 -T1236 -T1117 -T1118 » à SQL Server liste des paramètres de démarrage.
- Conseils pour SQL Server 2012 : Appliquez SP2 et ajoutez « -T8048 -T9024 -T1236 -T1117 -T1118 » à SQL Server liste de paramètres de démarrage.
Pour obtenir des informations générales sur l’utilisation des indicateurs de trace, case activée la rubrique DBCC TRACEON - Trace Flags (Transact-SQL) dans SQL Server documentation en ligne.
Vous trouverez plus d’informations sur le nombre de processeurs, la configuration NUMA, et ainsi de suite, dans l’article Afficher le journal des erreurs SQL Server dans SQL Server Management Studio (SSMS).
Pour rechercher la version de SQL Server, case activée les éléments suivants :
Comment déterminer la version et l’édition de SQL Server et de ses composants
References
Comment obtenir le dernier Service Pack pour SQL Server 2012
Où trouver des informations sur les dernières builds SQL Server
SQL Server ressources de la communauté sur les mises à jour importantes pour SQL Server
S’applique à
- SQL Server 2014 Enterprise
- SQL Server 2014 Enterprise Core
- SQL Server 2014 Business Intelligence
- SQL Server 2014 Developer
- SQL Server 2014 Standard
- SQL Server 2014 Web
- SQL Server 2014 Express
- SQL Server Business Intelligence 2012
- SQL Server 2012 Developer
- SQL Server 2012 Enterprise
- SQL Server 2012 Standard
- SQL Server 2012 Web
- SQL Server 2012 Enterprise Core
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour