Array
(
    [0] => stdClass Object
        (
            [Votos_Balanceados] => 1
            [id] => 521618
            [titulo] => SQL Server consumindo 100% de processamento. Travou Geral
            [dataCadastro] => DateTime Object
                (
                    [date] => 2015-06-01 15:21:00
                    [timezone_type] => 3
                    [timezone] => America/Sao_Paulo
                )

            [isFirstPost] => -1
            [idUsuario] => 378439
            [status] => A
            [isExample] => 
            [NomeUsuario] => Marcos P
            [Apelido] => 
            [Foto] => 378439_20140801115452.png
            [Conteudo] => A limitação de memória para o Sql Server NUNCA deve ser feita considerando a quantidade total de memória !

O ideal é testar valores entre 75% e 90% do total de memória disponível. Isso, considerando, que o server é dedicado exclusivamente ao Sql Server.

Existindo outros processos rodando na mesma máquina, a divisão deve ser feita proporcionalmente à carga de cada processo.

Sempre considerando um sobra de memória para os processos de cache e despejo de memória do S.O. ) )

SQL Server consumindo 100% de processamento. Travou Geral

Jamilton Silva
|
MVP
    29 mai 2015

Prezados,
É a primeira vez que coloco um POST no DEVMEDIA.
Na empresa tenho um SQL Server que nos ultimos 03 dias vem apresentando travamentos sempre no final do dia. Trava geral. Não consigo conectar no banco.
Não sei o que pode estar ocorrendo e nem por onde começar. Não sei se é alguma Query que algum usuário esta executando internamente ou externamente que consome totalmente a máquina.
Para que o sistema volte a rodar, nas 03 paradas tive que parar o serviço SQL e reiniciar o server.
SQL Server 2008 R2 (standard)
BD: 60GB
Servidor virtual em ambiente Citrix
Processador: 8 nucleos - Windows server 2008 R2
Memória: 10GB

Post mais votado

Marcos P
   - 01 jun 2015

A limitação de memória para o Sql Server NUNCA deve ser feita considerando a quantidade total de memória !

O ideal é testar valores entre 75% e 90% do total de memória disponível. Isso, considerando, que o server é dedicado exclusivamente ao Sql Server.

Existindo outros processos rodando na mesma máquina, a divisão deve ser feita proporcionalmente à carga de cada processo.

Sempre considerando um sobra de memória para os processos de cache e despejo de memória do S.O.

Mariana Carvalho
   - 29 mai 2015

Olá Jamilton, tudo bem, espero que sim, apesar do problema.

Aqui você pode encontrar uma dicas sobre como descobri ou melhorar sua pesquisa sobre o assunto.

http://sqldicas.com.br/dicas/analise-de-lentidao/

Alan Mario
   - 29 mai 2015

Verificou a quantidade de memoria para ele?

http://www.devmedia.com.br/forum/sql-server-lento/404181

Jamilton Silva
|
MVP
    30 mai 2015

Valeu pessoal pelas dicas.
To estudando...
Observando os tópicos enviados, o meu caso ainda estou perdido, pois ocorreram repentinamente e perdi todas as conexões com o banco, sem condições de rodar qualquer consulta no momento em que o SQL subiu o processamento para o máximo. Depois que paro e levanto o serviço novamente tudo volta ao normal.

Mariana Carvalho
   - 30 mai 2015

Por favor nos retorne com alguma informação de solução ou de permanencia do problema, ok?

Alan Mario
   - 30 mai 2015

Precisando, estamos por aqui. Abraço.

Alex Lekao
   - 30 mai 2015

estranho, 10GB de memoria?

se nao estou enganado sao em paridades de 8GB, e para essa quantidade de nucleos vc poderia colocar bem mais memoria, acredito que essa qtd seja pouca.

embora que teria que ser analisado varias outras coisas.

aqui na empresa temos aproximadamente 180 estacoes utilizando sistema, se para cada estacao tivermos duas conexoes com o banco, teriamos mais de 360 conexoes, e nosso servidor eh Xeon 3.4(se nao me engano) com 4 nucleos e 32 GB de ram, e qdo executamos quarys muito pesadas, ja para e ninguem consegue utilizar, acredito que no seu caso seja algum processamento mesmo.

infelizmente nao conheco tao bem essa parte de performance para te ajudar, mas se nao estou enganado o proprio sql tem algumas ferramentas para ajudar nessa monitoria.

Alan Mario
   - 30 mai 2015

Alex, já que se referiu a quantidade de memoria e processador, tu conhece alguma fonte onde explica a quantidade maquinas acessando um banco/servidor para uma determinada quantidade de memoria + processador, se possivel.

Alex Lekao
   - 30 mai 2015

vixi.... rsrsr

ja me lembro de ter pesquisado a respeito, mas nao lembro onde foi, nao me lembro o que tinha de relacao.

se eu encontrar algo eu posto aqui.

Alan Mario
   - 30 mai 2015

Te agradeço, se achar eu tambem posso postar, valeu.

Alex Lekao
   - 30 mai 2015

blz.

abraco.

Alan Mario
   - 30 mai 2015

Alex, achei um conteudo, mas bem especifico do SQL Server, o que acha?

https://msdn.microsoft.com/en-us/library/ms143432.aspx

Jamilton Silva
|
MVP
    01 jun 2015

Pessoal,
Obrigado pelos posts.

Preciso descobrir o que leva o SQL a 100% de processamento.
Por enquanto tá fresquinho. Na semana passada travou por volta das 17h.
Processamento em 15, 20, 30%;
Como o servidor é virtualizado está alocado nele 10GB; O SQL aloca tudo pra ele. Na configuração do banco não está limitado a memória que ele pode alocar.
Na conjuntura atual não sei se seria interessante mexer.
Tem um job de backup full que roda ao meio dia. Rodou ok consumindo 30% do processador.

Por enquanto continuo estudando...
Coloquei um SQL Server Profiler com config. STANDARD para rodar salvando em um storage para acompanhar.
Se tiver alguma novidade aviso.

Alan Mario
   - 01 jun 2015

Não seria interessante mudar o horario do backup full? ou esse é o melhor?

Marcos P
   - 01 jun 2015

Jamilton,

Muita coisa pode levar o Sql Server a 100% de processamento.

Talvez, mais importante que entender a causa disso, é entender o porque ele não consegue voltar depois de uma situação dessas.

O Profiler é fundamental para você analisar o problema, se a causa estiver relacionada a execução de algo no banco.

Mas isso pode não ser suficiente !

Avalie a possibilidade de utilizar o Monitor de Recursos do próprio Windows, para verificar se você está tendo problemas relacionados à hardware ou ao sistema operacional.

Considere restringir a memória utilizada pelo Sql Server, pois isso, mesmo parecendo contraditório, poderá significar a possibilidade do sistema se recuperar de uma dessas situações de travamento ( embora possa representar uma queda na performance média do ambiente ).

Existe, também, a possibilidade de criar alertas no Windows Server, quando determinada configuração de um recurso chegar a um determinado valor.

Esse links, podem lhe ajudar :

Monitor Resource Usage (System Monitor)
Know the Monitoring Tools and Resources Available in SQL Server 2008
Performance Analysis Using SQL Server 2008 Activity Monitor Tool

Alan Mario
   - 01 jun 2015

Marcos P, são varias formas de verificar o que pode está ocasionando, dos recursos que citou esse de limitar a quantidade de memoria é o que deve ser feito primeiramente, não podendo se igualar a quantidade de memoria da maquina, seja ela fisica ou virtual, talvez seja esse um dos motivos do travamento.

Alan Mario
   - 01 jun 2015

Entendido e sem duvida bem esclarecido!

Mariana Carvalho
   - 01 jun 2015

De nada Jamilton, espero que tenha resolvido o problema ou no minimo, minizado.

Jamilton Silva
|
MVP
    02 jun 2015

Boa tarde,
Prezados,
Mais uma vez agradeço às dicas.
Com base no que foi postado, coloquei memória min. de 3GB e max de 8GB; Restando 2GB para o server 2008 R2 que estava consumindo 1,5GB. Infelizmente meu datacenter está no gargalo e não consigo requisitar mais memória para o SERVER. Isso será resolvido em breve quando migrarmos para outro datacenter.

Efetivamente não consegui identificar o motivo do SQL chegar a 100% de consumo do processador;

Continuo com o Profile standard ativo e tentar identificar se é alguma query.

Ontem e hoje não ocorreram a situação. Por enquanto funcionando com processador fresquinho.

Mariana Carvalho
   - 02 jun 2015

Fico tambem aliviada por você Jamilton, deve ter sido um momento tenso. Estamos aqui para ajudar no que for possivel.

Alan Mario
   - 02 jun 2015

Sucesso Jamilton, se o problema voltar nos retorne.