CORREÇÃO: O desempenho ruim quando funções com valor de tabela usam muitas variáveis de tabela no SQL Server 2008 R2 ou SQL Server 2008

Traduções deste artigo Traduções deste artigo
ID do artigo: 2566163 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Suponha que você usa muitas variáveis de tabela em funções com valor de tabela do Microsoft SQL Server 2008 R2 ou no Microsoft SQL Server 2008. Nessa situação, você enfrenta alta contenção para sys.sysmultiobjrefs[2:1:103] tabela no banco de dados Tempdb . Identificador do perfil de serviço aguarda o PAGELATCH_EX ou PAGELATCH_SH de espera tipos que trava da tabela sys.sysmultiobjrefs em grandes cadeias de bloqueio.

Causa

Esse problema ocorre porque a função interna que lida com dependência de objeto bloqueia e exclui as linhas, embora, na maioria das vezes, não há linhas existem. Portanto, ocorrem muitas travas de página exclusivo.

Resolução

Informações da atualização cumulativa

10 De atualização cumulativa para SQL Server 2008 Service Pack 3

A correção para esse problema foi lançada em 10 de atualização cumulativa. Para obter mais informações sobre como obter esse pacote de atualização cumulativa para o SQL Server 2008 Service Pack 3, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2814783 Pacote de atualizações cumulativas 10 para o SQL Server 2008 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 anterior SQL Server 2008 Service Pack 3 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 abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2629969 O SQL Server 2008 compilações disponibilizadas após o lançamento do SQL Server 2008 Service Pack 3

SQL Server 2008 R2 Service Pack 1

A correção para esse problema foi lançada em 3 de atualização cumulativa para SQL Server 2008 R2 Service Pack 1. Para obter mais informações sobre como obter esse pacote de atualizações cumulativas, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2591748 Pacote de atualização cumulativo 3 para SQL Server 2008 R2 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 correções de segurança que foram incluídas com o SQL Server 2008 R2 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 abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2567616 O SQL Server 2008 R2 compilações lançadas após o lançamento do SQL Server 2008 R2 Service Pack 1

SQL Server 2008 R2

A correção para esse problema foi lançada primeiro na atualização cumulativa 9. Para obter mais informações sobre como obter esse pacote de atualização cumulativa para o SQL Server 2008 R2, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
2567713 Pacote de atualização cumulativa 9 para o SQL Server 2008 R2
Observação Como as compilações são cumulativas, cada novo lançamento de correções contém todos os hotfixes e correções de segurança que foram incluídas com o SQL Server 2008 R2 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 abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
981356 O SQL Server 2008 R2 compilações lançadas após o lançamento do SQL Server 2008 R2

Informações sobre hotfix

Um hotfix compatível está disponível na Microsoft. No entanto, esse hotfix destina-se apenas a corrigir o problema descrito neste artigo. Aplique este hotfix somente aos sistemas que apresentarem esse problema específico.

Se o hotfix estiver disponível para download, há uma seção "Download de Hotfix disponível" na parte superior deste artigo da Base de Dados de Conhecimento. Se esta seção não for exibida, envie uma solicitação ao Serviço de Suporte e Atendimento ao Cliente Microsoft para obter o hotfix.

Observação Se ocorrerem problemas adicionais ou qualquer solução de problemas for necessária, talvez você precise criar uma solicitação de serviço separada. Os custos normais de suporte serão aplicados a perguntas de suporte adicionais e problemas que não se qualificam para esse hotfix específico. Para obter uma lista completa dos números de telefone de suporte e atendimento ao cliente da Microsoft ou para criar uma solicitação de serviço separada, visite o seguinte site da Microsoft:
http://support.microsoft.com/contactus/?WS=support
Observação O formulário "Download de Hotfix disponível" exibe os idiomas para os quais o hotfix está disponível. Se você não vir seu idioma, é porque um hotfix não está disponível para esse idioma.

Pré-requisitos

Para aplicar esse hotfix, você deve ter o SQL Server 2008 R2 ou SQL Server 2008 instalado.

Requisito de reinicialização

Você deve reiniciar o computador após aplicar esse hotfix.

Informações de substituição do hotfix

Esse hotfix não substitui um hotfix lançado anteriormente.

Informações sobre o arquivo

A versão global deste hotfix apresenta os atributos de arquivo (ou atributos de arquivo posteriores) listados na tabela a seguir. As datas e horas desses arquivos estão listadas em formato Tempo Universal Coordenado (UTC). Quando você exibir as informações do arquivo, ele é convertido em hora local. Para localizar a diferença entre o UTC e a hora local, use o Fuso horário Guia de Data e hora item no painel de controle.

Informações de arquivo do SQL Server 2008
Recolher esta tabelaExpandir esta tabela
Nome do arquivoVersão do arquivoTamanho do arquivoDataHoraPlataforma
Sqlservr.exe2007.100.5831.043,080,70425-Jan-201315:14x86
Sqlservr.exe2007.100.5831.058,131,45625-Jan-201315:16x64
Sqlservr.exe2007.100.5831.0111,902,20025-Jan-201315:14IA-64

Informações de arquivo do SQL Server 2008 R2
Recolher esta tabelaExpandir esta tabela
Nome do arquivoVersão do arquivoTamanho do arquivoDataHoraPlataforma
Sqlservr.exe2009.100.1798.0122,301,79216 De junho de 201122:19x86
Sqlservr.exe2009.100.1798.061,978,46416 De junho de 201122:53x64
Sqlservr.exe2009.100.1798.042,910,56016 De junho de 201123:50IA-64

Como Contornar

Para contornar esse problema, use um dos seguintes métodos:
  • Desativar o AUTO_UPDATE_STATISTICS opção no Microsoft SQL Server 2008 R2 Management Studio.
  • Remova funções com valor de tabela dinâmicas.

Situação

A Microsoft confirmou que este é um problema nos produtos Microsoft que estão listados na seção "Aplica-se a".

Mais Informações

Para obter mais informações sobre as funções definidas pelo usuário com valor de tabela, visite o seguinte site da MSDN:
Informações gerais sobre as funções definidas pelo usuário com valor de tabela


Propriedades

ID do artigo: 2566163 - Última revisão: segunda-feira, 18 de março de 2013 - Revisão: 3.0
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Express
  • Microsoft SQL Server 2008 R2 Express with Advanced Services
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Web
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2008 Workgroup
Palavras-chave: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbautohotfix kbmt KB2566163 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 2566163

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com