Sinalizador de rastreamento e quais precisam ser desativados e Por quê

8

No servidor SQL, existem muitos sinalizadores de rastreamento. Por que alguns deles precisam ser desativados. Em alguns lugares onde eu vi esse sinalizador de rastreamento 8017, precisa ser desativado. Então, eu quero saber qual sinalizador de rastreamento precisa ser desativado e por quê?

Pesquisador de TI
fonte

Respostas:

7

Tudo deve ser desativado até você saber por que eles devem ser implementados. Agora, se você herdar um servidor com alguns sinalizadores de rastreio ativados, não os desative se não souber por que eles estão lá.

Em um novo servidor, primeiro o conhecimento e, em seguida, rastreie o sinalizador. Em um servidor antigo, deixe como está, conhecimento, tome uma decisão.

Raadee
fonte
10

O Orientador de atualização do banco de dados pode relatar que o sinalizador de rastreamento 8017 precisa ser desativado durante o processo de atualização e reativado posteriormente.

O sinalizador de rastreamento 8017 controla se o SQL Server cria agendadores para todos os processadores lógicos, incluindo aqueles que não estão disponíveis para uso do SQL Server (de acordo com a máscara de afinidade).

A ativação do sinalizador não cria esses agendadores 'offline', economizando alguns recursos. Isso também significa que você não pode adicionar processadores dinamicamente ao SQL Server alterando a máscara de afinidade; você precisaria alterar a máscara de afinidade e, em seguida, reiniciar a instância.

Se você não entender por que o sinalizador de rastreamento está presente, não o remova. Deve haver alguma documentação em algum lugar da sua organização para dizer quando e por que foi adicionada (e por quem). Se não, bem, há um processo que você deve corrigir :)

Paul White 9
fonte
2
No meu banco de dados de teste 2008 Express, ele foi ativado após a instalação por padrão.
Eckes
Sim, o meu também está lá por padrão (AFAICT) também. Onde estão os documentos explicando por que ele pode existir quando eu nunca o adicionei explicitamente?
binki 02/09/19
2

Para adicionar mais ao que Raadee e Paul White (também confirmam o que o comentário de eckes já declarou), o TF 8017 é ativado por padrão em todas as versões do SQL Server Express Edition desde 2005. É provavelmente uma maneira de limitar o número de CPUs ( soquetes e / ou núcleos) ) não suportado pela edição do SQL Server .

Testado em:

  • SQL Server 2014 Express Edition , com 1 e 2 soquetes, o sinalizador de rastreamento está ativado
  • SQL Server 2016 Express Edition , com 1 soquete, o sinalizador de rastreamento está ativado
  • SQL Server 2016 Standard Edition , o sinalizador de rastreamento está desativado

Os limites de CPU são descritos em vários documentos da Microsoft, por exemplo, em Computar limites de capacidade por edição do SQL Server .

Em recursos de terceiros, o TF 8017 está documentado na lista Trace Flag de Steinar Anderson, que, a propósito, está vinculada a esta pergunta.

Marcin S.
fonte