Compartilhar via


DBCC TRACEON – sinalizadores de rastreamento (Transact-SQL)

Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure

Sinalizadores de rastreamento são usados para definir as características do servidor específico ou para alterar um comportamento em particular. Por exemplo, o 3226 é um sinalizador de rastreamento de inicialização comumente usado que suprime mensagens de backup bem-sucedidas no log de erros. Os sinalizadores de rastreamento são frequentemente usados para diagnosticar problemas de desempenho ou para depurar procedimentos armazenados ou sistemas de computador complexos, mas também podem ser recomendados pelo Suporte da Microsoft para lidar com o comportamento que está afetando negativamente uma carga de trabalho específica.

Todos os sinalizadores de rastreamento documentados e aqueles recomendados pelo Suporte da Microsoft têm suporte total em um ambiente de produção quando usados conforme indicado. Os sinalizadores de rastreamento nesta lista podem ter considerações adicionais sobre seu uso específico, portanto, é aconselhável examinar cuidadosamente todas as recomendações fornecidas aqui e/ou pelo engenheiro de suporte. Além disso, assim como acontece com qualquer alteração de configuração no SQL Server, sempre é melhor testar minuciosamente o sinalizador em um ambiente de não produção antes de implantar.

Observação

O Microsoft Entra ID era conhecido como Azure Active Directory (Azure AD).

Comentários

No SQL Server, há três escopos em que os sinalizadores de rastreamento podem funcionar: consulta, sessão e global. Os sinalizadores de rastreamento de consulta ficam ativos para o contexto de uma consulta específica. Os sinalizadores de rastreamento de sessão ficam ativos para uma conexão e são visíveis apenas para essa conexão. Sinalizadores de rastreamento globais são definidos no nível do servidor e são visíveis em todas as conexões no servidor. Alguns sinalizadores podem ser ativados somente como global e outros podem ser ativados no escopo global ou de sessão.

As seguintes regras se aplicam:

  • Um sinalizador de rastreamento global deve ser habilitado globalmente. Caso contrário, ele não terá nenhum efeito. Recomendamos que você habilite sinalizadores de rastreamento globais na inicialização, usando a -T opção de linha de comando no Windows ou usando mssql-conf no Linux. Isso garante que o sinalizador de rastreamento permaneça ativo após o reinício do servidor. Reinicie o SQL Server para que o sinalizador de rastreamento entre em vigor.

  • Se um sinalizador de rastreamento tiver um escopo global, de sessão ou de consulta, ele poderá ser habilitado com o escopo apropriado. Um sinalizador de rastreamento habilitado no nível de sessão nunca afeta outra sessão, e seu efeito se perde quando a SPID que abriu a sessão é encerrada.

Os sinalizadores de rastreamento são definidos como ON ou OFF usando um dos seguintes métodos:

  • Usando os comandos DBCC TRACEON e DBCC TRACEOFF.

    Por exemplo, para habilitar o sinalizador de rastreamento 2528 globalmente, use DBCC TRACEON com o argumento -1: DBCC TRACEON (2528, -1). O efeito de habilitar um sinalizador de rastreamento global com DBCC TRACEON é perdido no reinício do servidor. Para desligar um sinalizador de rastreamento global, use DBCC TRACEOFF com o argumento -1.

  • Usando a opção de inicialização -T para especificar que o sinalizador de rastreamento é definido como ativado durante a inicialização.

    A opção de inicialização -T habilita um sinalizador de rastreamento globalmente. Não é possível habilitar um sinalizador de rastreamento no nível de sessão usando uma opção de inicialização. Isso garante que o sinalizador de rastreamento permaneça ativo após o reinício do servidor. Para obter mais informações sobre as opções de inicialização, consulte Opções de inicialização do serviço do Mecanismo de Banco de Dados.

  • No nível da consulta, usando a dica de consulta QUERYTRACEON. A opção QUERYTRACEON só é compatível com os sinalizadores de rastreamento do otimizador de consulta documentados na tabela que aparece mais para a frente neste artigo.

Use o comando DBCC TRACESTATUS para determinar quais sinalizadores de rastreamento estão ativos no momento.

Exemplos

O exemplo a seguir ativa o sinalizador de rastreamento 3205 para todas as sessões no nível do servidor usando DBCC TRACEON.

DBCC TRACEON (3205, -1);

Você pode habilitar todos os hotfixes que afetam o plano controlados pelos sinalizadores de rastreamento 4199 e 4137 para uma consulta específica.

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

Sinalizadores de rastreamento

A tabela a seguir lista e descreve os sinalizadores de rastreamento disponíveis no SQL Server.

A Instância Gerenciada de SQL do Azure dá suporte aos seguintes sinalizadores de rastreamento globais: 460, 2301, 2389, 2390, 2453, 2467, 7471, 8207, 9389, 10316 e 11024. Os sinalizadores de rastreamentos de sessão ainda não têm suporte na Instância Gerenciada de SQL.

Alguns sinalizadores de rastreamento foram introduzidos em versões específicas do SQL Server. Para obter mais informações sobre a versão aplicável, confira o artigo do Suporte da Microsoft associado a um sinalizador de rastreamento específico.

O comportamento do sinalizador de rastreamento pode não ter suporte em versões futuras do SQL Server.

Os sinalizadores de rastreamento podem ser referenciados diretamente na tabela por meio de um indicador que você pode adicionar ao final da URL, usando esse formato #tfNNNN. Por exemplo, para saltar diretamente para o sinalizador de rastreamento 1118 na tabela, use dbcc-traceon-trace-flags-transact-sql#tf1118.

Sinalizador de rastreamento Descrição
101 Aumenta o detalhamento do registro em log do agente de replicação de mesclagem.

Importante: o sinalizador de rastreamento 101 só pode ser habilitado para o Agente de Mesclagem de Replicação por meio da opção -T ao executar replmerg.exe no prompt de comando.

Aviso: o sinalizador de rastreamento 101 não deve ser habilitado continuamente em um ambiente de produção, mas apenas para fins de solução de problemas com tempo limitado. Para obter mais informações, confira uma versão arquivada do KB2892633.

Escopo: somente Agente de Mesclagem de Replicação.
102 Aumenta o detalhamento do registro em log do agente de replicação de mesclagem e direciona-o para a tabela <Servidor de distribuição>..msmerge_history.

Importante: o sinalizador de rastreamento 102 só pode ser habilitado para o Agente de Mesclagem de Replicação por meio da opção -T ao executar replmerg.exe no prompt de comando.

Aviso: o sinalizador de rastreamento 102 não deve ser habilitado continuamente em um ambiente de produção, mas apenas para fins de solução de problemas com tempo limitado. Para obter mais informações, confira uma versão arquivada do KB2892633.

Escopo: somente Agente de Mesclagem de Replicação.
139 Força a semântica de conversão correta no escopo dos comandos de verificação DBCC, como DBCC CHECKDB, DBCC CHECKTABLE e DBCC CHECKCONSTRAINTS, ao analisar a lógica de precisão e conversão melhorada introduzida com o nível de compatibilidade 130, para tipos de dados específicos em um banco de dados com um nível de compatibilidade inferior. Para obter mais informações, consulte Melhorias no SQL Server e no Banco de Dados SQL do Azure no tratamento de alguns tipos de dados e operações incomuns.

Aplica-se a: SQL Server 2016 (13.x) RTM CU 3, SQL Server 2016 (13.x) Service Pack 1 e versões posteriores.

Aviso: o sinalizador de rastreamento 139 não deve ser habilitado continuamente em um ambiente de produção e deve ser usado com a única finalidade de executar verificações de validação de banco de dados descritas em Melhorias no SQL Server e no Banco de Dados SQL do Azure no tratamento de alguns tipos de dados e operações incomuns. Ele deverá ser desabilitado imediatamente após a conclusão das verificações de validação.

Escopo: apenas global.
174 Aumenta o número de buckets do cache de planos do Mecanismo de Banco de Dados do SQL Server de 40.009 para 160.001 em sistemas de 64 bits. Para obter mais informações, confira KB3026083.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: apenas global.
176 Resolve os erros de recompilação de partições online para tabelas que contêm uma coluna de particionamento computada. Para obter mais informações, confira KB3213683 e KB4541096.

Escopo: global ou sessão.
205 Relata no log de erros quando um procedimento armazenado dependente de estatísticas está sendo recompilado como resultado das estatísticas de atualização automática. Para obter mais informações, confira uma versão arquivada do KB195565.

Observação: é obrigatório que o sinalizador de rastreamento 3605 esteja habilitado.

Escopo: apenas global.
260 Imprime informações de versão sobre DLLs (bibliotecas de vínculo dinâmico) de procedimento armazenado estendido. Para obter mais informações sobre GetXpVersion()o , consulte Criar procedimentos armazenados estendidos.

Escopo: global ou sessão.
272 Desabilita a pré-alocação de identidade para evitar lacunas nos valores de uma coluna de identidade caso o servidor seja reiniciado inesperadamente ou efetue failover para um servidor secundário. O cache de identidade é usado para melhorar o desempenho de INSERT em tabelas com colunas de identidade.

Observação: a partir do SQL Server 2017 (14.x), para fazer isso no nível do banco de dados, consulte a opção IDENTITY_CACHE em ALTER DATABASE SCOPED CONFIGURATION.

Escopo: apenas global.
460 Substitui a ID de mensagem 8152 de truncamento de dados pela ID de mensagem 2628. Para obter mais informações, confira KB4468101.

A partir do SQL Server 2019 (15.x), para fazer isso no nível do banco de dados, consulte a opção VERBOSE_TRUNCATION_WARNINGS em ALTER DATABASE SCOPED CONFIGURATION.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2 CU 6, SQL Server 2017 (14.x) CU 12 e versões posteriores.

Observação: No nível de compatibilidade do banco de dados 150 em diante, a ID da mensagem 2628 é o padrão e esse sinalizador de rastreamento não tem nenhum efeito. Para o nível de compatibilidade do banco de dados 140 ou inferior, a ID de mensagem 2628 permanece uma mensagem de erro de aceitação que exige a habilitação do sinalizador de rastreamento 460 e essa configuração no escopo do banco de dados não tem nenhum efeito.

Escopo: global ou sessão.
610 Controla as inserções em tabelas indexadas minimamente registradas. Esse sinalizador de rastreamento não é mais necessário a partir do SQL Server 2016 (13.x), pois o registro mínimo em log é ativado por padrão para tabelas indexadas. No SQL Server 2016 (13.x), quando a operação de carregamento em massa fizer com que uma nova página seja alocada, todas as linhas que preencherem sequencialmente essa nova página serão registradas minimamente se todos os outros pré-requisitos para o registro em log mínimo forem atendidos. As linhas inseridas em páginas existentes (não em uma nova alocação de página) para manter a ordem de índice ainda são totalmente registradas, como as linhas que são movidas como resultado de divisões de página durante o carregamento.

Também é importante ter ALLOW_PAGE_LOCKS ativado para índices (que é ON por padrão) para que a operação de log mínima funcione, pois os bloqueios de página são adquiridos durante a alocação e, portanto, apenas as alocações de página ou extensão são registradas. Para obter mais informações, confira Guia de desempenho de carregamento de dado.

Escopo: global ou sessão.
634 Desabilita a tarefa de compactação columnstore em segundo plano. O SQL Server executa periodicamente a tarefa em segundo plano do Motor de Tupla que compacta rowgroups do índice columnstore com os dados não compactados, um rowgroup de cada vez.

A compactação columnstore melhora o desempenho da consulta, mas também consome recursos do sistema. É possível controlar o tempo da compactação de columnstore manualmente, desabilitando a tarefa de compactação em segundo plano com o sinalizador de rastreamento 634 e invocando explicitamente ALTER INDEX...REORGANIZE ou ALTER INDEX...REBUILD no momento desejado.

Escopo: apenas global.
652 Desabilita as verificações de pré-busca de página. Se você ativar o sinalizador de rastreamento 652, o SQL Server não fornecerá mais as páginas do banco de dados no pool de buffers antes do consumo delas pelos exames. Como resultado, as consultas que se beneficiam do recurso de pré-busca da página apresentam um desempenho inferior.

Escopo: global ou sessão.
661 Desabilita o processo de remoção de registros fantasmas. O sinalizador de rastreamento 661 desabilita o processo de remoção de registros fantasmas. O registro fantasma é resultado de uma operação de exclusão. Quando você exclui um registro, o registro excluído é mantido como um registro fantasma. Posteriormente, o registro excluído é limpo pelo processo de remoção de registros fantasmas. Quando você desabilita esse processo, o registro excluído não é limpo. Portanto, o espaço que o registro excluído consome não é liberado. Esse comportamento afeta o consumo de espaço e o desempenho das operações de exame. Para obter mais informações, leia o Guia do processo de limpeza de fantasma.

Escopo: apenas global.
692 Desabilita as inserções rápidas durante o carregamento em massa de dados no heap ou no índice clusterizado. A partir do SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x)SQL Server 2016 (13.x) Com as inserções rápidas, cada lote de carregamento em massa adquire novas extensões, ignorando a pesquisa de alocação de extensão existente com espaço livre disponível para otimizar o desempenho da inserção.

Com inserções rápidas, cargas a granel com lotes pequenos podem levar ao aumento do espaço não utilizado consumido por objetos, portanto, é recomendável usar lotes grandes para cada lote para preencher completamente a extensão. Se não for possível aumentar o tamanho do lote, esse sinalizador de rastreamento poderá ajudar a reduzir o espaço não usado reservado às custas do desempenho.

Aplica-se a: SQL Server 2016 (13.x) e versões posteriores.

Escopo: global ou sessão.
715 Habilita o bloqueio de tabela para operações de carregamento em massa em um heap sem índices não clusterizados. Quando esse sinalizador de rastreamento está habilitado, as operações de carregamento em massa adquirem bloqueios de BU (atualização em massa) durante a cópia de dados em uma tabela. Os bloqueios de BU (atualização em massa) permitem a vários threads carregarem simultaneamente dados em massa para a mesma tabela, evitando que outros processos, que não são carregamentos de dados em massa, acessem a tabela.

O comportamento é semelhante a quando o usuário especifica explicitamente a dica TABLOCK ao executar o carregamento em massa ou quando o bloqueio de tabela sp_tableoption no carregamento em massa está habilitado para uma determinada tabela. No entanto, quando esse sinalizador de rastreamento está habilitado, esse comportamento torna-se o padrão, sem alterações de banco de dados ou de consulta.

Escopo: global ou sessão.
809 Habilita o que é chamado de comportamento de Gravação Direta para o pool de buffer híbrido. Esse modo exige que o buffer de log persistente seja habilitado no mesmo banco de dados que o pool de buffers híbrido. A Gravação Direta permite que o pool de buffers híbrido funcione como um cache para páginas sujas e limpas, reduzindo as demandas de carga de trabalho nos pools de buffers de DRAM para cargas de trabalho estilo OLAP e OLTP. Esse sinalizador de rastreamento foi introduzido no SQL Server 2022 (16.x) e o comportamento é habilitado por padrão no SQL Server 2022 (16.x) CU 1. Se você estiver usando SQL Server 2022 (16.x) CU 1 e versões posteriores, o sinalizador de rastreamento será ignorado.
818 Permite diagnósticos de E/S adicionais para verificar se há condições de perda de gravação ou leitura obsoleta durante operações de E/S de arquivo. O sinalizador de rastreamento 818 habilita um buffer de anéis na memória que é usado para acompanhar as últimas 2.048 operações de gravação bem-sucedidas que foram realizadas pelo SQL Server, sem incluir E/Ss de classificação e arquivo de trabalho. Quando ocorrerem erros como o Erro 605, 823 ou 3448, o valor do LSN (número de sequência de log) do buffer de entrada será comparado com a lista de gravação recente. Se o LSN recuperado for mais antigo do que aquele especificado durante a operação de gravação, uma nova mensagem de erro será registrada no log de erros do SQL Server. Para obter mais informações, consulte O diagnóstico do SQL Server detecta problemas de E/S não relatados devido a leituras obsoletas ou gravações perdidas.

Observação: desde o SQL Server 2017 (14.x), esse sinalizador de rastreamento não tem nenhum efeito.

Escopo: apenas global.
830 Desabilita a detecção e o relatório de solicitações de E/S que levam muito tempo para serem concluídas. Por padrão, o SQL Server usa um mecanismo para detectar solicitações de E/S de leitura e gravação que levam muito tempo (normalmente mais de 15 segundos). Esse sinalizador de rastreamento desabilita a detecção. Para obter mais informações, consulte MSSQLSERVER_833.

Observação: não é recomendável habilitar esse sinalizador de rastreamento porque você pode diminuir sua capacidade de detectar problemas de E/S no sistema.

Escopo: apenas global.
834 Usa as alocações de página grande para o pool de buffers, columnstore e tabelas na memória. O tamanho da página grande varia de acordo com a plataforma de hardware, mas o tamanho da página pode ser de 2 MB a 16 MB. As páginas grandes são alocadas na inicialização e são mantidas durante todo o tempo de vida do processo. O sinalizador de rastreamento 834 melhora o desempenho aumentando a eficiência do TLB (Translation Lookaside Buffer) na CPU. Em outras palavras, ele aumenta a eficiência do gerenciamento da conversão de endereços de memória física para virtual que é executada pelo hardware de gerenciamento de memória. Para obter informações sobre o SQL Server e as Páginas Grandes, leia o blog a seguir.

Observação: o sinalizador de rastreamento 834 se aplica somente às versões de 64 bits do SQL Server. Você precisa ter o direito de usuário de Bloquear páginas na memória a fim de ativar o sinalizador de rastreamento 834. Você só pode ativar o sinalizador de rastreamento 834 na inicialização. O sinalizador de rastreamento 834 pode impedir que o servidor seja iniciado se a memória estiver fragmentada e se páginas grandes não puderem ser alocadas. Portanto, o sinalizador de rastreamento 834 é mais adequado para servidores dedicados ao SQL Server.

Observação: quando habilitado, o modelo de memória de página grande pré-aloca toda a memória SQLOS na inicialização de instância e não retorna essa memória para o sistema operacional.

Observação: se você estiver usando o recurso Índice de Columnstore do SQL Server 2012 (11.x) e versões posteriores, não recomendamos ativar o Sinalizador de Rastreamento 834. Para obter mais informações, consulte Problemas de interoperabilidade entre o processamento em modo de lote e o modelo de memória de página grande. Se estiver usando SQL Server 2019 (15.x) e columnstore, confira o sinalizador de rastreamento 876 em vez disso.

Escopo: apenas global.
836 Use a opção máxima de memória do servidor para o pool de buffers. O sinalizador de rastreamento 836 faz com que o SQL Server dimensione o pool de buffers na inicialização com base no valor da opção máxima de memória do servidor, e não na memória física total. Você pode usar o sinalizador de rastreamento 836 para reduzir o número de descritores de buffer que são alocados na inicialização no modo AWE (Address Windowing Extensions) de 32 bits.

Observação: o sinalizador de rastreamento 836 se aplica somente às versões de 32 bits do SQL Server com a alocação AWE habilitada. Você só pode ativar o sinalizador de rastreamento 836 na inicialização.

Escopo: apenas global.
845 Habilita páginas bloqueadas em SKUs Standard do SQL Server, quando a conta de serviço do SQL Server tem o privilégio Bloquear páginas na memória habilitado. Para obter mais informações, confira KB970070 e Opções de configuração do servidor da memória do servidor.

Observação: desde o SQL Server 2012 (11.x), esse comportamento está habilitado por padrão para SKUs Standard, e o Sinalizador de Rastreamento 845 não pode ser usado.

Escopo: apenas global.
876 Usa alocações de página grande para columnstore.

Observação: ao contrário do sinalizador de rastreamento 834, o uso do sinalizador de rastreamento 876 não pré-aloca a memória SQLOS na inicialização da instância e a memória não usada pode ser liberada.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: apenas global.
888 Resolve a degradação do desempenho em dispositivos PMEM com o Hybrid Buffer Pool ativado no SQL Server quando os dispositivos PMEM ficam com pouca memória. Para obter mais informações, confira KB4548103.

Aplica-se a: SQL Server 2019 (15.x) CU 4 e versões posteriores.

Escopo: apenas global.
890 Suprimir mensagens de verificação completas do pool de buffers longos (erro 898) no log de erros. Para obter mais informações sobre a verificação do pool de buffers e a mensagem registrada no log de erros, confira Operações que disparam uma verificação de pool de buffers podem ser executadas lentamente em computadores de grande memória.

Aplica-se a: SQL Server 2017 (14.x) e versões posteriores.

Escopo: apenas global.
898 Desabilita o comportamento de Gravação Direta do pool de buffer híbrido para fins de solução de problemas ou depuração. Para obter mais informações, confira KB5022375.

Aplica-se a: SQL Server 2022 (16.x) CU 1 e versões posteriores.

Escopo: apenas global.
902 Ignora a execução do script de upgrade de banco de dados ao instalar uma atualização cumulativa ou um service pack. Se você encontrar um erro durante o modo de atualização de script, é recomendável entrar em contato com o CSS (Atendimento e Suporte ao Cliente) do Microsoft SQL para obter mais diretrizes. Para obter mais informações, confira KB2163980.

Aviso: esse sinalizador de rastreamento é destinado à solução de problemas de atualizações com falha durante o modo de atualização de script e não permite a execução contínua em um ambiente de produção. Os scripts de atualização do banco de dados precisam ser executados com êxito para garantir uma instalação completa das atualizações cumulativas e dos service packs. Se isso não for feito, poderá haver problemas inesperados com a instância do SQL Server.

Escopo: apenas global.
1117 Quando um arquivo no grupo de arquivos atingir o limite de crescimento automático, todos os arquivos no grupo de arquivos crescerão. Esse sinalizador de rastreamento afeta todos os bancos de dados. É recomendado apenas se em todos os bancos de dados for seguro aumentar todos os arquivos em um grupo de arquivos na mesma quantidade.

Observação: desde o SQL Server 2016 (13.x), esse comportamento é controlado pelas opções AUTOGROW_SINGLE_FILE e AUTOGROW_ALL_FILES de ALTER DATABASE, e o Sinalizador de Rastreamento 1117 não tem efeito. Para obter mais informações, confira Opções de arquivo e grupo de arquivos de ALTER DATABASE (Transact-SQL).

Escopo: apenas global.
1118 Força as alocações de página em extensões uniformes em vez de extensões mistas, reduzindo a contenção na página 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 mais páginas são necessárias, elas são alocadas da mesma extensão (extensão uniforme). A página SGAM é usada para controlar essas extensões mistas, para que possa se tornar rapidamente um gargalo quando várias alocações de página mistas estiverem ocorrendo. Esse sinalizador de rastreamento aloca as oito páginas da mesma extensão ao criar novos objetos, minimizando a necessidade de verificar a página SGAM. Para obter mais informações, confira KB328551.

Observação: a partir do SQL Server 2016 (13.x), esse comportamento é controlado pela opção SET MIXED_PAGE_ALLOCATION de ALTER DATABASE e o sinalizador de rastreamento 1118 não tem efeito. Para obter mais informações, consulte Opções ALTER DATABASE SET.

Escopo: apenas global.
1204 Retorna os recursos e tipos de bloqueios que participam de um deadlock e também o comando atual afetado. Para obter mais informações sobre deadlocks, confira o guia Deadlocks.

Observação: evite usar o sinalizador de rastreamento 1204 em sistemas com uso intensivo de carga de trabalho que causam deadlocks. Para obter mais informações sobre outras formas de detectar deadlocks, confira o guia Deadlocks.

Escopo: apenas global.
1211 Desabilita o escalonamento de bloqueios com base na pressão de memória ou no número de bloqueios. O Mecanismo de Banco de Dados do SQL Server não escalona bloqueios de linha ou de página para bloqueios de tabela.

O uso desse sinalizador de rastreamento pode gerar um número excessivo de bloqueios e, se a memória de bloqueio crescer o suficiente, as tentativas de alocar bloqueios adicionais para qualquer consulta poderão falhar. Isso pode reduzir o desempenho do Mecanismo de Banco de Dados ou causar erros 1204 (não é possível alocar recurso de bloqueio) por causa de memória insuficiente.

Se os sinalizadores de rastreamento 1211 e 1224 forem definidos, o 1211 terá precedência sobre o 1224. Entretanto, como o sinalizador de rastreamento 1211 evita o escalonamento em todos os casos, mesmo sob pressão de memória, é recomendado o uso do 1224. Isso ajuda a evitar erros de "falta de bloqueios" quando muitos bloqueios são usados.

Para obter mais informações sobre como resolver problemas de bloqueio causados pelo escalonamento de bloqueios no SQL Server, consulte Resolver problemas de bloqueio causados pelo escalonamento de bloqueios no SQL Server.

Escopo: global ou sessão.
1222 Retorna os recursos e os tipos de bloqueios que participam de um deadlock e também o comando atual afetado, em um formato XML que não obedece a nenhum esquema XSD. Para obter mais informações sobre deadlocks, confira o guia Deadlocks.

Observação: evite usar o sinalizador de rastreamento 1222 em sistemas com uso intensivo de carga de trabalho que causam deadlocks. Para obter mais informações sobre outras formas de detectar deadlocks, confira o guia Deadlocks.

Escopo: apenas global.
1224 Desabilita o escalonamento de bloqueios com base no número de bloqueios. Entretanto, a pressão de memória ainda pode ativar o escalonamento de bloqueios. O Mecanismo de Banco de Dados escalona bloqueios de linha ou de página para bloqueios de tabela (ou partição) se a quantidade de memória utilizada pelos objetos de bloqueio exceder uma das seguintes condições:

- 40% da memória usada pelo Mecanismo de Banco de Dados. Aplica-se somente quando o parâmetro locks de sp_configure está definido como 0.
- 40% da memória de bloqueio configurada usando o parâmetro locks de sp_configure. Para obter mais informações, consulte Opções de configuração do servidor.

Se os sinalizadores de rastreamento 1211 e 1224 forem definidos, o 1211 terá precedência sobre o 1224. Entretanto, como o sinalizador de rastreamento 1211 evita o escalonamento em todos os casos, mesmo sob pressão de memória, é recomendado o uso do 1224. Isso ajuda a evitar erros de "falta de bloqueios" quando muitos bloqueios são usados.

Observação: o escalonamento de bloqueio para a granularidade no nível da tabela ou no nível de HoBT (heap ou árvore B) também pode ser controlado usando a opção LOCK_ESCALATION da instrução ALTER TABLE.

Para obter mais informações sobre como resolver problemas de bloqueio causados pelo escalonamento de bloqueios no SQL Server, consulte Resolver problemas de bloqueio causados pelo escalonamento de bloqueios no SQL Server.

Escopo: global ou sessão.
1229 Desabilita todo o particionamento de bloqueio, independentemente do número de CPUs. Por padrão, SQL Server o habilita o particionamento de bloqueio quando um servidor tem 16 ou mais CPUs, para melhorar as características de escalabilidade de sistemas maiores. Para obter mais informações sobre o particionamento de bloqueio, confira o Guia de controle de versão de linha e bloqueio de transação.

Aviso: o sinalizador de rastreamento 1229 pode causar contenção de spinlock e baixo desempenho.

Escopo: apenas global.
1236 Permite o particionamento de bloqueio do banco de dados. Para obter mais informações, confira KB2926217.

Observação: desde o SQL Server 2012 (11.x) Service Pack 3 e do SQL Server 2014 (12.x) Service Pack 1, esse comportamento é controlado pelo Mecanismo de Banco de Dados, e o Sinalizador de Rastreamento 1236 não tem efeito.

Escopo: apenas global.
1237 Permite que a instrução ALTER PARTITION FUNCTION cumpra a prioridade de deadlock da sessão definida pelo usuário atual em vez de ser a provável vítima do deadlock por padrão. Para obter mais informações, confira KB4025261.

Observação: desde o SQL Server 2017 (14.x) e do nível de compatibilidade do banco de dados 140, esse é o comportamento padrão e o Sinalizador de Rastreamento 1237 não tem efeito.

Escopo: global, sessão ou consulta (QUERYTRACEON).
1260 Desabilitar os despejos do monitor do agendador.

Escopo: apenas global.
1448 Permite que o leitor de logs de replicação continue mesmo que os secundários assíncronos não reconheçam a recepção de uma alteração. Mesmo com esse sinalizador de rastreamento habilitado, o leitor de log sempre aguardará as réplicas secundárias síncronas cujo estado de sincronização é SYNCHRONIZED. O leitor de log não ultrapassa o número mínimo de sequência de log reconhecido dos secundários SYNCHRONIZED. Este sinalizador de rastreamento se aplica à instância do SQL Server, não apenas a um grupo de disponibilidade, um banco de dados de disponibilidade ou uma instância do leitor de log. Entra em vigor imediatamente, sem reinicialização. Esse sinalizador de rastreamento pode ser ativado antecipadamente ou quando uma réplica secundária assíncrona falha.

Escopo: apenas global.
1462 Desabilita a compactação do fluxo de log para grupos de disponibilidade assíncronos. Esse recurso é habilitado por padrão nos grupos de disponibilidade assíncronos para otimizar a largura de banda de rede. Para obter mais informações, veja Ajustar a compactação do grupo de disponibilidade.

Escopo: apenas global.
1800 Permite a otimização do SQL Server quando discos de diferentes tamanhos de setor são usados para arquivos de log de réplica primária e secundária, nos ambientes Always On e de envio de logs do SQL Server. Este sinalizador de rastreamento só precisa ser habilitado em instâncias do SQL Server que tenham o arquivo de log de transações residindo no disco, com um tamanho de setor de 512 bytes. Não é necessário estar habilitado em disco com tamanhos de setor de 4 KB. Para obter mais informações, consulte KB3009974.

Aplica-se a: 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 e versões posteriores.

Escopo: apenas global.
1802 Desabilita a alteração da ACL e a verificação de acesso representada durante as operações de anexar ou desanexar o banco de dados. Isso pode ser útil ao anexar um banco de dados e encontrar erros de permissão de acesso, como o erro 5120.

Escopo: apenas global.
1819 Permite que o backup para URL use um servidor proxy ao acessar blobs de blocos do Azure. Além desse sinalizador de rastreamento, você deve definir a configuração de proxy WinHTTP no servidor com o utilitário netsh.exe no Windows Vista, Windows Server 2008 e versões posteriores.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2301 Habilite otimizações avançadas de suporte à decisão que são específicas para consultas de suporte à decisão. Essa opção se aplica ao processamento de suporte à decisão de grandes conjuntos de dados.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2312 Define o modelo de estimativa de cardinalidade do otimizador de consulta para SQL Server 2014 (12.x) e versões posteriores, independentemente do nível de compatibilidade do banco de dados.

Observação: se o nível de compatibilidade do banco de dados for inferior a 120, habilitar o sinalizador de rastreamento 2312 usará o modelo de estimativa de cardinalidade do SQL Server 2014 (12.x) (120). Para obter mais informações, consulte Dicas de consulta.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'FORCE_DEFAULT_CARDINALITY_ESTIMATION' dica de consulta em vez de usar esse sinalizador de rastreamento.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2335 Faz com que SQL Server presuma que uma quantidade fixa de memória está disponível durante a otimização da consulta, para um cenário em que a configuração máxima do servidor de memória do servidor está definida com um valor muito alto, e faz com que SQL Server gere um plano ineficiente para uma consulta específica. Ele não limita as concessões de memória do SQL Server para executar a consulta. A memória configurada para o SQL Server ainda será usada pelo cache de dados, pela execução da consulta e por outros consumidores.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2338 Faz com que o SQL Server use um plano estreito ao executar uma instrução UPDATE para atualizar índices em uma tabela. Quando você faz uma UPDATE em relação a uma coluna de índice clusterizado, o SQL Server atualiza não apenas o índice clusterizado em si, mas também todos os índices não clusterizados porque os índices não clusterizados contêm a chave de cluster. Uma forma comum de a atualização ocorrer é atualizar o índice clusterizado e, em seguida, todos os índices não clusterizados ao mesmo tempo. O SQL Server atualiza uma linha e, em seguida, passa para a próxima linha até que tudo seja concluído. Isso é chamado de atualização de plano estreito ou também chamado Atualização Por Linha. Em alguns casos, o Mecanismo de Banco de Dados pode optar por fazer uma atualização de plano ampla. Esse sinalizador de rastreamento força uma atualização de plano estreita.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2340 Faz com que o SQL Server não use uma operação de classificação (classificação em lotes) para junções otimizadas de Loops Aninhados ao gerar um plano. Por padrão, o SQL Server pode usar uma junção de loops aninhados otimizada em vez de uma verificação completa ou uma junção de loops aninhados com uma classificação explícita, quando o otimizador de consulta conclui que uma classificação provavelmente não é necessária, mas ainda é uma possibilidade no caso de a cardinalidade ou as estimativas de custo estarem incorretas. Para obter mais informações, consulte Altas concessões de CPU ou memória podem ocorrer com consultas que usam loop aninhado otimizado ou classificação em lote.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'DISABLE_OPTIMIZED_NESTED_LOOP' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2371 Altera o limite fixo de estatísticas de atualização para o limite de estatísticas de atualização linear. Para obter mais informações, confira esta opção AUTO_UPDATE_STATISTICS.

Observação: desde o SQL Server 2016 (13.x) e do nível de compatibilidade do banco de dados 130 ou acima, esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 2371 não tem efeito.

Escopo: apenas global.
2389 Habilitar as estatísticas rápidas geradas automaticamente para chaves crescentes (aditamento de histograma). Se o sinalizador de rastreamento 2389 estiver definido e uma coluna de estatísticas principal estiver marcada como crescente, o histograma usado para estimar a cardinalidade será ajustado no tempo de compilação da consulta.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Observação: esse sinalizador de rastreamento não se aplica ao CE versão 120 ou acima. Nesse caso, use o sinalizador de rastreamento 4139.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2390 Habilitar as estatísticas rápidas geradas automaticamente para chaves crescentes ou desconhecidas (aditamento de histograma). Se o sinalizador de rastreamento 2390 estiver definido e uma coluna de estatísticas principal estiver marcada como ascendente ou desconhecida, o histograma usado para estimar a cardinalidade será ajustado no tempo de compilação da consulta. Para obter mais informações, consulte Dicas de consulta.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Observação: esse sinalizador de rastreamento não se aplica ao CE versão 120 ou acima. Nesse caso, use o sinalizador de rastreamento 4139.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2422 Permite que o Mecanismo de Banco de Dados do SQL Server anule uma solicitação quando o tempo máximo definido pela configuração REQUEST_MAX_CPU_TIME_SEC do Resource Governor é excedido. Para obter mais informações, confira KB4038419.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2, SQL Server 2017 (14.x) CU 3 e versões posteriores.

Escopo: apenas global.
2430 Permite uma limpeza de classe de bloqueio alternativa. Para obter mais informações, confira KB2754301.

Escopo: apenas global.
2446 Faz com que o SQL Server gere um fragmento Showplan XML com o ParameterRuntimeValue ao usar a infraestrutura de criação de perfil de estatísticas de execução de consulta leve ou ao executar o DMV sys.dm_exec_query_statistics_xml durante a solução de problemas de consultas de execução prolongada.

Aplica-se a: SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) e versões posteriores.

Aviso: o sinalizador de rastreamento 2446 não deve ser habilitado continuamente em um ambiente de produção, mas apenas para fins de solução de problemas com tempo limitado. O uso desse sinalizador de rastreamento introduz uma sobrecarga adicional e possivelmente significativa de CPU e memória, pois criamos um fragmento XML do Plano de Execução com informações de parâmetro de runtime, quer a DMV do sys.dm_exec_query_statistics_xml seja chamada ou não.

Observação: a partir do SQL Server 2022 (16.x), para fazer isso no nível do banco de dados, consulte a opção FORCE_SHOWPLAN_RUNTIME_PARAMETER_COLLECTION em ALTER DATABASE SCOPED CONFIGURATION.

Escopo: apenas global.
2451 Habilita o equivalente do último plano de execução real em sys.dm_exec_query_plan_stats.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Observação: a partir do SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server 2019 (15.x)LAST_QUERY_PLAN_STATS SQL Server 2019 (15.x)SQL Server 2019 (15.x)SQL Server

Escopo: apenas global.
2453 Permite que uma variável de tabela dispare a recompilação quando um número suficiente de linhas é alterado. Para obter mais informações, confira KB2952444.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção. A partir do SQL Server 2019 (15.x), isso se tornou uma compilação adiada de variável de tabela e o sinalizador de rastreamento 2453 não tem efeito.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2467 Permite uma política alternativa de alocação de thread de trabalho paralelo, com base em qual nó tem menos threads alocados. Para saber mais, veja Processamento de Consulta Paralela. Consulte Configurar o máximo de threads de trabalho (opção de configuração do servidor) para obter informações sobre como configurar a opção de servidor máximo de threads de trabalho.

Observação: a consulta do grau de paralelismo (DOP) deve se ajustar a um único nó para que esta política alternativa seja usada ou para que, em vez disso, a política padrão de alocação de thread seja usada. Usando esse sinalizador de rastreamento, recomendamos não executar consultas que especificam um DOP sobre o número de agendadores em um único nó porque isso poderia interferir nas consultas que especificam um DOP inferior ou igual ao número de agendadores em um único nó.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: apenas global.
2469 Permite a troca alternada para INSERT INTO ... SELECT para um índice columnstore particionado. Para obter mais informações, confira KB3204769.

Escopo: global, sessão ou consulta (QUERYTRACEON).
2528 Desabilita a verificação paralela de objetos por DBCC CHECKDB, DBCC CHECKFILEGROUP e DBCC CHECKTABLE. Por padrão, o grau de paralelismo é automaticamente determinado pelo processador de consultas. O grau máximo de paralelismo é configurado da mesma forma que o das consultas paralelas. Para obter mais informações, consulte Configurar o grau máximo de paralelismo (opção de configuração do servidor).

Observação: as verificações paralelas do DBCC normalmente devem estar habilitadas (padrão). O processador de consultas reavalia e ajusta automaticamente o paralelismo para cada tabela ou lote de tabelas verificado por DBCC CHECKDB.

O cenário de uso típico é quando um administrador do sistema sabe que a carga do servidor vai aumentar antes que o DBCC CHECKDB seja concluído e, então, escolhe diminuir ou desabilitar manualmente o paralelismo, para aumentar a simultaneidade com outra carga de trabalho do usuário. No entanto, desabilitar verificações paralelas em DBCC CHECKDB pode fazer com que ele leve mais tempo para ser concluído.

Nota: Se DBCC CHECKDB for executado usando a opção TABLOCK e o paralelismo estiver desativado, as tabelas poderão ser bloqueadas por períodos mais longos.

Observação: desde o SQL Server 2014 (12.x) Service Pack 2, uma opção MAXDOP está disponível para substituir a opção de configuração de grau máximo de paralelismo de sp_configure para as instruções do DBCC.

Escopo: global ou sessão.
2544 Faz com que um despejo de memória de SQL Server se torne um despejo completo (o padrão é o mini despejo). Despejos completos são uma cópia completa da memória do processo ativo de destino. Isso inclui todo o estado do thread, toda a memória alocada do processo e todos os módulos carregados. Os despejos completos, portanto, têm um tamanho aproximadamente a quantidade de memória usada pelo processo do SQL Server, que, por sua vez, pode ser quase tão grande quanto a RAM total do sistema. Em servidores grandes dedicados a uma única instância do SQL Server, isso pode significar um arquivo com várias centenas de gigabytes ou mais.

Aviso: a geração de um despejo de memória completo pode suspender o processo do SQL Server por um longo período de tempo (vários segundos a vários minutos) e pode gerar um arquivo de despejo muito grande. Use esse recurso com cautela e somente nos raros casos em que a situação exigir.

Para obter informações mais detalhadas, consulte Usar a ferramenta Sqldumper.exe para gerar um arquivo de despejo no SQL Server.

Escopo: apenas global.
2549 Força o comando DBCC CHECKDB a assumir que cada arquivo de banco de dados está em uma unidade de disco exclusiva, mas tratando arquivos físicos diferentes como um arquivo lógico. O comando DBCC CHECKDB compila uma lista interna de páginas a serem lidas por unidade de disco exclusiva em todos os arquivos do banco de dados. Essa lógica determina as unidades de disco exclusivas com base na letra da unidade do nome do arquivo físico de cada arquivo.

Observação: não use esse sinalizador de rastreamento, a menos que você saiba que cada arquivo está baseado em um disco físico exclusivo.

Observação: embora esse sinalizador de rastreamento melhore o desempenho dos DBCC CHECKDB comandos que visam o uso da opção PHYSICAL_ONLY, alguns usuários podem não ver nenhuma melhoria no desempenho. Embora esse sinalizador de rastreamento melhore o uso de recursos de E/S de disco, o desempenho subjacente dos recursos de disco pode limitar o desempenho geral do DBCC CHECKDB comando. Para obter mais informações, confira KB2634571.

Escopo: apenas global.
2551 Faz com que um despejo de memória de SQL Server se torne um despejo filtrado (o padrão é o mini despejo). Isso captura um percentual de memória completa, em que grandes áreas de estruturas de memória pertencentes ao SQL Server são filtradas intencionalmente e não serializadas para o disco, pois elas não trazem valor adicionado à solução de problemas (normalmente, páginas de dados/índice, alguns caches internos, como páginas de dados do OLTP in-memory e memória do pool de logs). Isso resulta em um arquivo menor do que um despejo de memória completo, mantendo a maior parte de sua utilidade como opção preferencial na maioria das situações em que os minidespejos não são suficientes. Para obter informações mais detalhadas, consulte Usar a ferramenta Sqldumper.exe para gerar um arquivo de despejo no SQL Server.

Escopo: apenas global.
2562 Executa o comando DBCC CHECKDB em um só "lote", independentemente do número de índices no banco de dados. Por padrão, o comando DBCC CHECKDB tenta minimizar os recursos do tempdb, limitando o número de índices ou de "fatos" gerados usando um conceito de "lotes". Mas este sinalizador de rastreamento força todo o processamento em um único lote.

Um efeito do uso desse sinalizador de rastreamento é que os requisitos de espaço podem tempdb aumentar. tempdb pode crescer para até 5% ou mais do banco de dados do usuário que está sendo processado DBCC CHECKDB pelo comando.

Observação: embora esse sinalizador de rastreamento melhore o desempenho dos DBCC CHECKDB comandos que visam o uso da opção PHYSICAL_ONLY, alguns usuários podem não ver nenhuma melhoria no desempenho. Embora esse sinalizador de rastreamento melhore o uso de recursos de E/S de disco, o desempenho subjacente dos recursos de disco pode limitar o desempenho geral do DBCC CHECKDB comando. Para obter mais informações, confira KB2634571.

Escopo: global ou sessão.
2566 Executa o comando DBCC CHECKDB sem a verificação de pureza de dados, a menos que a opção DATA_PURITY esteja especificada.

Observação: as verificações de integridade de valor de coluna são habilitadas por padrão e não exigem a opção DATA_PURITY. Para bancos de dados atualizados de versões anteriores do SQL Server, as verificações de valor de coluna não são habilitadas por padrão até que DBCC CHECKDB WITH DATA_PURITY seja executado sem erros pelo menos uma vez no banco de dados. Depois disso, DBCC CHECKDB verifica a integridade de valores de coluna por padrão. Para obter mais informações, confira uma versão arquivada do KB945770.

Escopo: apenas global.
2592 Habilita a resolução de símbolo em despejos de pilha quando as Ferramentas de Depuração do Windows estão instaladas. Por exemplo, o uso do sinalizador de rastreamento 3656 requer que o sinalizador de rastreamento 2592 esteja habilitado.

Aviso: esse é um sinalizador de rastreamento de depuração e não se destina para uso do ambiente de produção.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Escopo: global e sessão.
2610 Permite a compactação do despejo de memória e a geração mais rápida de despejo com o SQLDumper e via DBCC STACKDUMP. Para obter mais informações, consulte Usar o utilitário Sqldumper.exe para gerar um arquivo de despejo no SQL Server.

Aplicável a: SQL Server 2022 (16.x) CU 8, SQL Server 2019 (15.x) CU 23 e versões posteriores.

Escopo: global e sessão.
2616 Permite que o recurso de assinatura de pilha faça com que Sqldumper.exe gere um único despejo por assinatura de pilha exclusiva por hora, o que evita possíveis problemas de inundação de despejo quando o mesmo problema se repete com frequência em uma hora.

Quando esse sinalizador de rastreamento estiver habilitado, o formato do arquivo de despejo será alterado de SQLDump<xxxx>.mdmp ou SQLDmpr<xxxx>.mdmp para SQLDmpr<xxxx>.P<xxxxx.xxxxxxxx>.T<xxxxxxxxxxxxxx>.{<xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx>}.dmp (por exemplo, SQLDmpr0024.P26900.66D498FA.T20240117034050.{eec59a9e-d615-4ac4-a46a-f650fee23787}.dmp).

Aplica-se a: SQL Server 2022 (16.x) 12 e versões posteriores.

Escopo: apenas global.
3023 Habilita a opção CHECKSUM como padrão para o comando BACKUP.

Observação: começando pelo SQL Server 2014 (12.x), esse comportamento é controlado definindo a opção de configuração padrão da soma de verificação de backup. Para obter mais informações, consulte padrão de soma de verificação de backup e Opções de configuração do servidor.

Escopo: global e sessão.
3042 Ignora o algoritmo padrão de pré-alocação de compactação de backup para permitir que o arquivo de backup cresça somente quando necessário para alcançar seu tamanho final. Este sinalizador de rastreamento será útil se você precisar salvar em espaço alocando somente o tamanho real necessário para o backup compactado. Usar este sinalizador de rastreamento pode causar uma pequena penalidade de desempenho (um possível aumento na duração da operação de backup). Para obter mais informações sobre o algoritmo de pré-alocação, consulte Compactação de backup (SQL Server).

Escopo: apenas global.
3051 Habilita o backup do SQL Server no registro em log da URL apenas para blobs de páginas no Armazenamento do Azure. Os registros em log são gravados em um arquivo de log de erros específico. Para obter mais informações, confira Práticas recomendadas e solução de problemas de backup do SQL Server para URL.

Escopo: apenas global.
3205 Por padrão, se uma unidade de fita oferecer suporte à compactação de hardware, a instrução DUMP ou BACKUP a usará. Com esse sinalizador de rastreamento, é possível desabilitar a compactação de hardware para drivers de fita. Isso é útil quando se deseja trocar as fitas por outros locais ou unidades de fita que não dão suporte à compactação.

Escopo: global ou sessão.
3226 Por padrão, cada operação de backup e restauração bem-sucedida adiciona uma entrada no log de erros do SQL Server e no log de eventos do sistema. Se você criar backups de log com frequência, essas mensagens de sucesso se acumularão rapidamente, resultando em enormes logs de erros nos quais encontrar outras mensagens poderá vir a se tornar problemático.

Com esse sinalizador de rastreamento, você pode suprimir entradas de log de backup e restauração. Isso é útil se você estiver executando backups de log frequentes e se nenhum dos seus scripts depender dessas entradas.

Escopo: apenas global.
3427 Permite corrigir um problema em que muitas transações consecutivas inserem dados em tabelas temporárias no SQL Server 2016 (13.x) quando essa operação consome mais CPU do que no SQL Server 2014 (12.x). Para obter mais informações, confira KB3216543.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 1 CU 2 até o SQL Server 2016 (13.x) Service Pack 2 CU 2. A partir do SQL Server 2016 (13.x) Service Pack 2 CU 3 e do SQL Server 2017 (14.x), esse sinalizador de rastreamento não tem efeito.

Escopo: apenas global.
3428 Às vezes, o thread de restauração do Always On em uma réplica secundária pode ser bloqueado por consultas T-SQL, o que pode causar atrasos na sincronização. Esse sinalizador de rastreamento encerra essas consultas de bloqueio definindo o tempo limite de bloqueio como 60 segundos. Para obter mais informações sobre a latência do thread Redo, consulte O thread Redo fica para trás devido à contenção de recursos e Solução de problemas de acúmulo de fila REDO (problemas de latência de dados) em réplicas secundárias legíveis Always On.

Aviso: certifique-se de testar e entender essa opção antes de implantá-la em um ambiente de produção, pois as consultas podem ser encerradas.

Aplica-se a: SQL Server 2019 (15.x)

Escopo: apenas global.
3459 Desabilita a restauração paralela. Para obter mais informações, confira KB3200975, KB4101554 e esta postagem no blog, modelo e desempenho de restauração da réplica secundária do grupo de disponibilidade.

Aplica-se a: SQL Server 2016 (13.x), SQL Server 2017 (14.x) e versões posteriores.

Escopo: apenas global.
3468 Desabilita pontos de verificação indiretos em tempdb.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 1 CU 5, SQL Server 2017 (14.x) CU 1 e versões posteriores.

Escopo: apenas global.
3502 Usado para enviar alterações de estado de ponto de verificação para o log de erros.

Aplica-se a: SQL Server 2012 (11.x) e versões posteriores.

Escopo: global ou sessão.
3605 Redireciona as mensagens de rastreamento para o log de erros do SQL Server. Por exemplo, o uso dos sinalizadores de rastreamento 205 e 8721 requer que o sinalizador de rastreamento 3605 esteja habilitado.

Aviso: esse é um sinalizador de rastreamento de depuração e não se destina a estar continuamente habilitado em um ambiente de produção.

Escopo: global ou sessão.
3608 Impede que o SQL Server inicie e recupere automaticamente qualquer banco de dados, exceto o banco de dados master. Se as atividades que requerem o tempdb forem iniciadas, o model será recuperado e o tempdb será criado. Outros bancos de dados são iniciados e recuperados quando acessados. Alguns recursos, como isolamento de instantâneo e instantâneo de leitura confirmada, talvez não funcionem. Use para mover bancos de dados do sistema e mover bancos de dados de usuário.

Observação: não use durante a operação normal.

Escopo: apenas global.
3625 Limita a quantidade de informações retornadas aos usuários que não são membros da função de servidor fixa sysadmin , mascarando os parâmetros de algumas mensagens de erro usando '******'o . Isso pode ajudar a evitar a divulgação de informações confidenciais.

Escopo: apenas global.
3656 Habilita a resolução do símbolo em despejos de pilha quando as Ferramentas de Depuração do Windows estão instaladas.

Aviso: esse é um sinalizador de rastreamento de depuração e não se destina para uso do ambiente de produção.

Observação: a partir do SQL Server 2019 (15.x), o sinalizador de rastreamento 2592 deve ser habilitado com o sinalizador de rastreamento 3656 para habilitar a resolução de símbolo.

Escopo: global e sessão.
3880 Desabilite a tarefa de temporizador que verifica o estado de um índice retomável.

Aplica-se a: SQL Server 2017 (14.x) e versões posteriores e se destina a sistemas de alto nível com cargas de trabalho com alto desempenho.

Escopo: global ou sessão.
3924 Habilita a remoção automática de transações DTC órfãs com SPID = -2, que é um problema para alguns monitores de transação de terceiros. Para obter mais informações, confira KB4519668 e KB4511816.

Escopo: apenas global.
3972 Desabilita o recurso de atualizações simultâneas do PFS (Page Free Space). Para obter mais informações sobre atualizações simultâneas do PFS, confira Desempenho inteligente. Para um problema em que o sinalizador de rastreamento é útil, confira Despejos do agendador sem produtividade durante a recuperação de um banco de dados de disponibilidade secundária com um instantâneo do banco de dados KB5007794.

Escopo: apenas global.
4022 Desabilita a execução automática de procedimentos armazenados quando o SQL Server é iniciado. Para obter mais informações sobre a execução automática de procedimentos armazenados de inicialização, confira sp_procoption.

Escopo: apenas global.
4043 Corrige um erro que ocorre quando você aplica uma política de segurança na tabela externa do PolyBase e usa Row-Level Security (RLS) no SQL Server 2019 (15.x). A mensagem de erro é semelhante ao seguinte texto: "Predicados de segurança só podem ser adicionados a tabelas de usuário e exibições associadas a esquema". Para obter mais informações, confira KB4552159.

Escopo: global ou sessão.
4136 Desabilita a detecção de parâmetro a menos que OPTION(RECOMPILE), WITH RECOMPILE ou OPTIMIZE FOR <value> seja usado. Para obter mais informações, confira KB980653.

A partir do SQL Server 2016 (13.x), para fazer isso no nível do banco de dados, consulte a opção PARAMETER_SNIFFING em ALTER DATABASE SCOPED CONFIGURATION. Para obter o mesmo resultado no nível da consulta, adicione a dica de consulta OPTIMIZE FOR UNKNOWN. A dica OPTIMIZE FOR UNKNOWN não desabilita o mecanismo de detecção de parâmetro, mas efetivamente o ignora para atingir o mesmo resultado pretendido.

A partir do SQL Server 2016 (13.x) Service Pack 1, uma segunda opção para fazer isso no nível da consulta é adicionar a USE HINT 'DISABLE_PARAMETER_SNIFFING' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global ou sessão.
4137 Faz com que o SQL Server gere um plano usando a seletividade mínima ao estimar predicados AND para os filtros a serem considerados para correlação parcial em vez de independência sob o modelo de CE (estimativa de cardinalidade) do otimizador de consulta do SQL Server 2012 (11.x) e das versões anteriores (70). Para obter mais informações, confira KB2658214.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' dica de consulta em vez de usar esse sinalizador de rastreamento ao usar o CE 70.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Observação: esse sinalizador de rastreamento não se aplica ao CE versão 120 ou acima. Nesse caso, use o sinalizador de rastreamento 9471.

Escopo: global, sessão ou consulta (QUERYTRACEON).
4138 Faz com que o SQL Server gere um plano que não usa os ajustes de meta de linha com consultas que contêm as palavras-chave TOP, OPTION (FAST N), IN ou EXISTS. Para obter mais informações, confira KB2667211.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'DISABLE_OPTIMIZER_ROWGOAL' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
4139 Habilitar as estatísticas rápidas geradas automaticamente (aditamento de histograma) independentemente do status da coluna de chave. Se o sinalizador de rastreamento 4139 estiver definido, independentemente do status da coluna de estatísticas principal (crescente, decrescente ou estático), o histograma usado para estimar a cardinalidade é ajustado no tempo de compilação da consulta. Para obter mais informações, confira KB2952101.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'ENABLE_HIST_AMENDMENT_FOR_ASC_KEYS' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Observação: esse sinalizador de rastreamento não se aplica ao CE versão 70. Use os sinalizadores de rastreamento 2389 e 2390.

Escopo: global, sessão ou consulta (QUERYTRACEON).
4199 Habilita correções do QO (otimizador de consulta) lançadas nas Atualizações Cumulativas e nos Service Packs do SQL Server.

As alterações do QO feitas nas versões anteriores do SQL Server são habilitadas por padrão no nível de compatibilidade mais recente do banco de dados em uma determinada versão do produto sem que o sinalizador de rastreamento 4199 seja habilitado. Para obter mais informações, confira KB974006.

Alterações do QO em todos os níveis de compatibilidade anteriores do banco de dados:
─ Se o sinalizador de rastreamento 4199 estiver habilitado, as alterações do otimizador de consulta em todos os níveis de compatibilidade anteriores do banco de dados também serão habilitadas.
─ Se o sinalizador de rastreamento 4199 estiver desabilitado ou não estiver definido, as alterações do otimizador de consulta serão habilitadas a partir do nível de compatibilidade 130. As alterações do otimizador de consulta estão desabilitadas para os níveis de compatibilidade abaixo de 130.

Alterações do QO para a versão do DE pós-RTM:
─ Se o sinalizador de rastreamento 4199 estiver habilitado, as alterações do otimizador de consulta serão habilitadas para a versão pós-RTM do Mecanismo de Banco de Dados.
─ Se o sinalizador de rastreamento 4199 estiver desabilitado ou não estiver definido, as alterações do otimizador de consulta serão desabilitadas para a versão pós-RTM do Mecanismo de Banco de Dados.

A partir do SQL Server 2016 (13.x), para fazer isso no nível do banco de dados, consulte a opção QUERY_OPTIMIZER_HOTFIXES em ALTER DATABASE SCOPED CONFIGURATION.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'ENABLE_QUERY_OPTIMIZER_HOTFIXES' dica de consulta em vez de usar esse sinalizador de rastreamento.

Importante: as correções do otimizador de consulta que tratam de resultados errados ou de erros de violação de acesso não são habilitadas pelo sinalizador de rastreamento 4199. Essas correções não são consideradas opcionais e são habilitadas por padrão quando o pacote de atualização é instalado.

Escopo: global, sessão ou consulta (QUERYTRACEON).
4610 Aumenta o tamanho da tabela de hash que armazena as entradas de cache em um fator igual a 8. Quando usado com o sinalizador de rastreamento 4618, aumenta o número de entradas no repositório de cache TokenAndPermUserStore para 8.192. Para obter mais informações sobre como solucionar problemas de tamanho do cache TokenAndPermUserStore, confira Consultas que levam mais tempo para terminar quando o tamanho do cache TokenAndPermUserStore aumenta no SQL Server.

Escopo: apenas global.
4616 Torna os metadados em nível de servidor visíveis para funções de aplicativo. No SQL Server, uma função de aplicativo não pode acessar metadados fora de seu próprio banco de dados porque as funções de aplicativo não são associadas a uma entidade de segurança no nível do servidor. Essa é uma alteração de comportamento de versões anteriores do SQL Server. Definir esse sinalizador global desabilita as novas restrições e permite que funções de aplicativo acessem metadados em nível de servidor.

Escopo: apenas global.
4618 Limita o número de entradas no repositório de cache TokenAndPermUserStore para 1.024. Quando usado com o sinalizador de rastreamento 4610, aumenta o número de entradas no repositório de cache TokenAndPermUserStore para 8.192. Para obter mais informações sobre como solucionar problemas de tamanho do cache TokenAndPermUserStore, confira Consultas que levam mais tempo para terminar quando o tamanho do cache TokenAndPermUserStore aumenta no SQL Server.

Escopo: apenas global.
4621 Limita o número de entradas no repositório de cache TokenAndPermUserStore para o número especificado pelo usuário em uma chave do Registro. Para obter mais informações, consulte acessar o cache de verificação Opções de configuração do servidor.

Escopo: apenas global.
4631 Desabilita SHA2_256/AES256 para senhas de hash que geram chaves de criptografia. O SHA2 é usado no lugar do SHA1 desde o SQL Server 2017 (14.x). Isso significa que etapas extras podem ser necessárias para que sua instalação do SQL Server 2017 (14.x) descriptografe itens que foram criptografados no SQL Server 2016 (13.x), conforme descrito em Criar chaves simétricas idênticas em dois servidores. Para obter mais informações, confira KB4053407.

Aplica-se a: SQL Server 2017 (14.x) e versões posteriores.

Escopo: apenas global.
5004 Pausa a verificação de criptografia de TDE (Transparent Data Encryption) e faz com que o trabalho de verificação de criptografia seja encerrado sem ser realizado. O banco de dados continua no estado criptografando (criptografia em andamento). Para retomar o exame de nova criptografia, desabilite o sinalizador de rastreamento 5004 e execute ALTER DATABASE <database_name> SET ENCRYPTION ON.

Escopo: apenas global.
6408 Habilita a visibilidade do plano de execução estimado para ver o plano de consulta remota da computação de pushdown do PolyBase.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores. Para obter mais informações, confira Como saber se ocorreu um pushdown externo.

Escopo: global, sessão ou consulta (QUERYTRACEON).
6498 Permite que mais de uma compilação de consulta grande obtenha acesso ao gateway grande quando houver memória suficiente disponível. Esse sinalizador de rastreamento pode ser usado para manter o uso de memória para a compilação de consultas de entrada sob controle, evitando esperas de compilação para consultas grandes simultâneas. Ele se baseia em um valor de 80% da memória de destino do SQL Server e permite uma compilação de consulta grande por 25 GB de memória. Para obter mais informações, confira KB3024815.

Observação: desde o SQL Server 2014 (12.x) Service Pack 2 e do SQL Server 2016 (13.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 6498 não tem efeito.

Escopo: apenas global.
6527 Desabilita a geração de um despejo de memória na primeira ocorrência de uma exceção de memória insuficiente na integração de CLR. Por padrão, o SQL Server gera um despejo de memória pequeno na primeira ocorrência de uma exceção de memória insuficiente no CLR (Common Language Runtime). O comportamento do sinalizador de rastreamento é:

– Se for usado como um sinalizador de rastreamento de inicialização, um despejo de memória nunca será gerado. No entanto, um despejo de memória pode ser gerado se outros sinalizadores de rastreamento forem usados.
– Se esse sinalizador de rastreamento estiver habilitado em um servidor em execução, um despejo de memória não será gerado automaticamente a partir desse ponto. No entanto, se um despejo de memória já tiver sido gerado devido a uma exceção de memória insuficiente no CLR, este sinalizador de rastreamento não tem nenhum efeito.

Escopo: apenas global.
6531 Desabilita a proteção de agendamento preemptivo para operações de consulta com tipos de dados espaciais. Isso pode reduzir o consumo de CPU e melhorar o desempenho geral de algumas atividades espaciais. Para obter mais informações, consulte KB3005300.

Observação: use esse sinalizador de rastreamento somente se as chamadas de método espacial individuais (por linha e coluna) levarem menos de ~4 ms e resultarem em erros frequentes do planejador sem rendimento.

Aplica-se a: SQL Server 2012 (11.x) Service Pack 2 4, SQL Server 2014 (12.x) 5 e versões posteriores.

Escopo: global e sessão.
6532 Permite a melhoria do desempenho de operações de consulta com tipos de dados espaciais no SQL Server 2012 (11.x) e no SQL Server 2014 (12.x). O ganho de desempenho varia, dependendo da configuração, dos tipos de consultas e dos objetos. Para obter mais informações, confira KB3107399.

Observação: desde o SQL Server 2016 (13.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 6532 não tem efeito.

Escopo: global e sessão.
6533 Permite a melhoria do desempenho de operações de consulta com tipos de dados espaciais no SQL Server 2012 (11.x) e no SQL Server 2014 (12.x). O ganho de desempenho varia, dependendo da configuração, dos tipos de consultas e dos objetos. Para obter mais informações, confira KB3107399.

Observação: desde o SQL Server 2016 (13.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 6533 não tem efeito.

Escopo: global e sessão.
6534 Permite o aprimoramento do desempenho das operações de consulta com tipos de dados espaciais começando com o SQL Server 2012 (11.x). O ganho de desempenho varia, dependendo da configuração, dos tipos de consultas e dos objetos. Para obter mais informações, confira KB3107399.

Escopo: apenas global.
6545 Habilita a segurança estrita do CLR. Para obter mais informações, confira KB4018930.

Aplica-se a: 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 e versões posteriores. Desde o SQL Server 2017 (14.x), esse recurso é habilitado por padrão e o Sinalizador de Rastreamento 6545 não tem efeito.

Escopo: apenas global.
6559 Habilita a correção que altera a lógica padrão do modelo de threading CLR. Para obter mais informações, confira KB4517771.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2 CU 10, SQL Server 2017 (14.x) CU 18, SQL Server 2019 (15.x) CU 1 e versões posteriores.

Escopo: apenas global.
7117 Atenua uma falha de asserção que pode ocorrer quando você tem várias inserções aninhadas. Esse sinalizador de rastreamento permite que o thread de limpeza PVS (repositório de versão persistente) continue, se o bit PVS estiver definido para uma linha que pode ter feito parte de uma transação anulada. Esse sinalizador de rastreamento permite que o limpador PVS ignore o bit e continue a operação de limpeza.

Aplica-se a: SQL Server 2022 (16.x) CU 9 e versões posteriores.

Escopo: apenas global.
7314 Força os valores NUMBER com precisão/escala desconhecida a serem tratados como valores duplos no Provedor OLE DB. Para obter mais informações, confira KB3051993.

Escopo: global e sessão.
7412 Habilita a infraestrutura leve de criação de perfil de estatísticas de execução de consulta. Para obter mais informações, confira KB3170113.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 1 e versões posteriores. Desde o SQL Server 2019 (15.x), este sinalizador de rastreamento não tem nenhum efeito porque a criação de perfil leve é habilitada por padrão.

Escopo: apenas global.
7470 Habilita cálculos adicionais para concessões de memória necessárias para operações de classificação. Para obter mais informações, confira KB3088480.

Aplica-se a: 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 e versões posteriores.

Aviso: o sinalizador de rastreamento 7470 aumenta os requisitos de memória para consultas que usam operadores de classificação e pode afetar a disponibilidade de memória para outras consultas simultâneas.

Escopo: global, sessão ou consulta (QUERYTRACEON).
7471 Permite executar várias UPDATE STATISTICS para estatísticas diferentes em uma única tabela simultaneamente. Para obter mais informações, confira KB3156157.

Aplica-se a: SQL Server 2014 (12.x) Service Pack 1 e versões posteriores.

Escopo: apenas global.
7745 Força o Repositório de Consultas a não liberar dados para o disco no desligamento do banco de dados.

Observação: o uso desse sinalizador de rastreamento pode fazer com que os dados do Repositório de Consultas não liberados anteriormente para o disco sejam perdidos em caso de desligamento. Para um desligamento do SQL Server, o comando SHUTDOWN WITH NOWAIT pode ser usado em vez do sinalizador de rastreamento para forçar um desligamento imediato.

Escopo: apenas global.
7752 Habilita o carregamento assíncrono do Repositório de Consultas.

Observação: Use este sinalizador de rastreamento se o SQL Server estiver apresentando um alto número de esperas QDS_LOADDB relacionadas à carga síncrona do Repositório de Consultas (comportamento padrão durante a recuperação do banco de dados).

Observação: desde o SQL Server 2019 (15.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 7752 não tem efeito.

Escopo: apenas global.
7806 Habilita uma conexão de administrador dedicada (DAC) no SQL Server Express. Por padrão, nenhum recurso DAC é reservado no SQL Server Express. Para obter mais informações, consulte Conexão de diagnóstico para administradores de banco de dados.

Escopo: apenas global.
8011 Desabilitar o buffer de anéis do Monitor de Recursos. Você pode usar as informações de diagnóstico nesse buffer de anéis para diagnosticar as condições de memória insuficiente. Portanto, se você usar esse sinalizador de rastreamento, as informações disponíveis para diagnosticar problemas de desempenho e funcionais com SQL Server serão consideravelmente reduzidas. O sinalizador de rastreamento 8011 sempre se aplica a todo o servidor e tem escopo global. Você pode ativar o sinalizador de rastreamento 8011 na inicialização ou em uma sessão de usuário.

Escopo: apenas global.
8012 Desabilitar o buffer de anéis para agendadores. SQL Server registra um evento no buffer de anéis de agendamento toda vez que ocorre um dos seguintes eventos:

– Um agendador alterna o contexto para outro trabalhador
– Um trabalhador é suspenso
– Um trabalhador é retomado
– Um trabalho entra no modo preemptivo ou no modo não preemptivo.

Você pode usar as informações de diagnóstico nesse buffer de anéis para analisar os problemas de agendamento. Por exemplo, você pode usar as informações nesse buffer de anéis para solucionar problemas quando SQL Server para de responder. O sinalizador de rastreamento 8012 desabilita a gravação de eventos por agendadores. Você só pode ativar o sinalizador de rastreamento 8012 na inicialização.

Aviso: quando você usar esse sinalizador de rastreamento, as informações disponíveis para diagnosticar problemas de desempenho e funcionais com o SQL Server serão consideravelmente reduzidas.

Escopo: apenas global.
8015 Desabilitar a detecção automática e a configuração NUMA. Para obter mais informações, confira KB2813214.

Escopo: apenas global.
8018 Desabilitar o buffer de anéis de exceção. O buffer de anéis de exceção registra as últimas 256 exceções que são geradas em um nó. Cada registro contém algumas informações sobre o erro e contém um rastreamento de pilha. Um registro é adicionado ao buffer de anéis sempre que uma exceção é gerada. O sinalizador de rastreamento 8018 desabilita a criação do buffer de anéis, de modo que nenhuma informação de exceção seja registrada. O sinalizador de rastreamento 8019 desabilita a coleta de pilha durante a criação de registros.

Aviso: quando você usar esse sinalizador de rastreamento, as informações disponíveis para diagnosticar problemas de desempenho e funcionais com o SQL Server serão consideravelmente reduzidas.

Escopo: apenas global.
8019 Desabilitar a coleta de pilha para o buffer de anéis de exceção. O sinalizador de rastreamento 8019 não terá efeito se o sinalizador de rastreamento 8018 estiver ativado.

Aviso: quando você usar esse sinalizador de rastreamento, as informações disponíveis para diagnosticar problemas de desempenho e funcionais com o SQL Server serão consideravelmente reduzidas.

Escopo: apenas global.
8020 Desabilitar o monitoramento do conjunto de trabalho. SQL Server usa o tamanho do conjunto de trabalho quando recebe sinais do estado da memória global do sistema operacional. O sinalizador de rastreamento 8020 remove o tamanho da memória do conjunto de trabalho da consideração quando o SQL Server interpreta os sinais de estado da memória global. Se você usar esse sinalizador de rastreamento incorretamente, poderá ocorrer paginação pesada e o desempenho poderá ser ruim. Portanto, entre em contato com Suporte da Microsoft antes de ativar o sinalizador de rastreamento 8020. Você só pode ativar o sinalizador de rastreamento 8020 na inicialização.

Escopo: apenas global.
8032 Reverte os parâmetros de limite de cache para a configuração do SQL Server 2005 (9.x) que, em geral, permite que os caches sejam maiores. Use essa configuração quando entradas de cache reutilizadas com frequência não se ajustarem no cache e quando a opção de configuração do servidor de otimizar para cargas de trabalho ad hoc não tiver resolvido o problema com o cache de planos.

Aviso: o sinalizador de rastreamento 8032 poderá diminuir o desempenho se caches grandes deixarem menos memória disponível para outros consumidores de memória, como o pool de buffers.

Escopo: apenas global.
8048 Converte objetos de memória particionados NUMA em CPU particionada. Para obter mais informações, confira KB2809338.

Observação: desde o SQL Server 2014 (12.x) Service Pack 2 e do SQL Server 2016 (13.x), esse comportamento é dinâmico e controlado pelo Mecanismo de Banco de Dados.

Escopo: apenas global.
8075 Reduz a fragmentação do VAS quando você recebe erros de alocação de página de memória em um SQL Server 2012 (11.x) ou SQL Server 2014 (12.x) de 64 bits. Para obter mais informações, confira KB3074434.

Aplica-se a: SQL Server 2012 (11.x), SQL Server 2014 (12.x) RTM CU 10 e SQL Server 2014 (12.x) Service Pack 1 CU 3. Desde o SQL Server 2016 (13.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 8075 não tem efeito.

Escopo: apenas global.
8079 Permite que o SQL Server 2014 (12.x) Service Pack 2 interrogue o layout de hardware e configure automaticamente o Soft-NUMA em sistemas que relatem oito ou mais CPUs por nó NUMA. O comportamento automático do Soft-NUMA é compatível com multithreading simultâneo (SMT/processador lógico). O particionamento e a criação de nós adicionais dimensiona o processamento em segundo plano aumentando o número de ouvintes, o dimensionamento e os recursos de rede e de criptografia.

Aplica-se a: SQL Server 2014 (12.x) Service Pack 2. Desde o SQL Server 2016 (13.x), esse comportamento é controlado pelo Mecanismo de Banco de Dados e o Sinalizador de Rastreamento 8079 não tem efeito.

Escopo: apenas global.
8086 Desabilite a verificação de localidade NUMA para confirmações de memória.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Escopo: global.
8089 No SQL Server 2017 (14.x) CU 16, é possível habilitar a filtragem de bitmap para reduzir o tamanho dos despejos de memória filtrados. SQL Server aloca um bitmap que controla as páginas de memória a serem excluídas de um despejo filtrado. Sqldumper.exe lê o bitmap e filtra as páginas sem a necessidade de ler nenhum outro metadado do gerenciador de memória.

Aplica-se a: SQL Server 2017 (14.x) CU 16 a CU 19. A partir do SQL Server 2017 (14.x) CU 20, a filtragem de bitmap é habilitada por padrão. O sinalizador de rastreamento 8089 não se aplica mais e é ignorado se estiver ativado. A filtragem de bitmap pode ser desabilitada por meio do sinalizador de rastreamento 8095. Para obter mais informações, confira KB4488943.

Escopo: apenas global.
8095 Desabilita a filtragem de bitmap para despejos de memória filtrados. SQL Server aloca um bitmap que controla as páginas de memória a serem excluídas de um despejo filtrado. Sqldumper.exe lê o bitmap e filtra as páginas sem a necessidade de ler nenhum outro metadado do gerenciador de memória.

Aplica-se a: versões em que a filtragem de bitmaps esteja ativada por padrão: SQL Server 2016 (13.x) CU 13 e versões posteriores, SQL Server 2017 (14.x) CU 20 e versões posteriores e SQL Server 2019 (15.x).

Escopo: apenas global.
8099 Habilita uma correção de contenção de spinlock para sistemas de alto nível que executam SQL Server 2019 (15.x) atendendo a muitos usuários simultâneos.

Aplica-se a: SQL Server 2019 (15.x) CU 2 a CU 3. A partir do SQL Server 2019 (15.x) CU 4, esse comportamento é habilitado por padrão. Para obter mais informações sobre a contenção do spinlock, confira Sinalizador de rastreamento 8101 e KB4538688.

Aplica-se a: SQL Server 2019 (15.x)

Escopo: apenas global.
8101 Resolve o alto uso da CPU em um hardware moderno, como os processadores Intel Skylake, com uma grande quantidade de CPUs e um número alto de usuários simultâneos. Para diagnosticar a contenção de spinlock, confira o white paper Diagnosticar e resolver a contenção de spinlock em SQL Server.

Aplica-se apenas a: SQL Server 2019 (15.x), desde a CU 8, com melhorias adicionais introduzidas na CU 14 e na CU 16.

Para obter mais informações, confira KB4538688.

Aplica-se a: SQL Server 2019 (15.x)

Escopo: apenas global.
8102 Resolve um cenário de alta CPU causado pela contenção de spinlock no spinlock XVB_LIST. Você pode observar isso mais comumente em sistemas de ponta com um grande número de processadores (CPUs) de última geração. Esse sinalizador de rastreamento pode ser habilitado junto com o sinalizador de rastreamento 8101. Enquanto o sinalizador de rastreamento 8101 altera o incremento de rotação, o sinalizador de rastreamento 8102 escalona as retiradas de spinlock. Para obter mais informações sobre retiradas, consulte Diagnosticar e resolver a contenção de spinlock no SQL Server.

Aplica-se a: SQL Server 2019 (15.x).

Escopo: apenas global.
8121 Corrige um problema de memória baixa em todo o sistema que ocorre quando SQL Server confirma memória acima da memória máxima do servidor no modelo de memória com a configuração de política de segurança Páginas de Bloqueio na Memória. Esse sinalizador de rastreamento oferece a memória que o thread do sistema do Monitor de Recursos precisa para reduzir SQL Server consumo de memória. Para obter mais informações, confira KB5008996.

Aplica-se a: SQL Server 2019 (15.x). Para SQL Server 2022 (16.x) e versões posteriores, essa funcionalidade é habilitada por padrão e esse sinalizador de rastreamento não tem efeito. Se você quiser desabilitar esse comportamento padrão e reverter para o comportamento mais antigo, poderá usar o sinalizador de rastreamento 8125. No entanto, na maioria dos casos, essa escolha não é recomendada.

Escopo: apenas global.
8142 Esse sinalizador de rastreamento particiona a lista específica protegida por spinlock por CPU, até 64 partições. Ele deve ser usado somente em máquinas de memória grande que estejam sofrendo contenção de spinlock SOS_BLOCKALLOCPARTIALLIST com utilização elevada da CPU. Consulte também Sinalizador de rastreamento 8145. Para obter mais informações, confira KB5025808.

Aplica-se a: SQL Server 2019 (15.x) CU 21 e versões posteriores.

Escopo: apenas global.
8145 Modifica o particionamento habilitado pelo Sinalizador de rastreamento 8142 para ser por nó soft-NUMA, em vez de por CPU. O Sinalizador de rastreamento 8142 também deve ser ativado para que isso tenha efeito. Para obter mais informações, confira KB5025808.

Aplica-se a: SQL Server 2019 (15.x) CU 21 e versões posteriores.

Escopo: apenas global.
8207 Habilita atualizações singleton para Replicação transacional e CDA. As atualizações para os assinantes podem ser replicadas como um par DELETE e INSERT. Isso pode não atender às regras de negócio, como acionar um gatilho de UPDATE. Com o sinalizador de rastreamento 8207, uma atualização para uma coluna exclusiva que afeta apenas uma linha (uma atualização singleton) é replicada como uma UPDATE e não como um par DELETE ou INSERT. Se a atualização afetar uma coluna em que exista uma única restrição exclusiva ou se a atualização afetar várias linhas, a atualização ainda será replicada como um par DELETE ou INSERT. Para obter mais informações, confira uma versão arquivada do KB302341.

Escopo: apenas global.
8239 Por padrão, sys.sp_flush_commit_table_on_demand calcula um mínimo de versão de limpeza protegida e versão de limpeza segura e prossegue com a exclusão de dados da tabela de confirmação. Quando o sinalizador de rastreamento 8239 é definido, um safe_cleanup_version() valor menor que o ponto de limpeza é ignorado e a limpeza é executada após a nova execução sys.sp_flush_commit_table_on_demand. O uso incorreto desse sinalizador de rastreamento pode levar à corrupção de dados. Para obter mais informações, consulte Solucionar problemas de limpeza automática do controle de alterações.

Aplica-se a: SQL Server 2022 (16.x) 3 e versões posteriores.

Escopo: apenas global.
8284 Corrige um problema de limpeza manual em que os escalonamentos de bloqueio repetidos nas tabelas causam contenção e lentidão na limpeza dos metadados de controle de alterações expirados.

Observação: esse sinalizador de rastreamento se aplica ao SQL Server 2019 (15.x) CU 21 e versões posteriores.

Escopo: apenas global.
8285 Converte uma falha de asserção (Expressão: m_versionStatus.IsVisible ()) em uma exceção para evitar um problema de despejo em determinadas circunstâncias, quando você habilita o controle de alterações em um banco de dados com o isolamento de instantâneos ativado.

Aplicável a: SQL Server 2022 (16.x) CU 6, SQL Server 2019 (15.x) CU 21 e versões posteriores.

Escopo: apenas global.
8286 Força a consulta de limpeza a usar a dica FORCE ORDER para melhorar o desempenho. Pode ser usado com o TF 8287 para usar a dica FORCESEEK. Para obter mais informações, confira KB5022375.

Aplica-se a: SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) CU 1 e versões posteriores.

Escopo: apenas global.
8287 Força a consulta de limpeza a usar a dica FORCESEEK para melhorar o desempenho. Pode ser usado com o TF 8286 para usar a dica FORCE ORDER. Para obter mais informações, confira KB5022375.

Aplica-se a: SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) CU 1 e versões posteriores.

Escopo: apenas global.
8290 Depois que esse sinalizador de rastreamento for habilitado, o processo de limpeza automática do controle de alterações (CT) redefinirá qualquer versão de limpeza inválida para uma versão de limpeza com base no período de retenção. Depois de habilitar esse sinalizador de rastreamento, você deve permitir que o processo de limpeza automática seja executado. Para obter mais informações, consulte KB4538365.

Aplicável a: SQL Server 2017 (14.x) CU 19, SQL Server 2019 (15.x) CU 4, SQL Server 2022 (16.x) e versões posteriores.

Escopo: global ou sessão.
8531 Habilita a correção para um problema de contenção com altos KTM_RECOVERY_MANAGER tempos de espera que você pode encontrar ao executar transações distribuídas XA.

Aplica-se a: SQL Server 2019 (15.x) 29, SQL Server 2022 (16.x) 16 e versões posteriores.

Escopo: Global e somente inicialização.
8558 Habilita uma correção para garantir que você não observe casos de borda em que, quando o nível de isolamento RCSI está habilitado, uma transação às vezes não pode ver os dados mais recentes das tabelas que foram modificadas usando transações de DTC mesmo após xa_commit retornar êxito por um curto período de tempo.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Aplicável a: SQL Server 2019 (15.x) CU 18, SQL Server 2022 (16.x) e versões posteriores.

Escopo: apenas global.
8721 Relata para o log de erros quando as estatísticas de atualização automática são executadas. Para obter mais informações, confira uma versão arquivada do KB195565.

Observação: é obrigatório que o sinalizador de rastreamento 3605 esteja habilitado.

Escopo: apenas global.
8744 Desabilitar a pré-busca para o operador de Loops Aninhados.

Aviso: o uso incorreto desse sinalizador de rastreamento pode causar leituras físicas adicionais quando o SQL Server executa planos que contêm o operador Nested Loops.

Escopo: global e sessão.
8790 Faz com que o SQL Server use um plano de consulta amplo ao executar uma instrução UPDATE para atualizar índices em uma tabela. Quando você faz uma UPDATE em relação a uma coluna de índice clusterizado, o SQL Server atualiza não apenas o índice clusterizado em si, mas também todos os índices não clusterizados porque os índices não clusterizados contêm a chave de índice de cluster. Para otimizar o desempenho e reduzir a E/S aleatória, o SQL Server pode optar por classificar todos os dados de índice não clusterizados na memória e, em seguida, atualizar todos os índices pela ordem. Isso é chamado de um plano amplo (também chamado Atualização Por Índice) e pode ser forçado usando esse sinalizador de rastreamento

Escopo: global, sessão ou consulta (QUERYTRACEON).
8902 Desabilite as páginas bloqueadas para operações de E/S para sistemas high-end com cargas de trabalho de alto desempenho.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Escopo: global.
8904 Habilita uma correção para resolver uma falha de restauração paralela em uma réplica secundária desabilitando a E/S de log embutida, limitando a possibilidade de contenção de muitos trabalhos ao subconjunto de trabalhos do LogWriter em segundo plano. Para obter mais informações, consulte KB5004649 e Sinalizador de Rastreamento 8904 – Desabilitar liberações de log de banco de dados embutido.

Aplica-se apenas a: SQL Server 2019 (15.x), começando na CU 12.

Aplica-se a: SQL Server 2019 (15.x)

Escopo: apenas global.
9024 Converte um objeto de memória do pool de logs global em um objeto de memória particionada de nó NUMA. Para obter mais informações, confira KB2809338.

Observação: desde o SQL Server 2012 (11.x) Service Pack 3 e do SQL Server 2014 (12.x) Service Pack 1, esse comportamento é controlado pelo Mecanismo de Banco de Dados, e o Sinalizador de Rastreamento 9024 não tem efeito.

Escopo: apenas global.
9109 Desabilita o início da funcionalidade de notificação de consulta. Para obter mais informações, confira Restaurar ou recuperar poderá falhar ou levar muito tempo se a notificação de consulta for usada em um banco de dados.

Aviso: tenha cuidado com esse sinalizador de rastreamento. Esse sinalizador de rastreamento pode ser útil em um conjunto limitado de cenários, principalmente para solucionar problemas ou isolar um problema.

Escopo: global e sessão.
9135 Impede o uso de exibições indexadas. Para fazer isso no nível da consulta, adicione a dica de consulta USE HINT 'EXPAND VIEWS' em vez de usar esse sinalizador de rastreamento. Para obter mais informações, confira Dicas de tabela (Transact-SQL).

Aplica-se a: SQL Server 2019 (15.x) CU 23 e versões posteriores.

Escopo: apenas global.
9347 Desabilita o modo de lote para o operador de classificação. O SQL Server 2016 (13.x) introduziu um novo operador de classificação de modo de lote que aumenta o desempenho de muitas consultas analíticas. Para obter mais informações, confira KB3172787.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9348 Habilita o uso de estimativas de cardinalidade do otimizador de consulta para decidir se BULK INSERT para um índice columnstore clusterizado deve ser iniciado ou não. Se o número estimado de linhas a serem inseridas for menor que 102.400, o Mecanismo de Banco de Dados não usará BULK INSERT. Se mais de 102.400 linhas forem estimadas, um BULK INSERT será iniciado. Para obter mais informações, confira KB2998301.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9349 Desabilita o modo de lote para o operador de classificação de N principais. O SQL Server 2016 (13.x) introduziu um novo operador de classificação superior de modo de lote que aumenta o desempenho de muitas consultas analíticas.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9358 Desabilita o modo de lote para o operador de classificação. Para obter mais informações, confira KB3171555.

Observação: desde o SQL Server 2017 (14.x), esse comportamento é habilitado por padrão e esse sinalizador de rastreamento não tem nenhum efeito.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9389 Habilita a concessão de memória dinâmica adicional para operadores de modo de lote. Se uma consulta não obtiver toda a memória necessária, ela despejará os dados para tempdb, gerando E/S adicional e potencialmente afetando o desempenho da consulta. Se o sinalizador de rastreamento de concessão de memória dinâmica estiver habilitado, um operador de modo de lote poderá solicitar memória adicional e evitar despejar para tempdb se houver memória adicional disponível. Para obter mais informações, consulte a seção Efeitos de min memory per query do Guia de arquitetura de gerenciamento de memória.

Escopo: global ou sessão.
9398 Desabilita o operador Junção Adaptável que permite que a opção de um método de junção Hash ou de Loops Aninhados seja adiada até após a verificação da primeira entrada, conforme introduzido no SQL Server 2017 (14.x). Para obter mais informações, confira KB4099126.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9410 Habilita uma correção não padrão para uma consulta que usa um operador de agregação de hash e despejos. A habilitação desse sinalizador de rastreamento aumenta a memória disponível para operações de hash distintas. Para obter mais informações, confira KB3167159.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9440 Desabilita a correção do bug 2112485 e do bug 2636294. A correção de bug não se aplica ao usar o modelo de Estimativa de Cardinalidade (CE) herdado. Quando um banco de dados usa o modelo CE padrão, as estimativas de cardinalidade de junção externa podem aumentar mais do que a cardinalidade das tabelas envolvidas na junção quando os predicados de junção consistem em chaves primárias das tabelas (por exemplo, chave primária para junções de chave estrangeira). É aplicado um limite que limitará a quantidade de superestimação de cardinalidade semelhante ao limite de superestimação existente no EC legado para esse cenário.

Observação: esse sinalizador de rastreamento só se aplica a bancos de dados com um nível de compatibilidade de 160 ou inferior.

Aplica-se a: SQL Server 2019 (15.x) CU 20, SQL Server 2022 (16.x) CU 9 e versões posteriores.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9453 Desabilita a execução do modo de lote. Para obter mais informações, confira KB4016902.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9471 Faz com que o SQL Server gere um plano usando a seletividade mínima para filtros de tabela única no modelo de estimativa de cardinalidade do otimizador de consulta do SQL Server 2014 (12.x) e das versões posteriores.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'ASSUME_MIN_SELECTIVITY_FOR_FILTER_ESTIMATES' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Observação: esse sinalizador de rastreamento não se aplica ao CE versão 70. Nesse caso, use o sinalizador de rastreamento 4137.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9476 Faz com que o SQL Server gere um plano usando a pressuposição de confinamento simples em vez da pressuposição de confinamento base padrão no modelo de estimativa de cardinalidade do otimizador de consulta do SQL Server 2014 (12.x) e das versões posteriores. Para obter mais informações, consulte Suposição de contenção de junção no Novo Avaliador de Cardinalidade degrada o desempenho da consulta.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'ASSUME_JOIN_PREDICATE_DEPENDS_ON_FILTERS' dica de consulta em vez de usar esse sinalizador de rastreamento.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9481 Define o modelo de CE (estimativa de cardinalidade) do otimizador de consulta para SQL Server 2012 (11.x) e anterior (versão 70), independentemente do nível de compatibilidade do banco de dados. Para obter mais informações, consulte Dicas de consulta.

A partir do SQL Server 2016 (13.x), para fazer isso no nível do banco de dados, consulte a opção LEGACY_CARDINALITY_ESTIMATION em ALTER DATABASE SCOPED CONFIGURATION.

A partir do SQL Server 2016 (13.x) Service Pack 1, para fazer isso no nível da consulta, adicione a USE HINT 'FORCE_LEGACY_CARDINALITY_ESTIMATION' dica de consulta em vez de usar esse sinalizador de rastreamento.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9485 Desabilita a permissão SELECT para DBCC SHOW_STATISTICS. Para obter mais informações, confira KB2683304.

Escopo: apenas global.
9488 Define a estimativa fixa das funções com valor de tabela para o padrão 1 (correspondente ao padrão no modelo de estimativa de cardinalidade do otimizador de consulta do SQL Server 2008 R2 (10.50.x) e das versões anteriores), ao usar o modelo de estimativa de cardinalidade do otimizador de consulta do SQL Server 2012 (11.x) e das versões posteriores.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9495 Desabilita o paralelismo durante a inserção para operações INSERT...SELECT e aplica-se às tabelas de usuário e temporárias. Para obter mais informações, confira KB3180087.

Escopo: global ou sessão.
9567 Habilita a compactação do fluxo de dados para Grupos de Disponibilidade AlwaysOn durante a propagação automática. A compactação pode reduzir significativamente o tempo de transferência durante a propagação automática e aumentar a carga no processador. Para obter mais informações, consulte Usar a propagação automática para inicializar um grupo de disponibilidade AlwaysOn e Ajustar a compactação para o grupo de disponibilidade.

Escopo: global ou sessão.
9571 Desabilita a propagação automática de grupos de disponibilidade para o caminho do banco de dados padrão. Para obter mais informações, consulte Layout de disco.

Escopo: global ou sessão.
9576 Desabilita a coleta de erros aprimorada para failovers de grupo de disponibilidade introduzidos no SQL Server 2016 (13.x) Service Pack 1 CU 10, no SQL Server 2016 (13.x) Service Pack 2 CU 2 e no SQL Server 2017 (14.x) CU 9. Para obter mais informações, confira Grupos de disponibilidade do SQL Server – Failover de nível de banco de dados aprimorado.

Escopo: apenas global.
9591 Desabilita a compactação do bloco de logs em Grupos de Disponibilidade AlwaysOn. A compactação do bloco de log sé o comportamento padrão usado com réplicas síncronas e assíncronas no SQL Server 2012 (11.x) e no SQL Server 2014 (12.x). No SQL Server 2016 (13.x), a compactação é usada somente com a réplica assíncrona.

Escopo: global ou sessão.
9592 Habilita a compactação do fluxo de logs para grupos de disponibilidade síncronos. Este recurso está desabilitado por padrão em grupos de disponibilidade síncronos, pois a compactação adiciona latência. Para obter mais informações, veja Ajustar a compactação do grupo de disponibilidade.

Escopo: global ou sessão.
9708 Habilita a coleta de métricas de publicação de eventos para sessões de evento estendidas. Para mais informações, confira sys.dm_xe_session_events.

Aplica-se a : SQL Server 2022 (16.x) e versões posteriores.

Escopo: apenas global.
9714 Habilita o log de erros do SQL Server para registrar o início ou a parada de sessões de Eventos Estendidos (XEvents).

Aplica-se a: SQL Server 2022 (16.x) CU15 e versões posteriores.

Escopo: apenas global.
9810 Desabilita a recuperação da memória TLS (Armazenamento Local de Thread) pelo mecanismo OLTP In-Memory. No SQL Server 2019 (15.x) e versões anteriores, não recuperar a memória TLS é o comportamento padrão. No SQL Server 2022 (16.x), foi introduzida uma nova otimização de memória que faz com que o mecanismo OLTP In-Memory recupere a memória TLS e reduza a possibilidade de problemas de memória insuficiente. Esse sinalizador de rastreamento é revertido para o comportamento anterior ao SQL Server 2022 (16.x).

Aplica-se a : SQL Server 2022 (16.x) e versões posteriores.

Escopo: apenas global.
9929 Reduz os arquivos de ponto de verificação na memória para 1 MB. Para obter mais informações, confira KB3147012.

Escopo: apenas global.
9939 Habilita os planos paralelos e a verificação paralela das tabelas com otimização de memória e das variáveis de tabela em operações de DML que referenciam tabelas com otimização de memória ou variáveis de tabela, desde que elas não sejam o destino da operação de DML no SQL Server 2016 (13.x). Para obter mais informações, confira KB4013877.

Observação: o sinalizador de rastreamento 9939 não será necessário se o sinalizador de rastreamento 4199 também estiver habilitado explicitamente.

Escopo: global, sessão ou consulta (QUERYTRACEON).
9944 Habilita uma correção não padrão para tempo de recuperação de banco de dados lento quando um banco de dados tem um grande número de tabelas com otimização de memória ou tipos de tabela com otimização de memória e o bloqueio com tipos de espera PREMPTIVE_OS_FINDFILE ou PREEMPTIVE_OS_CREATEDIRECTORY pode ser observado. Para obter mais informações, confira KB4090789 e KB4052338.

Para SQL Server no Linux, esse sinalizador de rastreamento só se aplica ao SQL Server 2022 (16.x) 13 e versões posteriores.

Escopo: apenas global.
9953 Reutiliza os agendadores ocultos usados pelas tabelas Otimizadas para Memória.

Aplica-se a:: SQL Server 2019 (15.x) CU 20 e versões posteriores e SQL Server 2022 (16.x) CU 3 e versões posteriores.

Escopo: apenas global.
10054 Desabilita a regra do otimizador de consultas do SQL Server que descorrelaciona subconsultas em predicados OR em junções externas.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Observação: teste essa opção completamente antes de implantá-la em um ambiente de produção.

Escopo: global, sessão ou consulta (QUERYTRACEON).
10204 Desabilita a mesclagem/recompactação durante a reorganização do índice columnstore. No SQL Server 2016 (13.x), quando um índice columnstore é reorganizado, há uma nova funcionalidade para mesclar automaticamente todos os grupos de linhas compactados pequenos em rowgroups compactados maiores e recompactar todos os rowgroups que têm um grande número de linhas excluídas.

Observação: o sinalizador de rastreamento 10204 não se aplica a índices columnstore criados em tabelas com otimização de memória.

Escopo: global ou sessão.
10207 Permite que as verificações de um CCI (índice columnstore clusterizado) ignorem segmentos ou metadados corrompidos, permitindo a recuperação de dados de um CCI corrompido. Para obter mais informações, confira KB3067257.

Escopo: global ou sessão.
10316 Permite a criação de índices adicionais na tabela temporal interna de preparo com otimização de memória, além do padrão. Se você tiver um padrão de consulta específico que inclua colunas que não são cobertas pelo índice padrão, considere adicionar índices adicionais.

Observação: as tabelas temporais de versão do sistema para tabelas com otimização de memória são projetadas para fornecer alta produtividade transacional. A criação de índices adicionais pode introduzir sobrecarga para operações DML que atualizam ou excluem linhas na tabela atual. Com os índices adicionais, você deve buscar encontrar o equilíbrio certo entre desempenho das consultas temporais e a sobrecarga adicional de DML.

Escopo: global ou sessão.
10460 Faz com que o recurso SQL Server Stretch Database provisione uma tabela estendida na camada de serviço de Hiperescala do Banco de Dados SQL do Azure.

Aplica-se a: SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 18, SQL Server 2022 (16.x) e versões posteriores.

Começando com o SQL Server 2017 (14.x) CU 31, SQL Server 2019 (15.x) CU 18 e SQL Server 2022 (16.x), o comportamento padrão do recurso Stretch Database provisiona uma tabela estendida em uma camada de serviço do Banco de Dados SQL do Azure Standard (S3).

Escopo: apenas global.
11023 Desabilita o uso da última taxa de amostra persistente para todas as atualizações de estatísticas subsequentes em que uma taxa de amostra não está especificada explicitamente como parte da instrução UPDATE STATISTICS. Para obter mais informações, confira KB4039284.

Escopo: apenas global.
11024 Permite disparar a atualização automática de estatísticas quando a contagem de modificação de qualquer partição exceder o limite local. Para obter mais informações, confira KB4041811.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2, SQL Server 2017 (14.x) CU 3 e versões posteriores.

Escopo: apenas global.
11047 Aplica o tempo limite padrão definido por query wait (s) ou a configuração do Resource Governor REQUEST_MEMORY_GRANT_TIMEOUT_SEC a operações de build de índice columnstore. Para obter mais informações, confira KB4480641.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2 CU 5, SQL Server 2017 (14.x) CU 14 e versões posteriores.

Escopo: apenas global.
11064 Aprimora a escalabilidade das operações de carregamento de dados em índices columnstore otimizando a distribuição de memória entre as instruções SELECT e INSERT. Para saber mais sobre como carregar dados em um índice columnstore, confira Índices columnstore – diretrizes de carregamento de dados.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Escopo: apenas global.
11068 Usa o valor de MAXDOP (grau máximo de paralelismo) configurado do servidor, do banco de dados ou do pool de recursos para operações de inserção de índice columnstore. Para obter mais informações sobre como substituir graus de paralelismo, confira o Guia de arquitetura de processamento de consultas.

Importante: esse sinalizador de rastreamento só será eficaz se o sinalizador de rastreamento 11064 também estiver habilitado.

Importante: use esse sinalizador de rastreamento quando houver preferência por cargas de dados mais rápidas em detrimento de manter a qualidade do segmento columnstore. Por exemplo, usar esse sinalizador de rastreamento ao carregar 1.048.577 linhas em um columnstore pode resultar em mais de um rowgroup compactado, se a operação de inserção estiver sendo executada no modo paralelo. Sem esse sinalizador de rastreamento, a operação de inserção resultaria em um rowgroup compactado.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores.

Escopo: apenas global.
11561 Desabilita a autenticação do Microsoft Entra para replicação.

Observação: esse sinalizador de rastreamento se aplica ao SQL Server 2022 (16.x) CU 6 e versões posteriores.

Escopo: global ou sessão.
11631 Um ALTER INDEX ... REORGANIZE e a tarefa de mesclagem em segundo plano limpam as linhas excluídas em um grupo de linhas do índice columnstore somente quando um determinado limite de linhas tiver sido excluído desse grupo de linhas. O limite padrão é de 10% do limite máximo de linhas (1 milhão) ou de 100.000 linhas.

Esse sinalizador de rastreamento altera o limite para 10% do total de linhas atuais em um grupo de linhas do columnstore. Por exemplo, se um grupo de linhas contém 20 mil linhas, o limite é de dois mil linhas excluídas para que esse grupo de linhas seja considerado um candidato para limpeza. Para obter mais informações, confira KB5000895.

Aplica-se a: SQL Server 2019 (15.x) CU 9 e versões posteriores.

Escopo: apenas global.
11634 Um ALTER INDEX ... REORGANIZE e a tarefa de mesclagem em segundo plano limpam as linhas excluídas em um grupo de linhas do índice columnstore somente quando um determinado limite de linhas tiver sido excluído desse grupo de linhas. O limite padrão é de 10% do limite máximo de linhas (1 milhão) ou de 100.000 linhas.

Esse sinalizador de rastreamento altera o limite para 1% do total de linhas atuais em um grupo de linhas do columnstore. Se habilitado junto com o sinalizador de rastreamento 11631, ele será 1% do número atual de linhas em um rowgroup, em vez de 1% de 1 milhão de linhas. Para obter mais informações, confira KB5000895.

Aplica-se a: SQL Server 2019 (15.x) CU 9 e versões posteriores.

Escopo: apenas global.
12310 Aumenta os limites de controle de fluxo para o número de mensagens que cada porta de grupo de disponibilidade permite. Esses limites são os novos valores padrão no SQL Server 2022 (16.x) e, portanto, o sinalizador de rastreamento não tem efeito nessa versão. Para obter mais informações, consulte Portões de controle de fluxo.

Aplicável a: SQL Server 2019 (15.x) CU9, SQL Server 2017 (14.x) CU 18, SQL Server 2016 (13.x) SP 1 CU 16 e versões posteriores.

Escopo: apenas global.
12324 Resolve um problema introduzido com alterações no recurso de link para Instância Gerenciada de SQL do Azure, o que impede que grupos de disponibilidade sincronizem quando as réplicas estão em execução em atualizações cumulativas diferentes. Para obter mais informações, confira KB5024276.

Aplica-se a: SQL Server 2019 (15.x) CU 20 e versões posteriores.

Escopo: apenas global.
12481 Desabilita o registro em log de informações de auditoria para permissões externas no campo external_policy_permission_checked de registros de auditoria. Para obter mais informações, confira KB5022375.

Aplica-se a: SQL Server 2022 (16.x) CU 1 e versões posteriores.

Escopo: apenas global.
12502 Desabilita as políticas de autorização externa para instâncias do SQL Server no local.

Aplica-se a: SQL Server 2022 (16.x) CU 5 e versões posteriores.

Escopo: apenas global.
12618 Habilita o modelo de correção automática de plano (APC) do recurso de ajuste automático para executar múltiplas verificações consecutivas de regressão de plano no mesmo plano, o que permite acumular estatísticas adicionais para avaliação pelo novo modelo. Para obter mais informações, confira KB5026717.

Aplica-se a: SQL Server 2022 (16.x) CU 4 e versões posteriores.

Escopo: apenas global.
12656 Habilita o modelo da APC (correção automática de plano) do recurso de ajuste automático para usar uma verificação baseada em tempo da regressão do plano, que ocorrerá cinco minutos após a detecção de uma alteração de plano, o que evita o desvio das verificações de regressão por consultas executadas rapidamente. Isso permite que a APC leve em conta as execuções de consulta que podem ser executadas por mais tempo ou são propensas a atingir o tempo limite devido a uma alteração de plano. Para obter mais informações, confira KB5026717.

Aplica-se a: SQL Server 2022 (16.x) CU 4 e versões posteriores.

Escopo: apenas global.
13116 Desabilita a correção para o bug 13685819. Use esse sinalizador de rastreamento se, depois de aplicar o SQL Server 2016 (13.x) Service Pack 2 CU 16, você encontrar um problema no qual as consultas DML (inserir/atualizar/excluir) que usam planos paralelos não podem concluir qualquer execução e se você encontrar esperas do tipo HP_SPOOL_BARRIER.

Aplica-se a: SQL Server 2016 (13.x) Service Pack 2 CU 16.

Escopo: apenas global.
13127 Habilita otimizações adicionais de padrões correspondentes de cadeia de caracteres.

Aplica-se a: SQL Server 2019 (15.x) e versões posteriores e se destina a sistemas de alto nível com cargas de trabalho com alto desempenho.

Escopo: global ou sessão.
13156 Desabilita a correção para o problema "Invocação de UDF com um grande número de reavaliações de expressão escalar pode causar um erro de agendador sem rendimento". Às vezes, essa correção original pode causar uma regressão de desempenho. Para obter mais informações, confira KB4538581.

Escopo: apenas global.
15025 Desabilita o acesso do Azure Key Vault necessário para um VLF (Arquivo de Log Virtual) recém-criado, que permite que as cargas de trabalho do cliente de alto volume continuem sem interrupção. Depois que esse sinalizador de rastreamento estiver habilitado, SQL Server usará o Gerenciamento Extensível de Chaves para criptografia e geração de chaves e não entrará em contato com o Azure Key Vault durante a criação do VLF. Para obter mais informações, consulte CORREÇÃO: problemas de acessibilidade do banco de dados com cargas de trabalho de clientes de alto volume que usam EKM para criptografia e geração de chaves.

Aplica-se a: SQL Server 2019 (15.x) CU 19, SQL Server 2022 (16.x) CU 1 e versões posteriores.

Escopo: apenas global.
15096 Desabilite as operações de contagem de população (popcnt) com conjuntos de instruções AVX-512.

Aplica-se a : SQL Server 2022 (16.x) e versões posteriores.

Escopo: global ou sessão.
15097 Habilita o suporte ao AVX-512 para o SQL Server 2022 (16.x) e versões posteriores.

Importante: é recomendável habilitar o suporte do AVX-512 para as seguintes CPUs:

– Intel Ice Lake e posterior
– AMD EYPC Genoa e posterior

Aplica-se a : SQL Server 2022 (16.x) e versões posteriores.

Escopo: global ou sessão.
15212 Desabilita mensagens de temporizador do Service Broker que estão agindo como uma notificação detalhada sobre o evento de tempo limite. As mensagens afetadas com esse sinalizador de rastreamento são: SSBDT: Dialog timer delete during registration na sequência de Limpeza de Diálogo do Service Broker e SSBDT: Dialog timer delete during dispatch na sequência de Fechamento de Diálogo do Service Broker. Depois que esse sinalizador de rastreamento estiver habilitado, a impressão dessas mensagens informais será ignorada.

Aplica-se a : SQL Server 2022 (16.x) e versões posteriores.

Escopo: apenas global.
15915 Habilita uma correção para um problema de desempenho que você pode encontrar quando sp_lock é chamado com frequência de várias conexões, o que pode causar um vazamento de memória. A memória não é limpa até que você reinicie o serviço SQL Server.

Aplica-se a: SQL Server 2019 (15.x) 29 e versões posteriores.

Escopo: apenas global.
16301 Ignora a operação de E/S de bloqueio no sp_server_diagnostics procedimento armazenado. Depois de ativar esse sinalizador de rastreamento, o sp_server_diagnostics procedimento armazenado não coletará algumas estatísticas de E/S, mas pode ajudar o AG (grupo de disponibilidade) Always On a evitar a reinicialização e o failover quando houver um longo atraso no sistema de E/S.

Aplica-se a: SQL Server 2022 (16.x) 12 e versões posteriores.

Escopo: apenas global.