O monitor de atividades não pode executar consultas no servidor

12

Existe alguma correção para o funcionamento do monitor de atividade do SSMS?

Problema:

O Monitor de atividades do SQL Server falha com uma caixa de diálogo de erros:

TITLE: Microsoft SQL Server Management Studio
The Activity Monitor is unable to execute queries against server [SERVER]. Activity Monitor for this instance will be placed into a paused state. Use the context menu in the overview pane to resume the Activity Monitor.

ADDITIONAL INFORMATION:
Unable to find SQL Server process ID [PID] on server [SERVER] (Microsoft.SqlServer.Management.ResourceMonitoring)

Eu tenho esse problema no SQL Server 2008 R2 x 64 Developer Edition, mas acho que é encontrado em todos os sistemas de 64 bits usando o SQL Server 2008, sob algumas condições ainda não identificadas.

Existe um relatório de erros sobre isso no Microsoft Connect, mas ainda não está resolvido.

    
por mika 14.05.2010 / 12:53

8 respostas

20

Verifique se existem contadores de desempenho do SQLServer no Monitor de Desempenho. Caso contrário, reconstrua manualmente todos os contadores de desempenho executando o comando lodctr /R com privilégios administrativos:

cd \windows\system32
lodctr /R
    
por 08.06.2010 / 13:48
4

OK, acho que encontrei uma solução.

O problema parece ser o mix de aplicativos de 32 e 64 bits que precisam consultar uns aos outros.

Se você ativar o Host da DLL do contador de desempenho do serviço no painel de controle Serviços, o Activity Monitor deverá funcionar agora.

    
por 08.06.2010 / 08:57
1

No caso mais simples, tudo o que você precisa fazer é reiniciar o SSMS. Acabei de ter este problema com o SSMS 2008 R2 em execução no servidor 2005 depois que perdi a conexão de rede enquanto o Activity Monitor estava em execução. Eu tentei alguns truques antes de tentar reiniciar o SSMS e foi isso que ajudou.

    
por 03.12.2010 / 17:33
1

Se o SQL estiver sendo executado em um servidor ou cluster do Windows 2008 R2, vá para o aplicativo Monitor de Desempenho, expanda Conjuntos de Coleta de Dados e selecione Desempenho do Sistema, se a seta estiver verde na linha abaixo do menu, clique nela . Isto irá reiniciar os contadores, você pode querer fazer o mesmo para o conjunto de coleta do Diagnóstico do Sistema.

Em seguida, basta atualizar ou abrir uma nova conexão com a instância do SQL para a qual você deseja abrir o SSMS Activity Monitor, isso deve ter resolvido seu problema.

Eu só tropecei nisso hoje. É claro que a mensagem de erro dizendo Usar o menu de contexto no painel de visão geral para retomar o Activity Monitor não me ajudou em nada.

Espero que isso ajude alguém.

    
por 20.05.2011 / 15:30
1

Pensei em publicar minha experiência com esse problema.

Sintomas - o SQL Server 2008 R2, na máquina Dell, sofreu uma enorme degradação de desempenho. Os aplicativos do usuário ficaram muito lentos ao executar consultas. O monitor de atividade seria iniciado, mas o erro de tempo limite do processo acima ocorreria se você tentasse abrir a lista de processos.

Os backups restaurados dos bancos de dados foram bem executados em um segundo servidor com metade da memória. A restauração desses mesmos backups no servidor original não resolveu o problema.

Eu executei o dbcc em todos os bancos de dados, reconstruí os índices. Recriação forçada do arquivo de paginação do Windows. Tentei reiniciar o servidor SQL. Tentei reiniciar o servidor. Nenhum desses funcionou. Redefina os contadores de desempenho conforme descrito acima - isso melhorou o uso da CPU do servidor, mas não resolveu nenhum problema.

Nosso administrador de rede queria descartar problemas de hardware. Ele atualizou os drivers de dispositivo para os controladores RAID e desligou o servidor. Ele usou uma sequência de energia da Dell para limpar a memória, isso envolveu a desconexão da fonte de alimentação. Depois de reiniciar, o servidor funcionou bem.

Acreditamos que o ciclo de energia resolveu o problema e que o problema subjacente estava na memória do hardware.

    
por 22.06.2016 / 20:06
0

Eu recebia a mesma mensagem de erro e visualizava os detalhes técnicos. Isso me levou ao Microsoft.SqlServer.Management.ResourceMonitoring.dll. Eu descompilei o método que estava lançando o erro e depois de um pouco de rastreamento através do código eu encontrei uma área onde um PerformanceCounter no grupo "Process" estava tentando ser instanciado. Bem, eu verifiquei em Perfmon e esse grupo não estava lá. Outros contadores estavam funcionando, mas aquele não estava lá. Parece que esse grupo foi desativado de alguma forma.

Como corrigir: Use regedit para localizar HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ PerfProc \ Performance existe uma chave lá chamada Disable Performance Counters, delete ou configure para 0 Você pode precisar de um reinício depois de mudar a chave.

    
por 17.06.2010 / 21:13
0

Ainda não posso comentar a nova resposta ...

Eu tentei a sugestão do EightVans primeiro

How to fix it: Use regedit to find HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance there is a key in there called Disable Performance Counters , delete it or set it to 0 You may need a restart after you change the key.

E eu ainda experimentei o problema. Então eu tentei a sugestão de renaud:

If you enable the service Performance Counter DLL Host in the Services control panel, the Activity Monitor should now work.

E eu ainda experimentei o problema. Então eu tentei a sugestão de Mika:

Check if SQLServer performance counters exist in the Performance Monitor. If not, manually rebuild all performance counters running lodctr /R command with administrative priviledges:

Agora o monitor de atividade está funcionando!

    
por 29.06.2010 / 09:57
0

Eu apenas faço

EightVans sugestão primeiro

Como corrigir: Use o regedit para localizar HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ PerfProc \ Performance; há uma chave lá chamada Disable Performance Counters, exclua ou defina como 0 Você pode precisar de uma reinicialização depois de alterar o chave.

e sugestão de Mika:

Verifique se existem contadores de desempenho do SQLServer no Monitor de Desempenho. Caso contrário, recrie manualmente todos os contadores de desempenho que executam o comando lodctr / R com privilégios administrativos:

E o monitor de atividades está agora em execução no meu sistema!

    
por 01.02.2013 / 15:06