Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

drago

Arquivo Sqlservr.exe com 15.6 gigas

Recommended Posts

Boa Noite

 

Estou a 2 semanas monitorando o servidor de dados ele passou consumir mais memória para o banco do SQL 2008.

Quando entro do painel desempenho de 2 a 4 giga que era normal ele passou a consumir 15.6 gigas, na aba em processo

foi verificar o que esta carregando é o serviço de SLQ o arquivo sqlservr.exe .

Hoje tenho uma base de dados com 9 gigas, meu log da minha base quando começa o expediente tem tamanho 2 megas no final

do expediente log esta com 517 megas.

 

O que já verifiquei no meu servidor .

Espaço no HD para ver se ele não esta precisando para alocar dados.

Passei anti vírus ( aqui temos F-secure )

Aumentou numero de maquina aqui na empresa + 10 terminais essas 2 semanas

Estou tentando achar se o que esta acontesendo com função ,SQL Server Profiler mas nao tive sucesso ( estou entendendo e lendo para saber o que vem ocorendo)

 

Obs:

servidor tem 16 gigas total de memória não esta lento na rede nem em processamento dele fica estável dia todo .

sobre as tarefaz da noite como backup , limpa log, reorganização de índex, tudo sendo feito normal.

 

 

qual quer ajuda palpite e bem vindo .

obrigado desde já pela força

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala drago.....

Estou passando pelo mesmo problema, mas no meu caso, fiz um teste deste modo:

Imagem do consumo de memória do servidor.

Imagem Postada

 

Imagem do consumo de memoria após um select em uma base e tabela "pesada" - count de retorno de 5 milhões de registros

 

Imagem Postada

 

 

 

Para resolver estou lendo estes artigos/posts

http://social.technet.microsoft.com/Forums/pt-BR/admingeralpt/thread/d9e20052-5d73-4566-a76f-21a179fb366f

http://support.microsoft.com/kb/811891/en-us

http://msdn.microsoft.com/pt-br/library/ms190673.aspx

http://msdn.microsoft.com/pt-br/library/ms190961.aspx

 

Não apliquei, pois meu banco é de produção e ainda não deu tempo de fazer um planejamento, mas de uma lida e veja se tb eh o seu caso.

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom dia, jus2ka

Achei alguns fóruns também pessoal dando solução no SQL 2008 segue abaixo

obs: não sei se pode colocar todos tipos de pesquisa de fórum aqui então só vai principal ( tenho mais sites falando sobre assunto mas todos aborda quase = esse definição )

 

Vamos por partes.

 

1) O SQL Server realmente sempre aloca memória e não devolve, à menos que o sistema operacional requisite e isso acontece quando o SO vai começar a paginar, assim o SQL começa a devolver a memória pouco a pouco.

 

2) Se o seu servidor de banco de dados estiver sendo compartilhado com aplicações, isso é terrível pq a forma de trabalho do servidor de bd é completamente diferente da forma de trabalho de um servidor de aplicações, procure sempre manter o bd sozinho.

 

3) Se você quer limitar a quantidade de memória que o SQL Server consome, vá no EM (Enterprise Manager), clique com o botão direito no nome da instância desejada, vá em memória e configure o mínimo e o máximo que ele poderá utilizar, assim o SQL Server nunca irá alocar mais do que o determinado.

 

4) Se você quer que o SQL Server devolva memória sem precisar fazer o stop/start, execute o procedimento anterior e depois entre novamente em propriedades e recoloque em modo automático, assim ele devolve memória sem precisar parar ninguém.

 

5) Via performance monitor, procure monitor o object Buffer Cache e selecione Cache Hit Ratio, este indicador DEVE SEMPRE estar acima de 85% (no mínimo).

 

6) Procure fazer uma manutenção semanal das suas bases de dados, utilize o maintenance plan para criar rotinas de otimização (irá regerar os índices, mantendo-os sempre atualizados, e redistribuir as páginas de modo que a B-TREE continue balanceada), verificação de integridade (verifica se suas bases de dados estão integras lógica e fisicamente) e suas rotinas de backup tb podem ser agendadas por ali. “

 

 

Então eu ainda não mexi no SQL aqui da empresa pelo mesmo motivo não pode para .

 

Eu estou vindo monitorando o SQl aqui a mais de 2 semanas e reparei umas coisa estranha aqui.

1º Estartei o servidor aqui 4 horas da manha, trabalhou o dia todo o SQL chegou a consumir no Maximo 4.3giga final do dia .

2º No outro dia de manha após o roteiro de Backup, manutenção de log, Indexação , Servidor e SQL começo já de cara com o consumo de 12.8 giga e finalizou o dia com 15.6 giga. beleza

3º Já na madrugada seguinte o SQL fez roteiro de Backup, manutenção de log, o servidor começou o dia novamente com 1.2 giga , Pesei comigo maravilha ele consome e devolve mesmo . ( olhei backup tudo certo, roteiro manutenção O.k)

Ai 2 minutos verificando tudo no servidor olhei placa de rede e so tinha 3 horas de funcionamento . ele reiniciou sozinho .

 

OBs : Estou monitorando a cada 10 minutos Pois estou com uma duvida ele reiniciou por falta de memória pois o SO precisou e SQL não liberou memória.

Ou será que SQL nas manutenção deu restarte certo que não tem função nele para ele reiniciar .

 

Outro detalhe é que ainda não taxei memória dele por que ( DUVIDA)..

Quando você limita SQL a usar memória mínima de X e máxima de 12 giga em um servidor que tem 16 giga .

 

Será que busca no SQL não vão ficar mais lenta, eu li a respeito sobre a locação que ele faz na memória dizem que e para pesquisa fica mais rápida nas tabelas outros falam que tela do sistema que usada muitas vezes por diversos terminais por isso consumo .

 

O que vou fazer aqui é monitorar hoje mais a fundo pois Servidor esta em consumo agora de 12.4 giga e subindo . vou ver essa noite se ele vai starter .

se acontecer isso vou dobra memória dele 16 pra 32 e taxa 25giga Maximo para SQL e restante para SO.

E verificar o processamento e desempenho do SQL se vai baixar no dia dia .

 

Desculpa se escrevi muito pois logo banco tem que ser a quente esses acerto de memória ..`fazemos alteração quando empresa para por 2 ou 3 horas depois colocar em funcionamento isso é a quente praticamente .

 

caso você já fez esse acerto vamos nos falando para ver melhor definição para sanar isso .

Seu SQL é 2008 sp1 ? ou seu já é 2008 sp2 você já esta usando ele ?

 

 

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala drago... beleza?!

 

Acho que temos o mesmo cenario....

e com ctza, vamos por partes http://forum.imasters.com.br/public/style_emoticons/default/devil.gif

 

Reparei tb com relacao ao "restart" da placa de rede, a minha ainda nao reiniciou nao... esta alocada a 15 dias e algumas horas... masssss...

 

Quando você limita SQL a usar memória mínima de X e máxima de 12 giga em um servidor que tem 16 giga .

 

Estava conversando com outro amigo que esta com um problema parecido, ele fez exatamente isso:

Na opcao memory (em server properties)

Seleciona a opcao Use AWE to allocate memory

As outras opcoes sao default, portanto nao mexer.

 

Com esta opcao, o SQL vai despejar de volta a memoria nao utilizada, mas ainda nao achei nenhum artigo oficial sobre esta solucao, mas devo aplica-la amanha (18/02) em um ambiente de homolocacao.

 

 

Pois estou com uma duvida ele reiniciou por falta de memória pois o SO precisou e SQL não liberou memória. Ou será que SQL nas manutenção deu restarte certo que não tem função nele para ele reiniciar .

 

Acho pouco provavel que isso tenha ocorrido. Eu jah fiz "crash test" em varios ambientes e nenhum deles ouve um reinicio de rede ou de SO, o que ele fez foi parar o servico do SQL. (nem restart do servico ele fez....)

 

Será que busca no SQL não vão ficar mais lenta, eu li a respeito sobre a locação que ele faz na memória dizem que e para pesquisa fica mais rápida nas tabelas outros falam que tela do sistema que usada muitas vezes por diversos terminais por isso consumo .

 

O consumo de hardware da maquina de DB eh alvo de varias discussoes.... o meu ambiente de producao eh bem critico (tanto que bkps sao feitos em storage a cada 5 min no max) e nao vejo meu sistema ficar lento (o que me deixa com um cachorro atras da orelha).....

 

vou usar o lance do AWE e ve se da certo....

 

Posto o resultado aki amanha.

 

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só uma perguntinha.... então vcs conseguiram resolver o problema, vcs conseguiram abaixar o consumo de Memoria ou não... http://forum.imasters.com.br/public/style_emoticons/default/ermm.gif - Estou estudando ainda pra certificação mas gostei do tópico rsrsrs. Estou acompanhando :D...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apesar do topico ser antigo, resolvi o problema somente de ontem para hoje;

Draco, não sei se você conseguiu resolver, mas no meu caso, a opção AWE fez com que a alocação de memória ficasse abaixo de 20%, que no meu caso é aceitavel devido as requisições do DB.

 

Não houve necessidade do restart em um ambiente de teste(homologação) mas no ambiente principal(produção) houve... então backup das bases tb foram necessárias;

 

Refiz o monitoramento de serviços de disco (leitura, gravacao, I/O), de CPU e todo o hardware da maquina. Para tal utilizei o Monitor do Windows com alguns contadores de desempenho:

Memory - Pages/Sec;

SQLServer: Buffer Manager: Buffer Cache Hit Ratio;

SQLServer: Acess Methods: Page Splits/sec;

 

Há outros contadores que utilizo que em breve vou disponilizar em um blog que estou montando.

 

Se alguém tiver dúvidas é só postar :P

 

Abçs

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.