Indicateur de trace et qui doivent être désactivés et pourquoi

8

Dans SQL Server, il y a tellement d'indicateurs de trace. Pourquoi certains d'entre eux doivent être désactivés. Certains où j'ai vu que l'indicateur de trace 8017 doit être désactivé. Je veux donc savoir quel indicateur de trace doit être désactivé et pourquoi?

Chercheur informatique
la source

Réponses:

7

Tous doivent être désactivés jusqu'à ce que vous sachiez pourquoi ils doivent être mis en œuvre. Maintenant, si vous héritez d'un serveur avec quelques indicateurs de trace activés, ne les désactivez pas uniquement si vous ne savez pas pourquoi ils sont là.

Sur un nouveau serveur, la connaissance d'abord, puis tracez le drapeau. Sur un ancien serveur, laissez tel quel, la connaissance, prenez la décision.

Raadee
la source
10

Le Conseiller de mise à niveau de base de données peut signaler que l'indicateur de trace 8017 doit être désactivé pendant le processus de mise à niveau et réactivé par la suite.

L'indicateur de trace 8017 contrôle si SQL Server crée des planificateurs pour tous les processeurs logiques, y compris ceux qui ne sont pas disponibles pour SQL Server (selon le masque d'affinité).

L'activation de l'indicateur ne crée pas ces planificateurs «hors ligne», ce qui permet d'économiser quelques ressources. Cela signifie également que vous ne pouvez pas ajouter dynamiquement de processeurs pour SQL Server en modifiant le masque d'affinité; vous devez modifier le masque d'affinité, puis redémarrer l'instance.

Si vous ne comprenez pas pourquoi l'indicateur de trace est présent, ne le supprimez pas. Il devrait y avoir une documentation quelque part dans votre organisation pour dire quand et pourquoi elle a été ajoutée (et par qui). Sinon, il y a un processus que vous devriez corriger :)

Paul White 9
la source
2
Sur ma base de données de test 2008 Express, il était activé après l'installation par défaut.
eckes
Ouais, le mien est juste là par défaut (AFAICT) aussi. Où sont les documents expliquant pourquoi il pourrait exister alors que je ne l'ai jamais ajouté explicitement?
binki
2

Pour ajouter plus à ce que Raadee et Paul White (confirment également ce que le commentaire d'eckes a déjà déclaré), TF 8017 est activé par défaut dans toutes les versions de SQL Server Express Edition depuis 2005. C'est probablement un moyen de limiter le nombre de CPU ( sockets et / ou cores ) non pris en charge par l' édition SQL Server .

Testé sur:

  • SQL Server 2014 Express Edition , avec 1 et 2 sockets, l'indicateur de trace est activé
  • SQL Server 2016 Express Edition , avec 1 socket, l'indicateur de trace est activé
  • SQL Server 2016 Standard Edition , l'indicateur de trace est désactivé

Les limites du processeur sont décrites dans divers documents Microsoft, par exemple dans Calculer les limites de capacité par édition de SQL Server .

Sur les ressources tierces, TF 8017 est documenté sur la liste des indicateurs de trace de Steinar Anderson qui, soit dit en passant, renvoie à cette question.

Marcin S.
la source