SQL Server query optimizer hotfix rastreamento sinalizador 4199 modelo de serviço

IMPORTANTE: Este artigo foi traduzido pelo software de tradução automática da Microsoft e eventualmente pode ter sido editado pela Microsoft Community através da tecnologia Community Translation Framework (CTF) ou por um tradutor profissional. A Microsoft oferece artigos traduzidos automaticamente por software, por tradutores profissionais e editados pela comunidade para que você tenha acesso a todos os artigos de nossa Base de Conhecimento em diversos idiomas. No entanto, um artigo traduzido pode conter erros de vocabulário, sintaxe e/ou gramática. A Microsoft não é responsável por qualquer inexatidão, erro ou dano causado por qualquer tradução imprecisa do conteúdo ou por seu uso pelos nossos clientes.

Clique aqui para ver a versão em Inglês deste artigo: 974006
INTRODUÇÃO
Versões do Microsoft SQL Server mais tarde do que o SQL Server 2000 Service Pack 3 (SP3) entregue a maioria dos hotfixes para o otimizador de consultas em um estado desativado por padrão para impedir que os clientes de produção vejam esperado alterações no plano que possam causar perdas de desempenho. A princípio, cada hotfix foi entregue em um sinalizador de rastreamento separado. Mais tarde, essa prática foi alterada para que a maioria dos sinalizadores foram combinados em um sinalizador de rastreamento único (4199). Esta nova prática foi iniciada em várias versões, iniciando com as seguintes atualizações:
  • SQL Server 2005 Service Pack 3 (SP3), atualização cumulativa 6
  • Pacote de atualização cumulativa 7 do SQL Server 2008 Service Pack 1 (SP1)
  • SQL Server 2008 R2 (RTM)
Sinalizador de rastreamento 4199 foi usado para coletar os hotfixes que deveriam ser ativado por padrão em uma versão futura, enquanto outros sinalizadores de rastreamento usados para situações em que uma correção não foi destinado a tornar-se ativado por padrão no formulário atual. Começando com a versão RTM do SQL Server 2016, a configuração de COMPATIBILITY_LEVEL do banco de dados será usado Ativar rastreamento sinalizador de hotfixes relacionados a 4199 em por padrão. Este artigo descreve a mecânica e a diretiva de afetar como plano hotfixes serão entregues para 2016 do SQL Server e versões posteriores.
Mais Informações
No SQL Server 2016, rastreamento sinalizador 4199 os hotfixes que são feitos em versões anteriores do SQL Server será ficar ativados em banco de dados COMPATIBILITY_LEVEL 130 sem o sinalizador de rastreamento 4199 ativado. Sinalizador de rastreamento 4199 será usada para liberar os hotfixes do SQL Server 2016 futuros para bancos de dados usando o nível de compatibilidade 130. Porque o sinalizador de rastreamento 4199 é recomendada apenas para os clientes que estão vendo a problemas específicos de desempenho, recomenda-se remover o sinalizador de rastreamento 4199 após a migração de seus bancos de dados para o nível de compatibilidade mais recente porque o sinalizador de rastreamento 4199 será reutilizada para futuras correções que podem não se aplicar ao seu aplicativo e podem causar alterações no desempenho plano inesperado em um sistema de produção. Isso significa que diferentes rastreamento 4199 sinalizador hotfixes estão habilitados para cada nível de compatibilidade é suportado no lançamento de um determinado produto.

Observação: Por padrão, os bancos de dados criados no SQL Server 2016 usam o nível de compatibilidade 130 e tem uma nova lógica de optimizer já ativada.

A principal vantagem desse modelo é que ele reduz o risco para os sistemas de produção durante o processo de atualização. Essa abordagem separa a instalação de uma nova versão principal do SQL Server da ativação automática de todas as novas alterações de processador de consulta. Como upgrades de versão principal alterar o formato de arquivo e não são reversíveis, é uma boa idéia usar a configuração de COMPATIBILITY_LEVEL, pois isso permite que um cliente fazer o downgrade rapidamente se for encontrado um problema de desempenho do plano inesperado durante uma atualização. Se um cliente localiza um plano inesperado alterar que bloqueia uma atualização do aplicativo, o cliente pode aliviar a situação aplicando uma dica de plano adequado, usando o armazenamento de consulta para forçar o plano anterior ou pode facilitar a situação entre em contato com o Atendimento Microsoft para ajudar com o problema para fornecer uma solução ou o hotfix. Quando todos os problemas são reduzidos, pode continuar a atualização. Os clientes devem integrar esse recurso em sua atualização de planejamento para 2016 do SQL Server.

A tabela a seguir explica o modelo de como sinalizador de rastreamento 4199 funcionará a partir do SQL Server 2016.

Configuração Nível de compatibilidade do SQL4199 do sinalizador de rastreamento Hotfixes do Optimizer antes da RTM do SQL Server 2016Hotfixes do Optimizer após a versão RTM do SQL Server 2016
1. 120LogoffDesativadoDesativado
2. 120EmHabilitadoDesativado
3. 130LogoffAtivado por nível de compatibilidadeDesativado
4.130EmAtivado por nível de compatibilidadeAtivado por nível de compatibilidade
Observação: Configuração n º 3 é recomendado para clientes que estiver atualizando recentemente para 2016 do SQL Server.

Para as versões principais após 2016 do SQL Server, a Microsoft planeja continuar usando esse modelo de serviço para hotfixes optimizer. Por padrão, ou cada versão, qualquer sinalizador de rastreamento 4199 hotfixes da versão anterior serão ativados no próximo nível de compatibilidade. Isso significa que o estado recomendado para clientes após a migração para o nível de compatibilidade mais recente será com o sinalizador de rastreamento 4199 desativado. Hotfixes mais recentes usaria o sinalizador de rastreamento 4199 habilitar correções para os clientes que possuem para ativar os hotfixes específicos em um aplicativo. Recomenda-se desativar o sinalizador de rastreamento 4199 depois que um aplicativo é atualizado para o nível de compatibilidade mais recente para evitar alterações inesperado optimizer futuras habilitadas inesperadamente em um aplicativo.

Observação: Enquanto muitos optimizer hotfixes estão habilitados no sinalizador de rastreamento 4199, alguns usam outros sinalizadores de rastreamento. Sinalizador de rastreamento 4199 sinalizadores de rastreamento historicamente encoberto que são amplamente aplicáveis e provavelmente são habilitados por padrão em uma versão futura. Sinalizadores de rastreamento alternativos são usados nos hotfixes onde as condições são muito específicas para apenas alguns clientes, onde a correção pode causar perdas de desempenho em outros tipos de aplicativos, ou onde a funcionalidade interna poderá ver as alterações antes que ele esteja pronto para se tornar habilitada para todos. A Microsoft continuará a usar outros sinalizadores de rastreamento conforme necessário para atender ao produto.

Observação: Este artigo concentra-se no modelo para liberar o sinalizador de rastreamento 4199 hotfixes no nível de compatibilidade mais recente do produto mais recente. (No momento da publicação, isso é SQL Server 2016.) Hotfixes do Optimizer pode ser lançados em versões mais antigas no mercado do SQL Server ou em níveis mais baixos compatibilidade (120 ou anteriores) do SQL Server 2016. Microsoft avaliará cada caso e determinar se deve usar o sinalizador de rastreamento 4199 ou um sinalizador de rastreamento diferentes. Porque o hotfix não alterações também serão habilitadas quando uma mudança for feita para um nível de compatibilidade posterior, não há nenhuma promessa específica que nenhuma alteração de plano irá ocorrer durante uma atualização (com ou sem o sinalizador de rastreamento 4199). Os clientes sempre devem testar as alterações para o nível de compatibilidade com cuidado para aplicativos de produção e devem usar tecnologias de redução, como armazenamento de consulta, se houver um problema de desempenho relacionados da opção de plano.

Para referência, a tabela a seguir lista os sinalizadores de rastreamento que foram usados para os hotfixes do processador de consulta antes da introdução do sinalizador de rastreamento 4199.
Artigo da Base de Conhecimento MicrosoftSinalizador de rastreamento
3185304101
9401284102
9199054103
9203464104
9203474105
9224384106
9238494107
9260244108
9267734109
9337244110
9340654111
9467934115
9508804116
9484454117
9426594119
9539484120
9424444121
9460204122
9482484124
9498544125
9590134126
9535694127
955694
957872
4128
9585474129
9566864131
9580064133
9607704135 *

SQL Server 2005

A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 6 para SQL Server 2005 Service Pack 3. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento Microsoft:
974648 Pacote de atualização cumulativa 6 para SQL Server 2005 Service Pack 3
Observação: Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server 2005 anteriores corrigir lançamento. Recomendamos que você considere a aplicação a versão mais recente de correção que contém esse hotfix. Para obter mais informações, clique no número de artigo a seguir para visualizar o artigo na Base de Conhecimento Microsoft:
960598 Compilações de SQL Server 2005 que foram lançadas após o lançamento do SQL Server 2005 Service Pack 3
Os hotfixes do Microsoft SQL Server 2005 são criados para service packs específicos do SQL Server. Você deve aplicar um hotfix do SQL Server 2005 Service Pack 3 para uma instalação do SQL Server 2005 Service Pack 3. Por padrão, todos os hotfixes fornecidos em um service pack do SQL Server estão incluídos no próximo service pack do SQL Server.

SQL Server 2008

A correção para esse problema foi lançado pela primeira vez na atualização cumulativa 7. Para obter mais informações sobre como obter esse pacote de atualização cumulativa para SQL Server 2008, clique no número abaixo para ler o artigo na Base de dados de Conhecimento Microsoft:
973601 Pacote de atualizações cumulativas 7 para SQL Server 2008
Observação: Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server de 2008 lançamento de correção. Recomendamos que você considere a aplicação a versão mais recente de correção que contém esse hotfix. Para obter mais informações, clique no número de artigo a seguir para visualizar o artigo na Base de Conhecimento Microsoft:
956909 O SQL Server 2008 compilações disponibilizadas após o lançamento do SQL Server 2008

SQL Server 2008 SP1

A correção para esse problema foi lançada pela primeira vez na atualização cumulativa 7 para SQL Server 2008 Service Pack 1. Para obter mais informações sobre esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento Microsoft:
979065 Pacote de atualizações cumulativas 7 para SQL Server 2008 Service Pack 1
Observação: Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e todas as correções de segurança que foram incluídas com o SQL Server de 2008 lançamento de correção. Recomendamos que você considere a aplicação a versão mais recente de correção que contém esse hotfix. Para obter mais informações, clique no número de artigo a seguir para visualizar o artigo na Base de Conhecimento Microsoft:
970365 O SQL Server 2008 compilações disponibilizadas após o lançamento do SQL Server 2008 Service Pack 1
Os hotfixes do Microsoft SQL Server 2008 são criados para service packs específicos do SQL Server. Você deve aplicar um hotfix do SQL Server 2008 Service Pack 1 para uma instalação do SQL Server 2008 Service Pack 1. Por padrão, todos os hotfixes fornecidos em um service pack do SQL Server estão incluídos no próximo service pack do SQL Server.

SQL Server 2008 R2

Na versão de lançamento do SQL Server 2008 R2, o sinalizador de rastreamento 4135 foi inadvertidamente omitido da lista de sinalizadores de rastreamento que podem ser controlados por - T4199. No entanto, isso foi corrigido na atualização cumulativa 1 para SQL Server 2008 R2. Portanto, para esta compilação e para o SQL Server 2005 e o SQL Server 2008 edições, - T4199 será suficiente para permitir que esse e outros sinalizadores de rastreamento estão listados neste artigo.

SQL Server 2012 e versões posteriores

Sinalizador de rastreamento 4199 está incluído nas versões do SQL Server 2012 e versões posteriores.

Como ativar o sinalizador de rastreamento 4199

Você pode ativar o sinalizador de rastreamento 4199 na inicialização ou em uma sessão de usuário. O sinalizador de traço tem efeito no nível global ou nível de sessão. Para ativar o sinalizador de rastreamento 4199, use o DBCC TRACEON comando ou uso – T 4199 como parâmetro de inicialização.

Se o DBCC TRACEON\TRACEOFF for usado isso não regenerar um novo plano armazenado em cache para procedimentos armazenados. Planos podem estar no cache que foram criados sem o sinalizador de rastreamento.

Para obter informações detalhadas sobre como ativar ou desativar sinalizadores de rastreamento e para obter explicações sobre sinalizadores de rastreamento global e nível de sessão, consulte os seguintes tópicos nos Manuais Online do SQL Server:
Referências
Para obter mais informações sobre o esquema para nomeação para atualizações do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento Microsoft:
822499 Novo esquema para nomeação para pacotes de atualização de software do Microsoft SQL Server
Para obter mais informações sobre a terminologia de atualização de software, clique no número abaixo para ler o artigo na Base de Conhecimento da Microsoft:
824684 Descrição da terminologia padrão utilizada para descrever as atualizações de software da Microsoft

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 974006 - Última Revisão: 07/10/2015 03:01:00 - Revisão: 8.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Standard X64 Edition, Microsoft SQL Server 2005 Enterprise X64 Edition, Microsoft SQL Server 2005 Standard Edition for Itanium Based Systems, Microsoft SQL Server 2005 Enterprise Edition for Itanium Based Systems, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2008 Standard, Microsoft SQL Server 2008 Developer, Microsoft SQL Server 2008 Enterprise, Microsoft SQL Server 2008 Workgroup, Microsoft SQL Server 2008 R2 Datacenter, Microsoft SQL Server 2008 R2 Developer, Microsoft SQL Server 2008 R2 Enterprise, Microsoft SQL Server 2008 R2 Express, Microsoft SQL Server 2008 R2 Standard, Microsoft SQL Server 2008 R2 Workgroup, Microsoft SQL Server 2012 Developer, Microsoft SQL Server 2012 Enterprise, Microsoft SQL Server 2012 Express, Microsoft SQL Server 2012 Standard, Microsoft SQL Server 2014 Developer, Microsoft SQL Server 2014 Enterprise, Microsoft SQL Server 2014 Express, Microsoft SQL Server 2014 Standard, Microsoft SQL Server 2016 Developer, Microsoft SQL Server 2016 Enterprise, Microsoft SQL Server 2016 Standard

  • kbsurveynew kbexpertiseadvanced kbqfe kbfix kbmt KB974006 KbMtpt
Comentários