TRACE FLAGS DO SQL SERVER – prt-01

Lista completa de trace flags do Microsoft SQL Server – (531 trace flags)

 

Quebrei esse artigo em várias partes, pois, a lista é bem extensa.
No final da sequência de artigos de trace flags colocarei as que acredito ser as mais importantes.

O que são as trace flags do Microsoft SQL Server?

As trace flags alteram o comportamento de várias funções do SQL Server. Documentação oficial

LEMBRETE: É preciso ter muito cuidado e ser cauteloso com as trace flags. Realize testes em ambiente de teste e em caso de dúvidas sobre a mudança, consulte profissionais da área.

Como ativar e desativar?

  • Com os comandos DBCC TRACEON e DBCC TRACEOFF.
  • Usar a opção -T na configuração de inicialização do serviço do SQL Server. A opção -T deve ser usada com “T” em maiúsculo para ativar uma trace flag. O “t” em minúsculo também é aceito, mas, para outros fins, mais utilizados por engenheiros de suporte da Microsoft.
  • Também é possível usar os hits QUERYTRACEON em consultas: <querytraceon_hint :: = {QUERYTRACEON trace_flag_number}>

 Verificando se existe Trace Flags ativadas.

Podemos utilizar o comando DBCC TRACESTATUS

O exemplo a seguir exibe o status de todos os sinalizadores de rastreamento atualmente habilitados globalmente:

DBCC TRACESTATUS ( - 1 );
GO

O exemplo a seguir exibe o status das trace flags 3212 e 2509:

DBCC TRACESTATUS ( 3212, 2509);
GO

O exemplo a seguir mostra se a trace flag 1224 está habilitado globalmente:

DBCC TRACESTATUS ( 1224, - 1 );
GO

O exemplo a seguir lista todas trace flags que estão habilitados para a sessão atual:

DBCC TRACESTATUS ();
GO

 

Trace Flags recomendadas

  • Trace Flag 272 (para SQL Server 2012)
  • Trace Flag 1118 (para versões <SQL Server 2016)
  • Trace Flag 3023 (para versões <SQL Server 2014)
  • Trace Flag 3226 (para todas as versões)

O Trace Flag 272 evita a diferença de identidade após a reinicialização da instância do SQL Server 2012, crítica para colunas com identidade e tipos de dados smallint.

O Trace Flag 1118 verifica a contenção que pode existir em um determinado tipo de página em um banco de dados, a página SGAM. Pode usar benefícios para sistemas que usam tempdb em excesso. No SQL Server 2016, você altera esse comportamento usando a opção de banco de dados MIXED_PAGE_ALLOCATION e não há necessidade de TF 1118.

O Trace Flag 3023 é usado para habilitar a opção CHECKSUM, por padrão, para todos os backups realizados em uma instância. Com esta opção habilitada, as somas de verificação da página são validadas durante um backup e uma soma de verificação para todo o backup é gerada. Começando no SQL Server 2014, esta opção pode ser definida em toda a instância sp_configure ('backup checksum default').

 

Lista de rastreamento

Trace Flag: -1

Função: define trace flags para todas as conexões de clientes, em vez de uma conexão somente. Com as trace flags habilitadas usando a opção de linha de comando -TT aplicam-se automaticamente a todas as conexões. Essa trace flag é usado somente ao definir sinalizadores de rastreamento usando DBCC TRACEON e DBCC TRACEOFF.

Trace Flag: 101

Função: Envia para o log saída de verificação para solução de problemas de performance de replicação de Merge. Link: https://support.microsoft.com/en-us/help/312292

Trace Flag: 102

Função: Se você tiver que escrever estatísticas na tabela Servidor de distribuição> ..mermerge_history , use o sinalizador de rastreamento -T 102.  Link: http://support.microsoft.com/kb/2892633

 

Trace Flag: 106

Função: Isso permite que você veja as mensagens que são enviadas para e do Editor, se você estiver usando o
Link de Sincronização na Web : http://technet.microsoft.com/en-us/library/ms151872(v=sql.105) .aspx

Trace Flag: 107

Função: SQL 6.5 / 7/8 – Interpreta números com um ponto decimal como flutuante em vez de decimal.

Trace Flag: 110

Função: SQL 6.5 – Desliga as características de seleção ANSI.

Trace Flag: 120

Função: CORRECÇÃO: mensagem de erro quando você agende um trabalho do Agente de mesclagem de replicação para ser executado depois de instalar o SQL Server 2000 Service Pack 4: “O processo não pode enumerar as alterações no” Assinante “.

Trace Flag: 139

Força a semântica de conversão correta no escopo de comandos de verificação DBCC como DBCC CHECKDB , DBCC CHECKTABLE e DBCC CHECKCONSTRAINTS , ao analisar a precisão aprimorada e a lógica de conversão introduzidas com o nível de compatibilidade 130 para tipos de dados específicos, em um banco de dados com menor nível de compatibilidade. Para obter mais informações, consulte este artigo do suporte da Microsoft .

Nota: Esta trace flag se aplica ao SQL Server 2016 RTM CU3, SQL Server 2016 SP1 e versões superiores.

AVISO: A trace flag  139 não deve ser ativado continuamente em um ambiente de produção e deve ser usado com o único propósito de realizar verificações de validação de banco de dados descritas neste Artigo de suporte da Microsoft . Deve ser imediatamente desativado depois que as verificações de validação estiverem concluídas.

Âmbito : apenas global

Trace Flag: 144

Função: Forçar a contração do lado do servidor. Para aplicativos legados em que a mudança para o código do lado do cliente não é uma opção e quando a aplicação tem consultas inadequadamente parametrizadas, essa sinalização de rastreamento força a contração do lado do servidor.
Link: http://blogs.msdn.microsoft.com/sqlprogrammability/2007/01/13/6-0-best-programming-practices

Trace Flag: 146

Função: considere usar quando replayar contra o SQL 8.0, para evitar uma tentativa de configurar uma conexão criptografia.
Link: Nenhum

Sinalizador de rastreamento: 168

Função: Bugfix em ORDER BY
Link: http://support.microsoft.com/kb/926292

Sinalizador de rastreamento: 174

Função: Aumenta a contagem da bucket do plano de cache do banco de dados SQL Server de 40,009 para 160,001 em sistemas de 64 bits.
Nota: Certifique-se de testar completamente esta opção, antes de rolar para um ambiente de produção.

 Link: https://support.microsoft.com/en-us/help/3026083/fix-sos-cachestore-spinlock-contention-on-ad-hoc-sql-server-plan-cache
Escopo: apenas global

Trace Flag: 176

Função: permite uma correção para endereçar erros ao reconstruir partições on-line para tabelas que contêm uma coluna de particionamento calculada.
Link: https://support.microsoft.com/en-us/help/3213683/fix-unable-to-rebuild-the-partition-online-for-a-table-that-contains-a
Âmbito: global ou sessão

Trace Flag: 204

Função: SQL 6.5 – Comutação de compatibilidade que habilita o comportamento padrão não-ansi. Por exemplo, anteriormente o servidor SQL ignorou os espaços em branco que se seguiram na instrução similar e as consultas permitidas que continham funções agregadas para ter itens na cláusula group by que não estavam na lista de seleção.
Link: https://support.microsoft.com/en-us/help/153096/fix-sql-server-6.5-service-pack-1-fixlist

Trace Flag: 205

Função: Relatórios para o registro de erros quando um procedimento armazenado dependente de estatísticas está sendo recompilado como resultado de estatísticas de atualização automática.
Link: https://support.microsoft.com/en-us/kb/195565
Link: Docs Trace Flags
Escopo: somente global

Trace Flag: 206

Função: SQL 6.5 – Fornece compatibilidade com versões anteriores para a declaração de usuário definida. KB 160732

Trace Flag: 208

Função: SET IDENTIFICADOR DE QUOTAS ON

Trace Flag: 210

Função: SQL 9 – Erro ao executar uma consulta em uma vista: “Ocorreu um erro ao executar o lote”
Link: https://support.microsoft.com/en-us/kb/945892

Trace Flag: 220

Função: “CORRECÇÃO: Mensagem de erro:” Informações de coluna de chave insuficientes para atualizar “Ocorre no SQL Server 2000 SP3”

Trace Flag: 221

Função: “CORRECÇÃO: a consulta é executada mais devagar do que você esperava quando você tenta analisar uma consulta no SQL Server 2000”

Trace Flag: 222

Função: “FIX: cada consulta leva muito tempo para compilar quando você executa uma única consulta ou quando você executa várias consultas simultâneas no SQL Server 2000”

Trace Flag: 237

Função: informa o SQL Server para usar sub-consultas correlacionadas no modo de compatibilidade com versões anteriores não-ANSI

Trace Flag: 242

Função: Fornece compatibilidade com versões anteriores para subconsultas correlacionadas onde os resultados padrão não-ANSI são desejados

Trace Flag: 243

Função: fornece compatibilidade com versões anteriores para o comportamento de nulidade. Quando configurado, o SQL Server tem o mesmo comportamento de violação de nulidade que o de um ver 4.2: O processamento de todo o lote é encerrado se o erro de nulidade (inserindo NULL em um campo NOT NULL) pode ser detectado no tempo de compilação; O processamento da linha ofensiva é ignorado, mas o comando continua se a violação de nulidade for detectada no tempo de execução. Comportamento do SQL Server agora é mais consistente porque as verificações de nulidade são feitas no tempo de execução e uma violação de nulidade resulta no término do comando e no lote ou processo de transação continuando.

Trace Flag: 244

Função: desativa a verificação de violações de restrições provisórias permitidas. Por padrão, o SQL Server verifica e permite violações de restrições provisórias. Uma violação de restrição provisória é causada por uma alteração que remove a violação de forma que a restrição seja atendida, tudo dentro de uma única declaração e transação. O SQL Server verifica as violações de restrição provisória para instruções DELETE de autenticação, INSERT e demonstrações UPDATE de várias linhas. Esta verificação exige mais tabelas de trabalho. Com este sinalizador de rastreamento, você pode desativar violações de restrições provisórias, exigindo assim menos tabelas de trabalho.

Trace Flag: 246

Função: as colunas Derived ou NULL devem ser explicitamente chamadas em uma … INTO ou criar uma declaração de visualização quando não for feita, eles levantam um erro. Esta flag evita isso.

Trace Flag: 253

Função: impede planos de consulta ad hoc para permanecer no cache
Link: http://www.sqlservercentral.com/Forums/Topic837613-146-1.aspx

Trace Flag: 257

Função: invocará um algoritmo de impressão na saída XML antes de retorná-lo para tornar o resultado XML mais legível

Trace Flag:  260

Função: imprime informações de versão sobre bibliotecas de vínculo dinâmico de procedimento armazenado estendido (DLLs). Para obter mais informações sobre GetXpVersion (), consulte Criando procedimentos estendidos estendidos .
Link: http://msdn.microsoft.com/en-us/library/ms164627.aspx
Link: Docs Trace Flags
Âmbito: global ou sessão

Trace Flag: 262

Função: SQL 7 – Os espaços de linha não são mais truncados de strings literais nas instruções CASE

Trace Flag: 272

Nota: Crítico apenas para o SQL Server 2012 Função: Desativando o cache de identidade. Ele evita a diferença de identidade após a reinicialização da instância do SQL Server 2012, crítica para colunas com identidade e tipos de dados smallint.
Link: http://www.big.info/2013/01/how-to-solve-sql-server-2012-identity.html
Link: https://connect.microsoft.com/SQLServer/feedback/details/739013 / failover-or-restart-results-in-reseed-of-identity
Link: https://dbafromthecold.com/2017/05/24/disabling-the-identity-cache-in-sql-server-2017/

Trace Flag: 274

Função: “CORRECÇÃO: mensagem de erro quando você insere uma nova linha em uma exibição no SQL Server 2005: Não é possível inserir o valor explícito da coluna de identidade na tabela quando IDENTITY_INSERT está configurado para OFF”

Trace Flag: 302

Função: Índice de saída Informações de seleção
Link: http://www.databasejournal.com/features/mssql/article.php/1443351/SQL-Server-65-Some-Useful-Trace-Flags.htm

Trace Flag: 310

Função: saídas informações sobre a ordem de junção real
Link: http://www.databasejournal.com/features/mssql/article.php/1443351/SQL-Server-65-Some-Useful-Trace-Flags.htm

Trace Flag: 320

Função: desativa as heurísticas de ordem de junção usadas nas junções ANSI. Para ver as heurísticas de ordem de junção, use a bandeira 310. O SQL Server usa heurísticas de ordem de junção para reduzir as permutações ao usar a melhor ordem de junção.

Trace Flag:  325

Função: imprime informações sobre o custo de usar um índice não agrupado ou um tipo para processar uma cláusula ORDER BY .

Trace Flag: 326

Função: imprime informações sobre custos de custos estimados e reais. Instrui o servidor a usar a média aritmética ao calcular a densidade ao invés de uma média ponderada geométrica ao atualizar as estatísticas. Útil para construir melhores estatísticas quando um índice se inclinar na coluna principal. Use apenas para atualizar as estatísticas de uma tabela / índice com dados desconhecidos.

Trace Flag: 330

Função: Permite a saída completa ao usar a opção SET SHOWPLAN_ALL, que fornece informações detalhadas sobre associações.

Trace Flag: 342

Função: desactiva o custo das junções de pseudo-fusão, reduzindo significativamente o tempo gasto na análise para determinados tipos de junções grandes e de várias tabelas. Também é possível usar SET FORCEPLAN ON para desativar o cálculo de custos das junções de mesclagem porque a consulta é forçada a usar a ordem especificada na cláusula FROM.

Trace Flag: 345

Função: altera a lógica de seleção de ordem de junção no SQL Server 6.5
Link: http://www.databasejournal.com/features/mssql/article.php/1443351/SQL-Server-65-Some-Useful-Trace-Flags.htm

Trace Flag:  445

Função: Imprime a mensagem “compilação emitida” no registro de erros para cada declaração compilada, quando usada em conjunto com 3605

Trace Flag: 506

Função: Aplica padrões SQL-92 em relação a valores nulos para comparações entre variáveis ​​e parâmetros. Qualquer comparação de variáveis ​​e parâmetros que contenham um NULL sempre resulta em um NULL.

Sinalizador de rastreamento: 610

Função: controla inserções minimamente logadas em tabelas indexadas.
Link: http://msdn.microsoft.com/en-us/library/dd425070%28v=SQL.100%29.aspx
Link: https://www.pythian.com/blog/minimally-logged-operations-data -loads /
Link: https://msdn.microsoft.com/library/dd425070.aspx
Link: Docs Trace Flags
Link: https://orderbyselectnull.com/2017/07/10/trace-flag-610-and-sql -server-2016 /
Escopo: global ou sessão

Trace Flag:  611

Função: SQL 9 – Quando ativada, cada escalonamento de trava é gravado no log de erros juntamente com o número do identificador do SQL Server. Aaron confirmou que isso ainda funciona no SQL 2014. Informações de saída do formulário:  “Escalated locks – Reason: LOCK_THRESHOLD, Mode: S, Granularity: TABLE, Table: 222623836, HoBt: 150:256, HoBt Lock Count: 6248, Escalated Lock Count: 6249, Line Number: 1, Start Offset: 0, SQL Statement: select count(*) from dbo.BigTable”

Trace Flag: 617

Função: SQL 9 – Quando ativada, cada escalonamento de trava é gravado no log de erros juntamente com o número do identificador do SQL Server. Enquanto não houver pedidos de bloqueio SCH_M em espera na ‘lock wait list’, a ‘lock wait list’ será ignorada por instruções emitidas no nível de isolamento de transação de leitura não confirmado. Se houver uma solicitação de bloqueio SCH_M na “lock wait list”, uma consulta no nível de isolamento de transação de leitura não comprometida não irá ignorar a ‘lock wait list’, mas a solicitação de bloqueio SCH_S entrará na ‘lock wait list’. Por trás do bloqueio SCH_M esperando na mesma lista. Como resultado, a concessão do pedido SCH_S para tal consulta depende da concessão e liberação da solicitação de bloqueio SCH_M, que entram na “lock wait list” anteriormente.
Ligação:https://blogs.msdn.microsoft.com/saponsqlserver/2014/01/17/new-functionality-in-sql-server-2014-part-3-low-priority-wait/

Trace Flag:  634

Função: desativa a tarefa de compactação columnstore de background. O SQL Server executa periodicamente a tarefa de background que comprime os grupos de linhas do índice de armazenamento de colunas com dados não compactados, um desses grupos de linhas ao mesmo tempo. A compressão do Columnstore melhora o desempenho da consulta, mas também consome os recursos do sistema. Você pode controlar o tempo da compressão do columnstore manualmente, desativando a tarefa de compactação de background com o sinalizador de rastreamento 634 e, em seguida, invocando explicitamente ALTER INDEX REORGANIZE ou ALTER INDEX REBUILD no memento que você escolher.
Link: Niko Neugebauer Columnstore Indexes – parte 35
Link: Docs Trace Flags
Âmbito: apenas global

Trace Flag: 646

Função: serve para obter informações detalhadas sobre o qual o Columnstore foi eliminado pelo Query Optimiser diretamente no log de erros.
Link: Niko Neugebauer Columnstore Indexes – parte 35
Link: http://www.sqlskills.com/blogs/joe/exploring-columnstore-index-metadata-segment-distribution-and-elimination-behaviors

Trace Flag:  647

Função: evita uma verificação de dados do novo-em-SQL 2012 (feita ao adicionar uma coluna a uma tabela) que pode fazer com que ALTER TABLE … ADD operações demorem muito tempo. O KB possui uma consulta útil para determinar o tamanho da linha para uma tabela.
Link: https://support.microsoft.com/en-us/help/2986423/fix-it-takes-a-long-time-to-add-new-columns-toa-a-table-when-the- tamanho da linha excede o tamanho máximo permitido

Trace Flag:  652

Função: Desativar varreduras de pré-busca de página
Link: KB920093
Link: Docs Trace Flags
Escopo: somente global

Trace Flag: 653

Função: Desativa a leitura para a conexão atual
Link: None

Trace Flag:  661

Função: desativa o processo de remoção de gravação fantasma.
Link: KB920093
Link: Docs Trace Flags
Âmbito: apenas global

Trace Flag: 662

Função: imprime informações detalhadas sobre o trabalho feito pela tarefa de limpeza de fantasmas quando ele é executado em seguida. Use o TF 3605 para ver a saída no error log.
link de erros : http://blogs.msdn.com/b/sqljourney/archive/2012/07/28/-in-depth-look-at-ghost-records-in- sql-server.aspx

Trace Flag: 669

Função: “… impede consultas de usuários de filas de solicitações para o processo de limpeza de fantasmas”. Esta bandeira é uma solução alternativa para despejos de pilha que ocorrem logo após a inicialização do SQL Server, onde as consultas do usuário (as páginas da fila para a limpeza de fantasmas) estavam sendo executadas tão rapidamente após a inicialização do SQL que eles estavam fazendo filas de páginas antes que o processo de limpeza de fantasmas realmente tivesse sido inicializado.
Link: https://support.microsoft.com/en-us/help/3027860/error-17066-or-17310-during-sql-server-startup

Trace Flag: 683

Função: De acordo com o KB, usado para solucionar um bug no SQL 2000 SP3, retornando ao comportamento de varredura paralela pré-SP3 em consultas paralelas.

Trace Flag: 692

Função: Desativa as inserções rápidas enquanto o volume carrega dados no heap ou no índice agrupado. Iniciando o SQL Server 2016, as inserções rápidas são habilitadas por padrão, alavancando o log mínimo, quando o banco de dados está em modelo de recuperação simple ou full para otimizar o desempenho da inserção para os registros inseridos em novas páginas. Com inserções rápidas, cada lote de carga maior adquiri nova (s) extensão (s) ignorando a pesquisa de alocação para a extensão existente com o espaço livre disponível para otimizar o desempenho da inserção. Com inserções rápidas, as cargas a granel com pequenos tamanhos de lote podem levar ao aumento do espaço não utilizado consumido pelos objetos, portanto, é recomendável usar o tamanho do lote para cada lote para preencher a extensão completamente. Se o aumento do tamanho do lote não for viável, esse sinalizador de rastreamento pode ajudar a reduzir o espaço não utilizado reservado à custa do desempenho.
Nota: Este sinalizador de rastreamento se aplica ao SQL Server 2016 RTM e a versões mais altas. Link: https://blogs.msdn.microsoft.com/sql_server_team/sql-server-2016-minimal-logging-and-impact-of-the-batchsize-in-bulk-load-operations/
Escopo: global ou sessão

Trace Flag: 698

Função: SQL 9 – O desempenho das operações INSERT contra uma tabela com uma coluna de identidade pode ser lento quando comparado ao SQL 8
Link: None

Trace Flag: 699

Função: Desativar o log de transações para todo o servidor de dados SQL
Link: Nenhum

Trace Flag: 670, 671

Função: Desativa a desalocação diferida. Mas observe o comentário de Paul White na postagem! A flag # pode ser atualizada em 671.
Link: https://blogs.msdn.microsoft.com/psssql/2009/11/17/how-it-works-controlling-sql-server-memory-dumps/

Trace Flag: 715

Função: habilita o bloqueio da tabela para operações de carga em massa em uma pilha sem índices não agrupados. Quando este sinalizador de rastreamento está habilitado, as operações de carga em massa adquirem bloqueios de atualização a granel (BU) quando copiar dados em massa em uma tabela. Os bloqueios de atualização em massa (BU) permitem vários segmentos para carregar dados em massa simultaneamente na mesma tabela, enquanto evitam que outros processos que não sejam dados de carregamento em massa acessem a tabela. O comportamento é semelhante a quando o usuário especifica explicitamente a dica do TABLOCK ao executar o carregamento em massa, ou quando o bloqueio da tabela sp_tableoption na carga a granel está habilitado para uma determinada tabela. No entanto, quando esse sinalizador de rastreamento é habilitado, esse comportamento torna-se padrão sem qualquer consulta ou alterações no banco de dados.
Link: Docs Trace Flags
Âmbito: global ou sessão

Trace Flag:  806

Função: Ativar a funcionalidade Auditoria da página, para verificar a validade da página
Link: http://technet.microsoft.com/en-au/library/cc917726.aspx
Link: http://www.sqlskills.com/blogs/paul/how -to-tell-if-the-io-subsystem-is-causante-corruptions

Trace Flag:  809

Função: SQL 8 – Limita a quantidade de atividade de Lazy write
Link: Nenhum

Trace Flag: 815

Função: SQL 8/9 – Permite a execução do latch. O SQL Server 8 (com o service pack 4) e o SQL Server 9 podem executar a execução do latch para as páginas de dados encontradas no cache do pool de buffer. A aplicação do bloqueio muda o estado da proteção da memória virtual enquanto o estado da página do banco de dados muda de “limpar” para “sujo” (o “sujo” significa modificado através da operação INSERT, UPDATE ou DELETE). Se uma tentativa for feita para modificar uma página de dados enquanto a execução do latch estiver configurada, ela causa uma exceção e cria um mini-despejo no diretório LOG da instalação do SQL Server. O suporte da Microsoft pode examinar o conteúdo desse mini-despejo para determinar a causa da exceção. Para modificar a página de dados, a conexão deve primeiro adquirir uma trava de modificação. Uma vez que a trava de modificação de dados é adquirida, a proteção da página é alterada para leitura-escrita.
Link: https://technet.microsoft.com/en-us/library/cc966500.aspx
Link: https://blogs.msdn.microsoft.com/psssql/2012/11/12/how-can-reference-counting -be-a-leading-memory-scribbler-cause

Trace Flag: 818

Função: Ligue o ringbuffer para armazenar informações sobre as operações de gravação do IO. Usado para solucionar problemas de IO
Link: http://support.microsoft.com/kb/826433
Link: https://technet.microsoft.com/en-us/library/cc966500.aspx
Link: https://support.microsoft .com / en-us / help / 828339 / error-message-823-may-indic-hardware-problems-or-system-problems-in-sql-server

Trace Flag: 822

Função: uma solução alternativa para o SQL 2000 descarregar a memória da máquina
Link: Nenhum

Trace Flag: 825

Função: no SQL 2000, habilita o suporte ao pool de buffer para NUMA. TF 888 deve ser usado.
Link: Nenhum

Trace Flag: 828

Função: SQL 8 – Quando o ponto de verificação habilitado ignora o alvo do intervalo de recuperação e mantém uma E / S estável, de outra forma, ele usa a configuração do intervalo de recuperação como um alvo para o período de tempo que o ponto de verificação usará
Link: https://support.microsoft.com/en -gb / kb / 906121 Link: https://blogs.msdn.microsoft.com/psssql/2008/04/11/how-it-works-sql-server-checkpoint-flushcache-outstanding-io-target/

Trace Flag: 830

Função: SQL 9 – Desabilita o relatório de erros de Drift da CPU no log de erros do SQL Server, como o SQL Server encontrou 2 ocorrências de solicitações de E / S levando mais de 15 segundos para completar
Link: https://support.microsoft.com / en-us / kb / 897284
Link: https://technet.microsoft.com/en-us/library/aa175396(v=SQL.80).aspx

Trace Flag: 831

Função: Proteja páginas inalteradas no pool de buffer para capturar corrupções de memória

Trace Flag: 834

Função: usa alocações de grandes páginas do Microsoft Windows para o pool de buffer.
Nota: Se você estiver usando o recurso de índice Columnstore do SQL Server 2012 para o SQL Server 2016, não é recomendado ativar o sinalizador de rastreamento 834.
Link: https://support.microsoft.com/en-us/kb/920093
Link: https://support.microsoft.com/en-us/kb/3210239
Link: Docs Trace Flags
Scope: global only

Trace Flag: 835

Função: SQL 9/10 – No SQL Server de 64 bits, ele se desliga Bloquear páginas na memória
Link: Nenhum

Trace Flag: 836

Função: use a opção de máximo de memória do servidor para o pool de buffer
Link: KB920093
Link: https://blogs.msdn.microsoft.com/psssql/2012/12/11/how-it-works-sql-server-32-bit -pael-on-sql-2005-2008-e-2008-r2-não-usando-como-muito-ram-como-esperado /

Trace Flag: 839

Função: (aparentemente) força o SQL Server a processar toda a memória NUMA como “flat”, como se fosse SMP.
Link: https://blogs.msdn.microsoft.com/psssql/2010/04/02/how-it-works-soft-numa-io-completion-thread-lazy-writer-workers-and-memory-nodes

Trace Flag: 840

Função: SQL 9 – Quando o rastreamento é ativado, o SQL Server pode executar maiores leituras de E / S para preencher o pool de buffer quando o SQL Server começa a preencher o pool de buffer mais rápido. Além disso, a maior extensão de E / S lê melhora a compilação de consulta inicial e o tempo de resposta quando o SQL Server é iniciado.
Link: https://blogs.msdn.microsoft.com/ialonso/2011/12/09/the-read-ahead-that-doesnt-count-as-read-ahead

Trace Flag: 842

Função: Use sys.dm_os_memory_node_access_stats para verificar a memória local ou estrangeira sob configurações NUMA depois de ativar esta flag
Link: None

Trace Flag: 845

Função: Ativar páginas de bloqueio na memória no
link Standard Edition : https://support.microsoft.com/en-gb/kb/970070
Link: https://support.microsoft.com/en-us/help/2708594/fix – alocações de página fechada – são-habilitadas-sem-qualquer-aviso-depois-você-atualização para sql-server-2012

Trace Flag: 851

Função: De acordo com a conversa PASS 2014 de Bob Ward no SQL Server IO, “desabilite [s] BPE mesmo que seja ativado via ALTER SERVER”
Link: None

Trace Flag: 888

Função: permite o suporte para páginas bloqueadas para o SQL 2000
Link: None

Trace Flag: 902

Função: Ignora a execução do script de atualização do banco de dados ao instalar uma Atualização Cumulativa ou um Pacote de Serviço. Se você encontrar um erro durante o modo de atualização de script, é recomendável entrar em contato com o Serviço de Atendimento ao Cliente e Suporte Microsoft (CSS) para orientação adicional.
Aviso: Este sinalizador de rastreamento é destinado a solução de problemas de atualizações falhadas durante o modo de atualização de script e não é suportado para executá-lo continuamente em um ambiente de produção. Os scripts de atualização de banco de dados precisam ser executados com sucesso para uma instalação completa de Atualizações Cumulativas e Pacotes de Serviços. Não fazer isso pode causar problemas inesperados com sua instância do SQL Server. 
Link: https://support.microsoft.com/pt-br/kb/2163980
Link: Docs Trace Flags
Link:https://blogs.msdn.microsoft.com/luti/2017/05/17/sql-server-offline-after-applying-service-pack/
Escopo: somente global

Trace Flag: 916

Função: O artigo KB faz referência ao sinalizador no contexto de ver um
link de despejo do Profiler : Nenhum

Trace Flag: 1106

Função: SQL 9 – O espaço usado no tempdb aumenta continuamente quando você executa uma consulta que cria objetos internos no tempdb
Link: https://support.microsoft.com/en-gb/kb/947204
Link: https: //blogs.msdn .microsoft.com / arvindsh / 2014/02/24 / tracking-tempdb-internal-object-space-use-in-sql-2012

Trace Flag:  1117

Função: Quando um arquivo no grupo de arquivos atende ao limite de crescimento automático, todos os arquivos no grupo de arquivos crescem.
Nota: Começando com o SQL Server 2016, este comportamento é controlado pela opção AUTOGROW_SINGLE_FILE e AUTOGROW_ALL_FILES de ALTER DATABASE e o sinalizador de rastreamento 1117 não tem nenhum efeito. Para obter mais informações, consulte ALTER DATABASE File and Filegroup Options (Transact-SQL). 
Link: https://www.littlekendra.com/2017/01/03/parallelism-and-tempdb-data-file-usage-in-sql-server/
Link: SQL Server 2016: Obtendo o tempdb um pouco mais correto
Link: Docs Trace Flags
Link: http://www.sqlskills.com/blogs/paul/tempdb-configuration-survey-results-and-advice
Link:https://blogs.msdn.microsoft.com/ialonso/2011/12/01/attempt-to-grow-all-files-in-one-filegroup-and-not-just-the-one-next-in- the-autogrowth-chain-using-trace-flag-1117
Link: http://sql-articles.com/articles/general/day-6trace-flag-1117-auto-grow-equally-in-all-data-file
Link: http://www.ryanjadams.com/2017/05/trace-flag-1117-growth-contention/
Âmbito: apenas global

Trace Flag: 1118

Função: remove a maioria das alocações de página única no servidor, reduzindo a contenção na página do SGAM. Quando um novo objeto é criado, por padrão, as primeiras oito páginas são alocadas de diferentes extensões (extensões misturadas). Depois, quando são necessárias mais páginas, essas são alocadas da mesma extensão (extensão uniforme). A página SGAM é usada para rastrear essas extensões misturadas, portanto, pode rapidamente se tornar um gargalo quando ocorrem várias alocações de páginas misturadas. Este sinalizador de rastreamento aloca todas as oito páginas da mesma extensão ao criar novos objetos, minimizando a necessidade de digitalizar a página SGAM.
Nota: Começando com o SQL Server 2016, esse comportamento é controlado pela opção SET MIXED_PAGE_ALLOCATION de ALTER DATABASE e o sinalizador de rastreamento 1118 não tem nenhum efeito. Para obter mais informações, consulte as opções de ALTER DATABASE SET (Transact-SQL).
Link: http://blogs.msdn.com/b/psssql/archive/2008/12/17/sql-server-2005-and-2008-trace-flag-1118-t1118-usage.aspx
Link: http: / /www.sqlskills.com/blogs/paul/misconceptions-around-tf-1118/
Link: https://support.microsoft.com/en-us/kb/328551
Link: SQL Server 2016: Obtendo o tempdb um pouco mais certo
Link: Docs Trace Flags
Link: https://chrisadkin.org/2015/04/14/well-known-and-not-so-well-known-sql-server-tuning-knobs-and-switches
Âmbito: apenas global

Trace Flag: 1119

Função: Desliga a alocação de extensão mista (semelhante a 1118?)
Link: lista TECHNET de bandejas de rastreamento do servidor SQL

Trace Flag: 1124

Função: Desconhecido. Foi supostamente encontrado ativado em algumas instâncias do SQL Server que executam o Dynamics AX. Também rumores de serem inválidos nas compilações públicas do SQL Server

Trace Flag: 1140

Função: uma solução para um erro no SQL 2005 SP2, SP3 e SQL 2008, onde as alocações de mixed-page escalam continuamente, devido a uma mudança na forma como as alocações de mixed-page são feitas.

Trace Flag: 1165

Função: Esta apresentação de Bob Ward diz que este TF produz os #ss recalculadas (cada 8192 alocações) para o algoritmo de preenchimento proporcional na alocação de banco de dados quando vários arquivos estão presentes.

Trace Flag: 1180

Função: SQL 7 – Força alocação para usar páginas gratuitas para dados de texto ou imagem e manter a eficiência do armazenamento. Útil no caso de os comandos DBCC SHRINKFILE e SHRINKDATABASE não funcionarem devido às colunas de texto, ntext ou de imagem escassamente preenchidas.

Trace Flag: 1197

Função: Aplica-se apenas no caso do SQL 7 – SP3, semelhante ao sinalizador de rastreio 1180

Trace Flag: 1200

Função: imprime informações detalhadas de bloqueio à medida que todas as solicitações de um bloqueio são feitas (o ID do processo eo tipo de bloqueio solicitado)
Link: Lista TECHNET do link do SQL Server Trace Flags
https://blogs.msdn.microsoft.com/sqlserverstorageengine/2008 / 03/30 / tempdb-table-variable-vs-local-temporária-tabela
Link: https://support.microsoft.com/en-us/help/169960/inf-analyzing-and-avoiding-deadlocks-in- servidor SQL

Trace Flag: 1202

Função: Insira solicitações de bloqueio bloqueado em syslocks

Trace Flag: 1204

Função: retorna os recursos e os tipos de bloqueios que participam de um impasse e também o comando atual afetado.
Link: https://support.microsoft.com/en-us/kb/832524
Link: Docs Trace Flags
Escopo: somente global

Trace Flag: 1205

Função: informações mais detalhadas sobre o comando que está sendo executado no memento de um impasse. Documentado em SQL 7 BOL.
Link: https://support.microsoft.com/en-us/help/832524/sql-server-technical-bulletin—how-to-resolve-a-deadlock

Trace Flag: 1206

Função: usado para complementar a flag 1204, exibindo outros bloqueios mantidos por partes do impasse
Link: https://support.microsoft.com/en-us/help/169960/inf-analyzing-and-avoiding-deadlocks-in-sql-server

Trace Flag: 1208

Função: KB: “Imprime o nome do host e o nome do programa fornecidos pelo cliente. Isso pode ajudar a identificar um cliente envolvido em um impasse, assumindo que o cliente especifica um valor exclusivo para cada conexão. ”
Link: https://support.microsoft.com/en-us/help/169960/inf-analyzing-and-avoiding -deadlock-in-sql-server

Trace Flag: 1211

Função: Desativa a escalação de bloqueio com base na pressão da memória ou com base no número de bloqueios. O mecanismo de banco de dados do SQL Server não escalara os bloqueios de linha ou página para bloqueios de tabela. O uso desse sinalizador de rastreamento pode gerar números excessivos de bloqueios. Isso pode diminuir o desempenho do mecanismo de banco de dados, ou causar 1204 erros (incapaz de alocar recurso de bloqueio) devido à memória insuficiente. Se o sinalizador de rastreamento 1211 e 1224 estiverem configurados, 1211 tem precedência sobre 1224. No entanto, como o sinalizador de rastreamento 1211 impede a escalação em todos os casos, mesmo sob pressão de memória, recomendamos que você use 1224. Isso ajuda a evitar “fora de bloqueios” erros quando muitos bloqueios estão sendo usados.
Link: Docs Trace Flags
Link: http://www.sqlskills.com/blogs/paul/a-sql-server-dba-myth-a-day-2330-lock-escalation
Âmbito: global ou sessão

Trace Flag: 1216

Função: SQL 7 – Desativa relatório de saúde. Bloquear monitor quando detectar um cenário de bloqueio de nível de recurso (thread de trabalho). Se um SPID que possui um bloqueio está atualmente colocado em cola no agendador, porque todos os segmentos de trabalho atribuídos foram criados e todos os segmentos de trabalho atribuídos estão em um estado de espera não resolvível, a seguinte mensagem de erro é gravada no log de erro do SQL Server : Erro 1223: ID do processo% d:% d não pode adquirir o bloqueio “% s” no recurso% s porque existe um bloqueio potencial no Agendador% d para o recurso. ID do processo% d:% d contém um bloqueio “% h” neste recurso.
Link: Nenhum

Trace Flag: 1217

Função: desativa (para 7.0) as mensagens de relatório “UMS Health” descritas no artigo KB.

Trace Flag: 1222

Função: Retorna os recursos e os tipos de bloqueios que participam de um impasse e também o comando atual afetado, em um formato XML que não está em conformidade com nenhum esquema XSD.
Link: Docs Trace Flags
Link: https://blog.sqlauthority.com/2017/01/09/sql-server-get-historical-deadlock-information-system-health-extended-events
Escopo: global apenas

Trace Flag: 1224

Função: desativa a escalação de bloqueio com base no número de bloqueios. No entanto, a pressão da memória ainda pode ativar a escalação do bloqueio. O mecanismo de banco de dados escalar bloqueios de linha ou página para bloquear (ou partição) bloqueios se a quantidade de memória usada por objetos de bloqueio exceder uma das seguintes condições:

  • Quarenta por cento da memória usada pelo mecanismo de banco de dados. Isso é aplicável apenas quando o parâmetro de bloqueio de sp_configure está definido como 0.
  • Quarenta por cento da memória de bloqueio que é configurada usando o parâmetro de bloqueio de sp_configure.

Para obter mais informações, consulte Opções de Configuração do Servidor (SQL Server) . Se o sinalizador de rastreamento 1211 e 1224 estiverem configurados, 1211 tem precedência sobre 1224. No entanto, como o sinalizador de rastreamento 1211 impede a escalação em todos os casos, mesmo sob pressão de memória, recomendamos que você use 1224. Isso ajuda a evitar “out-of-locks” erros quando muitos bloqueios estão sendo usados.
Nota: A escalação de bloqueio para a granularidade de nível de tabela ou HoBT também pode ser controlada usando a opção LOCK_ESCALATION da instrução ALTER TABLE. 
Link: Docs Trace Flags
Âmbito: global ou sessão

Trace Flag: 1228

Função: Ativar partição de bloqueio. Por padrão, o particionamento de bloqueio é ativado quando um servidor possui 16 ou mais CPUs. Caso contrário, o particionamento de bloqueio está desativado. O sinalizador de rastreamento 1228 permite o particionamento de bloqueio para 2 ou mais CPUs. O sinalizador de rastreamento 1229 desativa o particionamento de bloqueio. O sinalizador de rastreio 1229 substitui o sinalizador de rastreamento 1228 se o sinalizador de rastreio 1228 também estiver definido. O particionamento de bloqueio é útil em servidores de várias CPU, onde algumas tabelas possuem taxas de bloqueio muito altas. Você pode ativar o sinalizador de rastreamento 1228 e sinalizar o indicador 1229 apenas na inicialização.
Link: Trace Flag 1228 e 1229
Link: Microsoft SQL Server 2005 TPC-C Trace Flags

Trace Flag: 1229

Função: Ativar partição de bloqueio. Por padrão, o particionamento de bloqueio é ativado quando um servidor possui 16 ou mais CPUs. Caso contrário, o particionamento de bloqueio está desativado. O sinalizador de rastreamento 1228 permite o particionamento de bloqueio para 2 ou mais CPUs. O sinalizador de rastreamento 1229 desativa o particionamento de bloqueio. O sinalizador de rastreio 1229 substitui o sinalizador de rastreamento 1228 se o sinalizador de rastreio 1228 também estiver definido. O particionamento de bloqueio é útil em servidores de várias CPU, onde algumas tabelas possuem taxas de bloqueio muito altas. Você pode ativar o sinalizador de rastreamento 1228 e sinalizar o indicador 1229 apenas na inicialização.
Link: Trace Flag 1228 e 1229
Link: Microsoft SQL Server 2005 TPC-C Trace Flags

Trace Flag: 1236

Função: permite o particionamento do banco de dados. Corrige o problema de desempenho em cenários com alta atividade de bloqueio no SQL 2012 e SQL 2014.
Nota: Começando com o SQL Server 2012 SP3 e o SQL Server 2014 SP1, esse comportamento é controlado pelo mecanismo e o sinalizador de rastreamento 1236 não tem efeito. 
Link: https://support.microsoft.com/en-us/kb/2926217
Link: Docs Trace Flags
Escopo: global apenas

Trace Flag: 1237

Função: Permite que a ALTER PARTITION FUNCTIONdeclaração atenda a prioridade atual do bloqueio da sessão definida pelo usuário em vez de ser a vítima fatal do impasse por padrão.
Nota: Começando com o SQL Server 2017 e o nível de compatibilidade do banco de dados 140, esse é o comportamento padrão eo sinalizador de rastreamento 1237 não tem efeito. Link: http://support.microsoft.com/help/4025261
Link: Docs Trace Flags
Scope: global ou sessão ou consulta

Trace Flag: 1260

Função: mini-despejo desabilitado para condição de não produtividade. Desabilita a geração de mini-despejo para “qualquer um dos erros 17883, 17884, 17887 ou 17888. O sinalizador de rastreamento pode ser usado em conjunto com o sinalizador de rastreamento -T1262. Por exemplo, você pode habilitar -T1262 para obter 10 e 60- Relatórios de segundo intervalo e também habilitar – T1260 para evitar obter mini-despejos. ”
Link: Uma coleção tópica do SQL Server Flags v6
Link: Como diagnosticar e corrigir erros 17883, 17884, 17887 e 17888
Link: Docs Trace Flags
Âmbito: apenas global

Trace Flag: 1261

Função: SQL 8 – Desativa relatórios de saúde. Bloquear monitor quando detectar um cenário de bloqueio de nível de recurso (thread de trabalho). Se um SPID que possui um bloqueio está atualmente colocado em fila no agendador, porque todos os segmentos de trabalho atribuídos foram criados e todos os segmentos de trabalho atribuídos estão em um estado de espera não resolvível, a seguinte mensagem de erro é gravada no log de erro do SQL Server : Erro 1229: ID do processo% d:% d possui recursos que estão bloqueando processos no agendador% d.
Link: Nenhum

Trace Flag: 1262

Função: o comportamento padrão (para 1788 * erros) é para o SQL gerar um mini-despejo na primeira ocorrência, mas nunca depois. 1262 altera o comportamento: “Quando -T1262 está habilitado, um mini-despejo é gerado quando a condição não-cedente é declarada (15 segundos) e em intervalos subsequentes de 60 segundos para a mesma ocorrência sem rendimento. Um novo nãoDiagCorrect17883etc; A ocorrência de rendimento faz com que as capturas de despejo ocorram novamente. “No SQL 2000, essa era uma bandeira somente de inicialização; em 2005+ pode ser ativado via TRACEON. Observe que a bandeira também está coberta no Khen2005, p400, mas sem novas informações.
Link: Uma coleção tópica do SQL Server Flags v6
Link: Como diagnosticar e corrigir erros 17883, 17884, 17887 e 17888

Trace Flag: 1264

Função: Recolher nomes de processos em despejos de memória de cenário sem rendimento
Link: Uma coleção tópica do SQL Server Flags v6
Link: http://support.microsoft.com/kb/2630458/en-us

 

 

Continue ….

Publicado em Administração SQL, SQL SERVER

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s

Arquivos
Follow SQL DATA BLOG on WordPress.com
Mais acessados
  • Nenhum
%d blogueiros gostam disto: