Você está offline; aguardando reconexão

Uma instância do SQL Server seja executado lentamente quando você usa SQL Profiler para executar um rastreamento do lado do cliente dos eventos na instância

Extended support for SQL Server 2005 ends on April 12, 2016

If you are still running SQL Server 2005 after April 12, 2016, you will no longer receive security updates and technical support. We recommend upgrading to SQL Server 2014 and Azure SQL Database to achieve breakthrough performance, maintain security and compliance, and optimize your data platform infrastructure. Learn more about the options for upgrading from SQL Server 2005 to a supported version here.

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: 929728
Sintomas
Considere o seguinte cenário:
  • Você tiver um computador que está executando uma instância do Microsoft SQL Server 2000 ou do Microsoft SQL Server 2005.
  • Você usar o SQL Profiler para executar um rastreamento do lado do cliente dos eventos na instância do SQL Server.
  • Executar o SQL Profiler no computador que está executando a instância do SQL Server ou execute SQL Profiler em um computador diferente.
Nesse cenário, a instância do SQL Server executa lentamente.

Quando esse problema ocorre, você perceber os seguintes sintomas se você consultar a tabela de sistema master.dbo.sysprocesses na instância do SQL Server:
  • Processo de servidor ativo várias identificações (SPIDs) exibir o valor 0x404 (LATCH_EX) na coluna waittype .
  • Um ou mais SPIDs exibem o valor SQL Profiler na coluna program_name .
Além disso, você consulte um dos seguintes valores na coluna waitresource se você consultar a tabela de sistema master.dbo.sysprocesses :
  • MISC (hex address)
  • TRACE_CONTROLLER
  • TRACE_IO_SYNC
  • TRACE
Você ver um desses valores, se as seguintes condições forem verdadeiras:
  • Use o SQL Server 2005 ou SQL Server 2000 Service Pack 4 (SP4).
  • Um SPID está aguardando para executar operações de rastreamento de sincronização no SQL Profiler.
Causa
Quando você executa o SQL Profiler em uma instância do SQL Server 2000 ou do SQL Server 2005, cada SPID ativa da instância requer um registrador de divisão exclusivo (LATCH_EX) para gravar o evento SQL Profiler. O SPID gravará o evento para o buffer de memória local primeiro. Em seguida, o evento é transferido para o SQL Profiler. Se o buffer de memória local estiver cheio, o SPID descarta o evento. Após os eventos no buffer de memória local são transferidos para o SQL Profiler, o SPID pode escrever novos eventos para o buffer de memória local. Se outros SPIDs estão aguardando para gravar eventos SQL Profiler, esses SPIDs esperar em uma fila.

Como o SQL Profiler é um processo que é separado do processo do SQL Server, transferindo cada evento para o SQL Profiler leva algum tempo. Se você executar o SQL Profiler em um computador diferente, esse processo leva mais tempo. Esse processo leva mais tempo devido a latência da rede e por causa do desempenho do computador que esteja executando o SQL Profiler. Portanto, a instância do SQL Server executa lentamente.
Como Contornar
Para contornar esse problema, não use o SQL Profiler para executar um rastreamento do lado do cliente dos eventos na instância do SQL Server. Em vez disso, use procedimentos armazenados do sistema para executar um rastreamento do lado do servidor dos eventos.

Você pode usar os seguintes procedimentos armazenados do sistema:
  • sp_trace_create
  • sp_trace_setevent
  • sp_trace_setfilter
  • sp_trace_setstatus
Para obter mais informações sobre esses sistema armazenadas procedimentos, procure os procedimentos armazenados no Books Online do SQL Server 2000 ou no Books Online do SQL Server 2005.
Situação
A Microsoft confirmou que este é um problema nos produtos da Microsoft listados na seção "Aplica-se a".
Mais Informações
Você pode usar o utilitário de coleção de dados PSSDIAG para coletar os arquivos de dados de rastreamento. Para obter mais informações sobre o utilitário de coleção PSSDIAG dados, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
830232Utilitário de coleção de dados PSSDIAG
Para obter mais informações sobre a coluna waittype no SQL Server 2000 e no SQL Server 2005, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
822101Descrição das colunas waittype e lastwaittype na tabela master.dbo.sysprocesses no SQL Server 2000 e o SQL Server 2005

Propriedades

ID do Artigo: 929728 - Última Revisão: 09/30/2008 17:04:18 - Revisão: 3.0

Microsoft SQL Server 2005 Standard Edition, Microsoft SQL Server 2005 Enterprise Edition, Microsoft SQL Server 2005 Workgroup Edition, Microsoft SQL Server 2005 Developer Edition, Microsoft SQL Server 2000 Standard Edition, Microsoft SQL Server 2000 Enterprise Edition, Microsoft SQL Server 2000 Workgroup Edition, Microsoft SQL Server 2000 Developer Edition

  • kbmt kbsql2005engine kbexpertiseadvanced kbtshoot kbprb KB929728 KbMtpt
Comentários