DetailPage-MSS-KB

Base de Dados de Conhecimento

Artigo: 929728 - Última revisão: terça-feira, 30 de Setembro de 2008 - Revisão: 3.0

 

Sintomas

Considere o seguinte cenário:
  • Ter um computador que esteja a executar uma instância do Microsoft SQL Server 2000 ou do Microsoft SQL Server 2005.
  • Utilize o SQL Profiler para efectuar um rastreio do lado do cliente dos eventos na instância do SQL Server.
  • Execute o SQL Profiler no computador que está a executar a instância do SQL Server ou executar o SQL Profiler num computador diferente.
Neste cenário, a instância do SQL Server executa lentamente.

Quando este problema ocorre, verificar os seguintes sintomas que a consulta tabela de sistema master.dbo.sysprocesses na instância do SQL Server:
  • ID (SPID) do processo ASP várias mostra o valor de 0x404 (LATCH_EX) na coluna waittype .
  • SPID por parte de um ou mais mostra o valor de SQL Profiler na coluna nome_do_programa .
Além disso, verá um dos seguintes valores na coluna waitresource se consultar a tabela de sistema master.dbo.sysprocesses :
  • MISC (hex address)
  • TRACE_CONTROLLER
  • TRACE_IO_SYNC
  • TRACE
Verá um destes valores se as seguintes condições forem verdadeiras:
  • Utiliza o SQL Server 2000 Service Pack 4 (SP4) ou o SQL Server 2005.
  • Um SPID está à espera de executam operações de rastreio de sincronização de SQL Profiler.

Causa

Quando executa o SQL Profiler contra uma instância do SQL Server 2000 ou do SQL Server 2005, cada SPID activo da instância requer um enganchado exclusivo (LATCH_EX) para escrever o evento SQL Profiler. O SPID escreve o evento para a memória intermédia memória local pela primeira vez. Em seguida, o evento é transferido para o SQL Profiler. Se o local de memória intermédia estiver cheia, o SPID rejeita o evento. Depois dos eventos na memória intermédia de memória local são transferidos para o SQL Profiler, o SPID possível escrever novos eventos para a memória intermédia memória local. Se outros SPID à espera de eventos de escrita para o SQL Profiler, estes SPID Aguarde numa fila.

Uma vez que SQL Profiler é um processo que está separado do processo do SQL Server, transferir cada evento para o SQL Profiler demora algum tempo. Se executar o SQL Profiler num computador diferente, este processo demora mais tempo. Este processo demora mais tempo devido a latência da rede e, pelo desempenho do computador que está a executar o SQL Profiler. Por conseguinte, a instância do SQL Server funciona lentamente.

Como contornar

Para contornar este problema, não utilize o SQL Profiler para executar um rastreio do lado do cliente dos eventos na instância do SQL Server. Em vez disso, utilize procedimentos armazenado de sistema para efectuar um rastreio do lado do servidor dos eventos.

Pode utilizar os seguintes procedimentos armazenado do sistema:
  • sp_trace_create
  • sp_trace_setevent
  • sp_trace_setfilter
  • sp_trace_setstatus
Para mais informações sobre estes sistema armazenadas procedimentos, procure os procedimentos armazenados no SQL Server 2000 Books Online ou no SQL Server 2005 Books Online.

Ponto Da Situação

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

Mais Informação

Pode utilizar o utilitário de recolha de dados PSSDIAG para recolher os ficheiros de dados de rastreio. Para obter mais informações sobre o utilitário de colecção PSSDIAG dados, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
830232  (http://support.microsoft.com/kb/830232/ ) Utilitário de recolha 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 de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
822101  (http://support.microsoft.com/kb/822101/ ) Descrição das colunas waittype e lastwaittype na tabela master.dbo.sysprocesses SQL Server 2000 e SQL Server 2005

A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL 2005 Server Enterprise
  • Microsoft SQL 2005 Server Workgroup
  • 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
Palavras-chave: 
kbmt kbsql2005engine kbexpertiseadvanced kbtshoot kbprb KB929728 KbMtpt
Tradução automáticaTraduçã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 revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática… erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 929728  (http://support.microsoft.com/kb/929728/en-us/ )
Partilhar
Opções de suporte adicionais
Fóruns de Suporte da Comunidade Microsoft
Contacte-nos directamente
Encontre um parceiro certificado Microsoft
Loja Microsoft